Project

General

Profile

Actions

Bug #6725

closed

DHCP Server > TFTP server name and custom dhcp options in GUI and in dhcpd.conf but missing on the wire

Added by Jules Hoehn over 7 years ago. Updated over 4 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Category:
DHCP (IPv4)
Target version:
-
Start date:
08/17/2016
Due date:
% Done:

0%

Estimated time:
Plus Target Version:
Release Notes:
Affected Version:
Affected Architecture:

Description

If configuring a TFTP server in the DHCP server settings (in my case for IP phones) the GUI accepts and applies the configuration. The dhcpd.conf file looks to contain the tftp server name attribute and value, but neither are seen in the bootp options on the wire from either the client or the server itself.

The issue is the same with custom options 66 and 150 in my case, the custom config in the GUI looks correct, the config in the dhcpd.conf file looks like it's missing the options values. These too are not seen on the wire.

I was unable to find any evidence of issue in DHCP logs for either lease or services. Normal DHCP operation appears to be working as expected.

options 53, 54, 1, 15,3, and 6 all show, and there appears to be no changes on the wire with any of those option or changes in the gui.

I have a hunch this issue may be similar to bug#6720

Running version 2.3.2

conf file looks like this:

option domain-name "mydomain.com";
option ldap-server code 95 = text;
option domain-search-list code 119 = text;
option arch code 93 = unsigned integer 16; # RFC4578
option custom-lan-0 code 150 = ip-address;

default-lease-time 7200;
max-lease-time 86400;
log-facility local7;
one-lease-per-client true;
deny duplicates;
ping-check true;
update-conflict-detection false;
dhcp-cache-threshold 0;
authoritative;

subnet 192.168.X.X netmask 255.255.255.0 {
pool {
option domain-name-servers 192.168.X.X,8.8.8.8;
range 192.168.X.X 192.168.X.X;
}

option routers 192.168.X.X;
option domain-name-servers 192.168.X.X,8.8.8.8;
option ntp-servers 192.168.X.X;
option tftp-server-name "192.168.X.X";
option custom-lan-0 192.168.X.X;
}
Actions #1

Updated by Criggie . over 7 years ago

I confirm this is similar in 2.2.6 as well.

I added a made-up dhcp option on the LAN interface, and applied the change.

in /var/dhcpd/etc/dhcpd.conf I can see the config for the new option

option custom-lan-0 code 49 = string;


and down inside the subnet definition for my LAN rage
        option custom-lan-0 "42 adjusted for inflation";

and the dhcp packet my client machine received is

11:26:11.914988 IP (tos 0x0, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 340)
    10.30.xx.4.67 > 10.30.xx.69.68: [udp sum ok] BOOTP/DHCP, Reply, length 312, xid 0x19ecae10, secs 6, Flags [none] (0x0000)
      Your-IP 10.30.xx.69
      Server-IP 10.30.xx.49
      Client-Ethernet-Address 00:14:38:1c:80:01
      file "pxelinux.0" 
      Vendor-rfc1048 Extensions
        Magic Cookie 0x63825363
        DHCP-Message Option 53, length 1: ACK
        Server-ID Option 54, length 4: 10.30.xx.14
        Lease-Time Option 51, length 4: 42700
        Subnet-Mask Option 1, length 4: 255.255.252.0
        Default-Gateway Option 3, length 4: 10.30.xx.1
        Domain-Name Option 15, length 10: "criggie.local" 
        Domain-Name-Server Option 6, length 8: 10.30.xx.3,10.30.xx.4
        Hostname Option 12, length 10: "criggie-PC2" 
        NTP Option 42, length 8: 10.30.xx.3,10.30.xx.4
        END Option 255, length 0

And no option49 is visible on the wire.

Actions #2

Updated by Jules Hoehn over 7 years ago

Looks like there may have been a problem with my client not requesting the custom attribute. After messing with dhclient configuration and explicitly requesting the custom attribute, i was able to see it getting sent back by PFSENSE on the wire.

I think this might be a ip address formatting issue or an issue with the client consuming the reply. yeah packet captures.

Actions #3

Updated by Jim Thompson about 7 years ago

  • Category set to DHCP (IPv4)
  • Priority changed from High to Normal
Actions #4

Updated by Jim Pingle over 4 years ago

  • Status changed from New to Rejected

The server sends the options requested by the client. If the client doesn't request it, it won't be in the packets.

Actions

Also available in: Atom PDF