<div dir="ltr">Thanks, I've settled on this code for now using substring and 0,9999 to grab the full text. <div><br></div><div><div>if((option dhcp-message-type = 3 or option dhcp-message-type = 5) and</div><div>exists agent.circuit-id) {</div><div> log(info, concat( "OPTION-82 | IP =",</div><div> binary-to-ascii (10, 8, ".",leased-address),</div><div> " | MAC=",</div><div> suffix (concat("0", binary-to-ascii (16, 8, "",</div><div> substring( hardware, 1, 1))),2),":",</div><div> suffix (concat("0", binary-to-ascii (16, 8, "",</div><div> substring( hardware, 2, 1))),2),":",</div><div> suffix (concat("0", binary-to-ascii (16, 8, "",</div><div> substring( hardware, 3, 1))),2),":",</div><div> suffix (concat("0", binary-to-ascii (16, 8, "",</div><div> substring( hardware, 4, 1))),2),":",</div><div> suffix (concat("0", binary-to-ascii (16, 8, "",</div><div> substring( hardware, 5, 1))),2),":",</div><div> suffix (concat("0", binary-to-ascii (16, 8, "",</div><div> substring( hardware, 6, 1))),2), " | CIRCUIT-ID=",</div><div> binary-to-ascii (10, 8, ".", option agent.circuit-id), </div><div> " | REMOTE-ID=", </div><div> binary-to-ascii (10, 8, ".", option agent.circuit-id),</div><div> " | CIRCUIT-ID=",</div><div> substring( option agent.circuit-id, 0, 9999),</div><div> " | REMOTE-ID=",</div><div> substring( option agent.remote-id, 0, 9999)));</div><div>}</div></div><div><br></div><div>I was wondering though, with this code I am getting both the binary to decimal output and the binary to text output as seen here:</div><div><br></div><div>Oct 5 11:14:33 dhcpd: OPTION-82 | IP =192.168.100.101 | MAC=00:0f:94:4c:f7:80 | CIRCUIT-ID=51.48.48.82.95.76.65.66.32.101.116.104.32.49.47.50.47.49.47.49.47.49.58.50.48.48 | REMOTE-ID=51.48.48.82.95.76.65.66.32.101.116.104.32.49.47.50.47.49.47.49.47.49.58.50.48.48 | CIRCUIT-ID=300R_LAB eth 1/2/1/1/1:200 | REMOTE-ID=Option82Test__DATA_ETH1<br></div><div><br></div><div>Are there any other "conversions" of the packet I could grab besides these two? If so what are they?</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Oct 5, 2016 at 11:52 AM, Ilkka Virta <span dir="ltr"><<a href="mailto:itvirta@iki.fi" target="_blank">itvirta@iki.fi</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I mean something like:<span class=""><br>
<br>
if((option dhcp-message-type = 3 or option dhcp-message-type = 5) and<br>
exists agent.circuit-id) {<br></span>
log(info, concat( "OPTION-82 | IP =",<span class=""><br>
binary-to-ascii (10, 8, ".",leased-address),<br></span>
" | CIRCUIT-ID=", binary-to-ascii (10, 8, ".", option agent.circuit-id),<br>
" | REMOTE-ID=", binary-to-ascii (10, 8, ".", option agent.circuit-id),<br>
" | CIRCUIT-ID=", option agent.circuit-id,<br>
" | REMOTE-ID=", option agent.remote-id<br>
));<br>
<br>
}<br>
<br>
Works for me on DHCP Server 4.3.1 (well, except that I can't test on any devices where circuit-id would contain human-readable output.)<br>
<br>
I don't know what you had on line 190 when you got that error,<br>
but in the last one you only gave one argument to suffix(), so you got an error since it needs two.<br>
<br>
(Of course you could use substring(option agent.circuit-id, 0, 9999)<br>
to get the whole string, too...)<span class=""><br>
<br>
On 5.10. 19:18, project722 wrote:<br>
</span><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">
It does not seem to like anything I try. My latest attempt:<br>
<br>
suffix (concat("CIRCUIT-ID=", ( option agent.circuit-id), "."))));<br>
<br>
It keeps complaining "comma expected" blah blah<br>
<br>
On Wed, Oct 5, 2016 at 11:01 AM, project722 <<a href="mailto:project722@gmail.com" target="_blank">project722@gmail.com</a><br></span><span class="">
<mailto:<a href="mailto:project722@gmail.com" target="_blank">project722@gmail.com</a>>> wrote:<br>
<br>
Do you mean something like this:<br>
<br>
suffix (concat("CIRCUIT-ID=", substring ( option agent.circuit-id,<br>
0, 9999,)<br>
<br>
Because this is not working either.<br>
<br>
<br>
On Wed, Oct 5, 2016 at 10:41 AM, project722 <<a href="mailto:project722@gmail.com" target="_blank">project722@gmail.com</a><br></span><span class="">
<mailto:<a href="mailto:project722@gmail.com" target="_blank">project722@gmail.com</a>>> wrote:<br>
<br>
When I put that in as you have it listed I get errors when<br>
validating the config.<br>
<br>
/etc/dhcp/dhcpd.conf line 190: expecting data expression.<br>
<br>
How does the actual statement need to look?<br>
<br>
<br>
On Wed, Oct 5, 2016 at 9:56 AM, Ilkka Virta <<a href="mailto:itvirta@iki.fi" target="_blank">itvirta@iki.fi</a><br></span><div><div class="h5">
<mailto:<a href="mailto:itvirta@iki.fi" target="_blank">itvirta@iki.fi</a>>> wrote:<br>
<br>
If you want the whole of circuit-id printed, instead of a<br>
part, just use concat(... "CIRCUIT-ID=", option<br>
agent.circuit-id, ...) instead of calling substring().<br>
substring(x, 2, 9999) takes the 9999 characters (bytes)<br>
after the first two, which you'd want to use if you know you<br>
don't have anything interesting in the first two bytes.<br>
<br>
On 5.10. 17:43, project722 wrote:<br>
<br>
Ok. Making progress. I have went with the following log<br>
statements in my<br>
conf file:<br>
<br>
<br>
" | CIRCUIT-ID=",<br>
substring( option agent.circuit-id, 2, 9999),<br>
Which produces log output as follows:<br>
<br>
<br>
| CIRCUIT-ID=0R_LAB eth 1/2/1/1/1:200 |<br>
REMOTE-ID=tion82Test__DATA_ETH<wbr>1<br>
<br>
My question is:<br>
<br>
Are my substrings at the bottom for pulling in text<br>
correct? It appears<br>
as if the first part of the strings are cut off. What<br>
are my "values" I<br>
can use in these statements instead of 2, 9999? What<br>
should I change<br>
here to get the full text output without cutting off text?<br>
<br>
<br>
<br>
<br>
<br>
On Wed, Oct 5, 2016 at 8:04 AM, project722<br>
<<a href="mailto:project722@gmail.com" target="_blank">project722@gmail.com</a> <mailto:<a href="mailto:project722@gmail.com" target="_blank">project722@gmail.com</a>><br></div></div>
<mailto:<a href="mailto:project722@gmail.com" target="_blank">project722@gmail.com</a><span class=""><br>
<mailto:<a href="mailto:project722@gmail.com" target="_blank">project722@gmail.com</a>>><wbr>> wrote:<br>
<br>
I have adjusted my statement to account for the<br>
binary to ACSII<br>
conversion. I'll test and report back if I run into<br>
any problems.<br>
<br>
On Tue, Oct 4, 2016 at 7:01 PM, Glenn Satchell<br>
<<a href="mailto:glenn.satchell@uniq.com.au" target="_blank">glenn.satchell@uniq.com.au</a><br>
<mailto:<a href="mailto:glenn.satchell@uniq.com.au" target="_blank">glenn.satchell@uniq.co<wbr>m.au</a>><br></span>
<mailto:<a href="mailto:glenn.satchell@uniq.com.au" target="_blank">glenn.satchell@uniq.co<wbr>m.au</a><div><div class="h5"><br>
<mailto:<a href="mailto:glenn.satchell@uniq.com.au" target="_blank">glenn.satchell@uniq.co<wbr>m.au</a>>>> wrote:<br>
<br>
There may be non-ascii characters in your option<br>
agent.circuit-id, so try<br>
a suitable binary-to-ascii() around it. If there<br>
is a non-ascii<br>
or null it<br>
won't print anything.<br>
<br>
The parenthesis around a variable make no<br>
difference, they just<br>
control<br>
order of parameters.<br>
<br>
regards,<br>
-glenn<br>
<br>
On Wed, October 5, 2016 3:49 am, project722 wrote:<br>
> Hmmm.. OK here is the log for the test client.<br>
><br>
> Oct 4 11:39:20 dhcpd: Lease for X.X.X.X with<br>
circuit-id<br>
><br>
> That's all it said.<br>
><br>
> I know that my ACL class for circuit id works<br>
as it was allowed to get an<br>
> IP address.<br>
><br>
> The log line reported back the correct IP so I<br>
know that the<br>
><br>
> "Lease for ", binary-to-ascii (10, 8, ".",<br>
leased-address),<br>
><br>
> Line in my logging clause works.<br>
><br>
> But why did it stop there? Do I need to remove<br>
the parenthesis<br>
around<br>
> "option agent.circuit-id" since I am not using<br>
parenthesis in<br>
my ACL<br>
> class?<br>
><br>
> On Tue, Oct 4, 2016 at 11:25 AM, project722<br>
<<a href="mailto:project722@gmail.com" target="_blank">project722@gmail.com</a><br>
<mailto:<a href="mailto:project722@gmail.com" target="_blank">project722@gmail.com</a>><br></div></div>
<mailto:<a href="mailto:project722@gmail.com" target="_blank">project722@gmail.com</a><span class=""><br>
<mailto:<a href="mailto:project722@gmail.com" target="_blank">project722@gmail.com</a>>><wbr>> wrote:<br>
><br>
>> Alfred - thanks but your setup is much more<br>
complex than mine.<br>
>><br>
>> Alex, I have put in the changes as you<br>
suggested and it passed<br>
>> validation.<br>
>> I'll report back what the logs look like or<br>
if I have any further<br>
>> problems.<br>
>><br>
>> Thanks!<br>
>><br>
>> On Tue, Oct 4, 2016 at 11:12 AM, Alex Moen<br>
<<a href="mailto:alexm@ndtel.com" target="_blank">alexm@ndtel.com</a> <mailto:<a href="mailto:alexm@ndtel.com" target="_blank">alexm@ndtel.com</a>><br></span>
<mailto:<a href="mailto:alexm@ndtel.com" target="_blank">alexm@ndtel.com</a><div><div class="h5"><br>
<mailto:<a href="mailto:alexm@ndtel.com" target="_blank">alexm@ndtel.com</a>>>> wrote:<br>
>><br>
>>> Just comparing with mine, it seems that the<br>
"option<br>
agent.circuit-id"<br>
>>> needs to be in parens. And, I don't know<br>
the use of the<br>
>>> "(leased-address)"<br>
>>> is. So, try this:<br>
>>><br>
>>><br>
------------------------------<wbr>-----------------------<br>
>>> ## Option 82 Class<br>
>>> class "myvendor" {<br>
>>> match if option agent.circuit-id =<br>
00:04:00:6b:00:84;<br>
>>> }<br>
>>><br>
>>> # Test Option 82 logging<br>
>>> if exists agent.circuit-id<br>
>>> {<br>
>>> log (info, concat(<br>
>>> "Lease for ", binary-to-ascii (10, 8,<br>
".", leased-address),<br>
>>> " with circuit-id ", (option<br>
agent.circuit-id),<br>
>>> " is assigned using Option82"<br>
>>> ));<br>
>>> }<br>
>>><br>
>>> pool {<br>
>>> allow members of "myvendor";<br>
>>> range x.x.x.x x.x.x.x;<br>
>>> }<br>
>>><br>
------------------------------<wbr>-----------------------<br>
>>><br>
>>> This should give you a line that looks<br>
something like:<br>
>>><br>
>>> Lease for 192.168.0.10 with circuit-id<br>
Ethernet 5 is<br>
assigned using<br>
>>> Option82<br>
>>><br>
>>> Obviously, your circuit-id will most likely<br>
be something<br>
other than<br>
>>> "Ethernet 5", but you get the idea.<br>
>>><br>
>>> If I'm way off base, someone please correct me!<br>
>>><br>
>>> Good luck,<br>
>>><br>
>>> Alex<br>
>>><br>
>>><br>
>>><br>
>>> On 10/04/2016 10:27 AM, project722 wrote:<br>
>>><br>
>>>> Hello DHCP experts! We are implementing<br>
Option 82 in our<br>
network and I<br>
>>>> am just scratching the surface of how to<br>
setup my server. I<br>
have<br>
>>>> successfully created my first Option 82 ACL<br>
based on the<br>
agent circuit<br>
>>>> ID<br>
>>>> that is contained in the packet, now I just<br>
need guidance<br>
on how I get<br>
>>>> the<br>
>>>> Option 82 data into the logs. Here is my<br>
O82 setup on the<br>
server:<br>
>>>><br>
>>>> ## Option 82 Class<br>
>>>> class "myvendor" {<br>
>>>> match if option agent.circuit-id =<br>
00:04:00:6b:00:84;<br>
>>>> }<br>
>>>><br>
>>>> # Test Option 82 logging<br>
>>>> if exists agent.circuit-id<br>
>>>> {<br>
>>>> log (info, concat( "Lease for ", option<br>
agent.circuit-id<br>
>>>> (leased-address), "is an address assigned<br>
using Option82"));<br>
>>>> }<br>
>>>><br>
>>>> pool {<br>
>>>> allow members of "myvendor";<br>
>>>> range x.x.x.x x.x.x.x;<br>
>>>> }<br>
>>>><br>
>>>> The problem I am having is when I go to<br>
check the conf before<br>
>>>> restarting<br>
>>>> dhcpd I am getting the error:<br>
>>>><br>
>>>> etc/dhcp/dhcpd.conf line 135: right<br>
parenthesis expected.<br>
>>>> log (info, concat( "Lease for ", option<br>
agent.circuit-id (<br>
>>>> ^<br>
>>>> Can anyone tell me what I am doing wrong<br>
and how to fix<br>
this error?<br>
>>>><br>
>>>><br>
>>>> ______________________________<wbr>_________________<br>
>>>> dhcp-users mailing list<br>
>>>> <a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.org</a><br>
<mailto:<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.o<wbr>rg</a>><br></div></div>
<mailto:<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.o<wbr>rg</a><span class=""><br>
<mailto:<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.o<wbr>rg</a>>><br>
>>>><br>
<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman/<wbr>listinfo/dhcp-users</a><br>
<<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman<wbr>/listinfo/dhcp-users</a>><br>
<br>
<<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman<wbr>/listinfo/dhcp-users</a><br>
<<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman<wbr>/listinfo/dhcp-users</a>>><br>
>>>><br>
>>><br>
>>><br>
>>> --<br>
>>> Alex Moen<br>
>>> NSTII<br>
>>> Calix System Specialist<br>
>>> North Dakota Telephone Company<br>
>>> <a href="tel:701-662-6481" value="+17016626481" target="_blank">701-662-6481</a> <tel:<a href="tel:701-662-6481" value="+17016626481" target="_blank">701-662-6481</a>><br></span>
<tel:<a href="tel:701-662-6481" value="+17016626481" target="_blank">701-662-6481</a> <tel:<a href="tel:701-662-6481" value="+17016626481" target="_blank">701-662-6481</a>>><span class=""><br>
>>><br>
>>> ______________________________<wbr>_________________<br>
>>> dhcp-users mailing list<br>
>>> <a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.org</a><br>
<mailto:<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.o<wbr>rg</a>><br></span>
<mailto:<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.o<wbr>rg</a><span class=""><br>
<mailto:<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.o<wbr>rg</a>>><br>
>>><br>
<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman/<wbr>listinfo/dhcp-users</a><br>
<<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman<wbr>/listinfo/dhcp-users</a>><br>
<br></span><span class="">
<<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman<wbr>/listinfo/dhcp-users</a><br>
<<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman<wbr>/listinfo/dhcp-users</a>>><br>
>>><br>
>><br>
>><br>
> ______________________________<wbr>_________________<br>
> dhcp-users mailing list<br>
> <a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.org</a><br>
<mailto:<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.o<wbr>rg</a>><br></span>
<mailto:<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.o<wbr>rg</a><span class=""><br>
<mailto:<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.o<wbr>rg</a>>><br>
><br>
<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman/<wbr>listinfo/dhcp-users</a><br>
<<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman<wbr>/listinfo/dhcp-users</a>><br>
<br></span><span class="">
<<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman<wbr>/listinfo/dhcp-users</a><br>
<<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman<wbr>/listinfo/dhcp-users</a>>><br>
<br>
<br>
______________________________<wbr>_________________<br>
dhcp-users mailing list<br>
<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.org</a><br>
<mailto:<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.o<wbr>rg</a>><br></span>
<mailto:<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.o<wbr>rg</a><span class=""><br>
<mailto:<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.o<wbr>rg</a>>><br>
<br>
<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman/<wbr>listinfo/dhcp-users</a><br>
<<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman<wbr>/listinfo/dhcp-users</a>><br>
<br></span><span class="">
<<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman<wbr>/listinfo/dhcp-users</a><br>
<<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman<wbr>/listinfo/dhcp-users</a>>><br>
<br>
<br>
<br>
<br>
<br>
______________________________<wbr>_________________<br>
dhcp-users mailing list<br>
<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.org</a> <mailto:<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.o<wbr>rg</a>><br>
<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman/<wbr>listinfo/dhcp-users</a><br>
<<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman<wbr>/listinfo/dhcp-users</a>><br>
<br>
<br>
______________________________<wbr>_________________<br>
dhcp-users mailing list<br>
<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.org</a> <mailto:<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.o<wbr>rg</a>><br>
<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman/<wbr>listinfo/dhcp-users</a><br>
<<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman<wbr>/listinfo/dhcp-users</a>><br>
<br>
<br>
<br>
<br>
<br>
<br>
______________________________<wbr>_________________<br>
dhcp-users mailing list<br>
<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.org</a><br>
<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman/<wbr>listinfo/dhcp-users</a><br>
<br>
</span></blockquote><div class="HOEnZb"><div class="h5">
<br>
______________________________<wbr>_________________<br>
dhcp-users mailing list<br>
<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.org</a><br>
<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman/<wbr>listinfo/dhcp-users</a><br>
</div></div></blockquote></div><br></div>