DHCPOFFER sent to wrong MAC?

Jason Lixfeld jason-lists.dhcp at lixfeld.ca
Fri Aug 18 15:08:20 UTC 2006


I have isc-dhcpd-3.0.4 installed via FreeBSD ports on a 6.1-RELEASE- 
p3 machine with a custom kernel.

My dhcp server is at 00:50:04:d1:c9:f0
My dhcp client is at 00:11:a0:02:67:36

The dhcp server logs show constant discover/offer pairs, but the  
client does not respond with a request, etc...

Aug 17 14:35:59 bubbles dhcpd: DHCPDISCOVER from 00:11:a0:02:67:36  
via xl0
Aug 17 14:35:59 bubbles dhcpd: DHCPOFFER on 192.168.100.249 to  
00:11:a0:02:67:36 via xl0
Aug 17 14:36:01 bubbles dhcpd: DHCPDISCOVER from 00:11:a0:02:67:36  
via xl0
Aug 17 14:36:01 bubbles dhcpd: DHCPOFFER on 192.168.100.249 to  
00:11:a0:02:67:36 via xl0
Aug 17 14:36:03 bubbles dhcpd: DHCPDISCOVER from 00:11:a0:02:67:36  
via xl0
Aug 17 14:36:03 bubbles dhcpd: DHCPOFFER on 192.168.100.249 to  
00:11:a0:02:67:36 via xl0

I span'd the port on my switch which the dhcp server is connected to,  
and ran ethereal on it and noticed this:

# Discover
<snip>
Ethernet II, Src: VtechEng_02:67:36 (00:11:a0:02:67:36), Dst:  
Broadcast (ff:ff:ff:ff:ff:ff)
     Destination: Broadcast (ff:ff:ff:ff:ff:ff)
     Source: VtechEng_02:67:36 (00:11:a0:02:67:36)
</snip>

# Offer
<snip>
Ethernet II, Src: 3com_d1:c9:f0 (00:50:04:d1:c9:f0), Dst:  
Cisco_bb:c6:a1 (00:05:9b:bb:c6:a1)
     Destination: Cisco_bb:c6:a1 (00:05:9b:bb:c6:a1)
     Source: 3com_d1:c9:f0 (00:50:04:d1:c9:f0)
</snip>

It's sending the offer to the wrong MAC address.  00:05:9b:bb:c6:a1  
is the MAC address of my default gateway router.

Is this a configuration glitch on my end or is something else wrong?   
All clients appear to be affected similarly.

Here's my config:

server-identifier 192.168.100.10;
option domain-name "example.ca";
option domain-name-servers 192.168.100.10,172.16.17.2;
option subnet-mask 255.255.255.0;
default-lease-time 43200;
max-lease-time 43200;
ddns-update-style ad-hoc;

    subnet 192.168.100.0 netmask 255.255.255.0 {
       range 192.168.100.200 192.168.100.250;
       option subnet-mask 255.255.255.0;
       option broadcast-address 192.168.100.255;
       option routers 192.168.100.1;
    }

Here's the entire transaction:

No.     Time        Source                Destination            
Protocol  
Info                                                            HW  
Src                HW Dst
      28 6.489829    0.0.0.0               255.255.255.255        
DHCP     DHCP Discover - Transaction ID  
0x6794513                        VtechEng_02:67:36     Broadcast

Frame 28 (594 bytes on wire, 594 bytes captured)
Ethernet II, Src: VtechEng_02:67:36 (00:11:a0:02:67:36), Dst:  
Broadcast (ff:ff:ff:ff:ff:ff)
     Destination: Broadcast (ff:ff:ff:ff:ff:ff)
     Source: VtechEng_02:67:36 (00:11:a0:02:67:36)
     Type: IP (0x0800)
     Frame check sequence: 0x34293e14 [correct]
Internet Protocol, Src: 0.0.0.0 (0.0.0.0), Dst: 255.255.255.255  
(255.255.255.255)
     Version: 4
     Header length: 20 bytes
     Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
     Total Length: 576
     Identification: 0x0000 (0)
     Flags: 0x00
     Fragment offset: 0
     Time to live: 64
     Protocol: UDP (0x11)
     Header checksum: 0x78ae [correct]
     Source: 0.0.0.0 (0.0.0.0)
     Destination: 255.255.255.255 (255.255.255.255)
User Datagram Protocol, Src Port: bootpc (68), Dst Port: bootps (67)
     Source port: bootpc (68)
     Destination port: bootps (67)
     Length: 556
     Checksum: 0x492d [correct]
Bootstrap Protocol
     Message type: Boot Request (1)
     Hardware type: Ethernet
     Hardware address length: 6
     Hops: 0
     Transaction ID: 0x06794513
     Seconds elapsed: 0
     Bootp flags: 0x0000 (Unicast)
         0... .... .... .... = Broadcast flag: Unicast
         .000 0000 0000 0000 = Reserved flags: 0x0000
     Client IP address: 0.0.0.0 (0.0.0.0)
     Your (client) IP address: 0.0.0.0 (0.0.0.0)
     Next server IP address: 0.0.0.0 (0.0.0.0)
     Relay agent IP address: 0.0.0.0 (0.0.0.0)
     Client MAC address: VtechEng_02:67:36 (00:11:a0:02:67:36)
     Server host name not given
     Boot file name not given
     Magic cookie: (OK)
     Option 53: DHCP Message Type = DHCP Discover
     Option 61: Client identifier
     Option 60: Vendor class identifier = "udhcp 0.9.7"
     Option 55: Parameter Request List
     End Option
     Padding

No.     Time        Source                Destination            
Protocol  
Info                                                            HW  
Src                HW Dst
      29 6.490513    192.168.100.10        255.255.255.255        
DHCP     DHCP Offer    - Transaction ID  
0x6794513                        3com_d1:c9:f0         Cisco_bb:c6:a1

Frame 29 (347 bytes on wire, 347 bytes captured)
Ethernet II, Src: 3com_d1:c9:f0 (00:50:04:d1:c9:f0), Dst:  
Cisco_bb:c6:a1 (00:05:9b:bb:c6:a1)
     Destination: Cisco_bb:c6:a1 (00:05:9b:bb:c6:a1)
     Source: 3com_d1:c9:f0 (00:50:04:d1:c9:f0)
     Type: IP (0x0800)
     Frame check sequence: 0x94468004 [correct]
Internet Protocol, Src: 192.168.100.10 (192.168.100.10), Dst:  
255.255.255.255 (255.255.255.255)
     Version: 4
     Header length: 20 bytes
     Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
     Total Length: 329
     Identification: 0x6c4c (27724)
     Flags: 0x00
     Fragment offset: 0
     Time to live: 64
     Protocol: UDP (0x11)
     Header checksum: 0xe8a5 [correct]
     Source: 192.168.100.10 (192.168.100.10)
     Destination: 255.255.255.255 (255.255.255.255)
User Datagram Protocol, Src Port: bootps (67), Dst Port: bootpc (68)
     Source port: bootps (67)
     Destination port: bootpc (68)
     Length: 309
     Checksum: 0x14d0 [correct]
Bootstrap Protocol
     Message type: Boot Reply (2)
     Hardware type: Ethernet
     Hardware address length: 6
     Hops: 0
     Transaction ID: 0x06794513
     Seconds elapsed: 0
     Bootp flags: 0x0000 (Unicast)
         0... .... .... .... = Broadcast flag: Unicast
         .000 0000 0000 0000 = Reserved flags: 0x0000
     Client IP address: 0.0.0.0 (0.0.0.0)
     Your (client) IP address: 192.168.100.249 (192.168.100.249)
     Next server IP address: 0.0.0.0 (0.0.0.0)
     Relay agent IP address: 0.0.0.0 (0.0.0.0)
     Client MAC address: VtechEng_02:67:36 (00:11:a0:02:67:36)
     Server host name not given
     Boot file name not given
     Magic cookie: (OK)
     Option 53: DHCP Message Type = DHCP Offer
     Option 54: Server Identifier = 192.168.100.10
     Option 51: IP Address Lease Time = 12 hours
     Option 1: Subnet Mask = 255.255.255.0
     Option 3: Router = 192.168.100.1
     Option 6: Domain Name Server
     Option 15: Domain Name = "example.ca"
     Option 28: Broadcast Address = 192.168.100.255
     End Option



More information about the dhcp-users mailing list