Log host identifier
Narcis Garcia
informatica at actiu.net
Fri Oct 20 05:55:34 UTC 2017
Better this:
if static {
set KnownHost = pick-first-value(host-decl-name, "(static)");
} else {
set KnownHost = pick-first-value(host-decl-name, "(dynamic)");
}
Thanks.
El 19/10/17 a les 18:37, Bill Shirley ha escrit:
> I think you're confused. A "known host" is any host that is defined. It
> can be static or dynamic. Consider:
> host printer_1 {
> hardware ethernet 00:11:22:33:44:55;
> fixed-address 172.16.20.201;
> }
> host printer_2 {
> hardware ethernet 11:22:33:44:55:66;
> }
> printer_1 will get a static address; printer_2 will get dynamic; both are
> known hosts because they are defined. MAC address 22:33:44:55:66:77
> is not defined in the dhcpd.conf and therefore is an "unknown-client".
>
> HTH,
> Bill
>
>
> On 10/19/2017 5:26 AM, Narcis Garcia wrote:
>>
>> Okay, I've solved with your example, dhcp-eval manpage, and Glenn
>> Satchell's AA-01039 answer in ISC*:*
>>
>> on commit {
>> if static {
>> set KnownHost = pick-first-value(host-decl-name,
>> "(none)");
>> } else {
>> set KnownHost = "(dynamic)";
>> }
>> set MacString = concat(
>>
>> suffix(concat ("0", binary-to-ascii (16, 8, "",
>> substring(hardware,1,1))),2), ":",
>>
>> suffix(concat ("0", binary-to-ascii (16, 8, "",
>> substring(hardware,2,1))),2), ":",
>> suffix(concat ("0", binary-to-ascii (16, 8, "",
>> substring(hardware,3,1))),2), ":",
>> suffix(concat ("0", binary-to-ascii (16, 8, "",
>> substring(hardware,4,1))),2), ":",
>> suffix(concat ("0", binary-to-ascii (16, 8, "",
>> substring(hardware,5,1))),2), ":",
>> suffix(concat ("0", binary-to-ascii (16, 8, "",
>> substring(hardware,6,1))),2)
>> );
>>
>> log(info, concat(
>> "KnownHost:", KnownHost
>> ," ClientHostname:", pick-first-value(option
>> fqdn.hostname, option host-name, config-option server.ddns-hostname,
>> "(none)")
>> ," MAC:", MacString
>> ," leased-address:", pick-first-value(
>> binary-to-ascii(10, 8, ".", leased-address), "(none)")
>> ," lease-time:",
>> pick-first-value(binary-to-ascii(10,32,"",encode-int(lease-time,32)),
>> "(none)")
>> ));
>> }
>>
>>
>>
>> El 19/10/17 a les 09:27, Narcis Garcia ha escrit:
>>> Thank you;
>>>
>>> Is there some way to get the label of the host definition instead of
>>> having to add a hostname/fqdn/identifier to each host?
>>>
>>> (such as "printer_1" here)
>>>
>>> host printer_1 {
>>> hardware ethernet 00:11:22:33:44:55;
>>> fixed-address 172.16.20.201;
>>> }
>>>
>>>
>>> El 19/10/17 a les 09:12, Bill Shirley ha escrit:
>>>> Add logging to your dhcpd.conf. Here is what I use:
>>>> on commit {
>>>> if static {
>>>> set is-static = " --> STATIC";
>>>>
>>>> option dhcp-renewal-time = encode-int(43200 / 2, 32); #
>>>> 43200 = 12 hours
>>>> option dhcp-rebinding-time = encode-int(43200 * 7 / 8, 32);
>>>> ddns-ttl = encode-int((43200 / 2) + 1, 32);
>>>> } else {
>>>> set is-static = "";
>>>>
>>>> option dhcp-renewal-time = encode-int(lease-time / 2, 32);
>>>> option dhcp-rebinding-time = encode-int(lease-time * 7 / 8, 32);
>>>> ddns-ttl = encode-int((lease-time / 2) + 1, 32);
>>>> }
>>>>
>>>> log ( info,
>>>> concat (
>>>> "Host:", pick-first-value(option fqdn.hostname, option
>>>> host-name, "(none)"), "=>", pick-first-value(config-option
>>>> server.ddns-hostname, "(none)")
>>>>
>>>> ," VendorId:", pick-first-value(option
>>>> vendor-class-identifier, "(none)")
>>>>
>>>> ," Lease:",
>>>> pick-first-value(binary-to-ascii(10,32,"",encode-int(lease-time,32)),
>>>> "(none)")
>>>> ," Renewal:", pick-first-value(binary-to-ascii(10, 32, "",
>>>> config-option dhcp-renewal-time), "(none)")
>>>> ," Rebind:", pick-first-value(binary-to-ascii(10, 32, "",
>>>> config-option dhcp-rebinding-time), "(none)")
>>>>
>>>> ," TTL:", pick-first-value(binary-to-ascii(10, 32, "",
>>>> config-option server.ddns-ttl), "(none)")
>>>>
>>>> ," GIaddr:", pick-first-value(binary-to-ascii(10, 8, ".",
>>>> packet(24,4)), "(none)")
>>>> , is-static
>>>> )
>>>> );
>>>> }
>>>>
>>>> Bill
>>>>
>>>>
>>>> On 10/19/2017 3:00 AM, Narcis Garcia wrote:
>>>>> isc-dhcp-server is currently logging in my system:
>>>>> DHCPDISCOVER from 11:22:33:44:55:66 via eth0
>>>>> DHCPOFFER on 172.16.20.201 to 11:22:33:44:55:66 via eth0
>>>>> DHCPREQUEST for 172.16.20.201 from 11:22:33:44:55:66 via eth0
>>>>> DHCPACK on 172.16.20.201 to 11:22:33:44:55:66 via eth0
>>>>>
>>>>> How can I make the service logs some name about that known client? (such
>>>>> as "printer_1")
>>>>>
>>>>> Thanks.
>>>>> _______________________________________________
>>>>> dhcp-users mailing list
>>>>> dhcp-users at lists.isc.org
>>>>> https://lists.isc.org/mailman/listinfo/dhcp-users
>>>>
>>>> _______________________________________________
>>>> dhcp-users mailing list
>>>> dhcp-users at lists.isc.org
>>>> https://lists.isc.org/mailman/listinfo/dhcp-users
>>>>
>>> _______________________________________________
>>> dhcp-users mailing list
>>> dhcp-users at lists.isc.org
>>> https://lists.isc.org/mailman/listinfo/dhcp-users
>>
>>
>>
>> _______________________________________________
>> dhcp-users mailing list
>> dhcp-users at lists.isc.org
>> https://lists.isc.org/mailman/listinfo/dhcp-users
>
>
>
> _______________________________________________
> dhcp-users mailing list
> dhcp-users at lists.isc.org
> https://lists.isc.org/mailman/listinfo/dhcp-users
>
More information about the dhcp-users
mailing list