Client not sending DHCPREQUEST after offer.

Hajducko, Steven Steven_Hajducko at intuit.com
Fri Jul 20 18:22:02 UTC 2012


Running into a situation where a client ( a VMWARE ESX 4.0 guest ) cannot
get an IP off our DHCP server ( isc-dhcpd-V3.1-ESV on RHEL 5.6 ).  The
dhcpd server is coming as part of a packaged product ( HP's Server
Automation ) but their support has been no help, so turning to this list.
Any help would be greatly appreciated.

What happens:

The client sends the DHCPDISCOVER ( it actually sends 2 or 3 ), our server
sends the DHCPOFFER, and then we never receive the DHCPREQUEST.

The log file shows:

Jul 20 18:07:22 sdgSAsat06 dhcpd: No hostname for 192.168.253.198
Jul 20 18:07:22 sdgSAsat06 dhcpd: DHCPDISCOVER from 00:50:56:aa:02:ac via
eth2
Jul 20 18:07:22 sdgSAsat06 dhcpd: DHCPOFFER on 192.168.253.198 to
00:50:56:aa:02:ac via eth2
Jul 20 18:07:32 sdgSAsat06 dhcpd: No hostname for 192.168.253.198
Jul 20 18:07:32 sdgSAsat06 dhcpd: DHCPDISCOVER from 00:50:56:aa:02:ac via
eth2
Jul 20 18:07:32 sdgSAsat06 dhcpd: DHCPOFFER on 192.168.253.198 to
00:50:56:aa:02:ac via eth2
Jul 20 18:07:42 sdgSAsat06 dhcpd: No hostname for 192.168.253.198
Jul 20 18:07:42 sdgSAsat06 dhcpd: DHCPDISCOVER from 00:50:56:aa:02:ac via
eth2
Jul 20 18:07:42 sdgSAsat06 dhcpd: DHCPOFFER on 192.168.253.198 to
00:50:56:aa:02:ac via eth2
Jul 20 18:07:52 sdgSAsat06 dhcpd: No hostname for 192.168.253.198
Jul 20 18:07:52 sdgSAsat06 dhcpd: DHCPDISCOVER from 00:50:56:aa:02:ac via
eth2
Jul 20 18:07:52 sdgSAsat06 dhcpd: DHCPOFFER on 192.168.253.198 to
00:50:56:aa:02:ac via eth2

However, in a tcpdump, I see three DHCPDISCOVER's being sent in quick
succession before we even respond w/ the DHCPOFFER.

18:07:12.950075 IP (tos 0x0, ttl  20, id 0, offset 0, flags [none], proto:
UDP (17), length: 576) 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP,
Request from 00:50:56:aa:02:ac, length: 548, xid:0x57aa02ac, secs:4,
flags: [Broadcast]
	  Client Ethernet Address: 00:50:56:aa:02:ac
	  Vendor-rfc1048:
	    DHCP:DISCOVER
	    
PR:SM+TZ+DG+IEN+NS+RL+HN+BS+DN+SS+RP+EP+VO+SID+VC+BF+T128+T129+T130+T131+T1
32+T133+T134+T135
	    MSZ:1260
	    GUID:0.66.42.10.203.234.93.79.140.64.97.241.0.81.241.96.134
	    ARCH:0
	    NDI:1.2.1
	    VC:"PXEClient:Arch:00000:UNDI:002001"
18:07:15.036531 IP (tos 0x0, ttl  20, id 1, offset 0, flags [none], proto:
UDP (17), length: 576) 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP,
Request from 00:50:56:aa:02:ac, length: 548, xid:0x58aa02ac, secs:6,
flags: [Broadcast]
	  Client Ethernet Address: 00:50:56:aa:02:ac
	  Vendor-rfc1048:
	    DHCP:DISCOVER
	    
PR:SM+TZ+DG+IEN+NS+RL+HN+BS+DN+SS+RP+EP+VO+SID+VC+BF+T128+T129+T130+T131+T1
32+T133+T134+T135
	    MSZ:1260
	    GUID:0.66.42.10.203.234.93.79.140.64.97.241.0.81.241.96.134
	    ARCH:0
	    NDI:1.2.1
	    VC:"PXEClient:Arch:00000:UNDI:002001"
18:07:19.101062 IP (tos 0x0, ttl  20, id 2, offset 0, flags [none], proto:
UDP (17), length: 576) 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP,
Request from 00:50:56:aa:02:ac, length: 548, xid:0x59aa02ac, secs:10,
flags: [Broadcast]
	  Client Ethernet Address: 00:50:56:aa:02:ac
	  Vendor-rfc1048:
	    DHCP:DISCOVER
	    
PR:SM+TZ+DG+IEN+NS+RL+HN+BS+DN+SS+RP+EP+VO+SID+VC+BF+T128+T129+T130+T131+T1
32+T133+T134+T135
	    MSZ:1260
	    GUID:0.66.42.10.203.234.93.79.140.64.97.241.0.81.241.96.134
	    ARCH:0
	    NDI:1.2.1
	    VC:"PXEClient:Arch:00000:UNDI:002001"
18:07:22.949902 IP (tos 0x10, ttl 128, id 0, offset 0, flags [none],
proto: UDP (17), length: 394) 192.168.252.2.67 > 255.255.255.255.68:
BOOTP/DHCP, Reply, length: 366, xid:0x57aa02ac, secs:4, flags: [Broadcast]
	  Your IP: 192.168.253.198
	  Server IP: 192.168.252.2
	  Client Ethernet Address: 00:50:56:aa:02:ac
	  file "pxelinux.0"
	  Vendor-rfc1048:
	    DHCP:OFFER
	    SID:192.168.252.2
	    LT:10800
	    SM:255.255.254.0
	    DG:0.0.0.0
	    NS:192.168.252.2
	    RN:5400
	    RB:9450
	    BR:192.168.253.255
	    VC:"PXEClient"
	    DN:"nobody.intuit.com"
	    T252:92.66.111.111.116.92.66.67.68
	    T150:115.111.108.45.120.56.54.47.109.46.108.115.116
	    T186:3232300034
	    T187:8017
	    VO:1.4.0.0.0.0
18:07:27.175422 IP (tos 0x0, ttl  20, id 3, offset 0, flags [none], proto:
UDP (17), length: 576) 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP,
Request from 00:50:56:aa:02:ac, length: 548, xid:0x5aaa02ac, secs:18,
flags: [Broadcast]
	  Client Ethernet Address: 00:50:56:aa:02:ac
	  Vendor-rfc1048:
	    DHCP:DISCOVER
	    
PR:SM+TZ+DG+IEN+NS+RL+HN+BS+DN+SS+RP+EP+VO+SID+VC+BF+T128+T129+T130+T131+T1
32+T133+T134+T135
	    MSZ:1260
	    GUID:0.66.42.10.203.234.93.79.140.64.97.241.0.81.241.96.134
	    ARCH:0
	    NDI:1.2.1
	    VC:"PXEClient:Arch:00000:UNDI:002001"
18:07:32.950021 IP (tos 0x10, ttl 128, id 0, offset 0, flags [none],
proto: UDP (17), length: 394) 192.168.252.2.67 > 255.255.255.255.68:
BOOTP/DHCP, Reply, length: 366, xid:0x58aa02ac, secs:6, flags: [Broadcast]
	  Your IP: 192.168.253.198
	  Server IP: 192.168.252.2
	  Client Ethernet Address: 00:50:56:aa:02:ac
	  file "pxelinux.0"
	  Vendor-rfc1048:
	    DHCP:OFFER
	    SID:192.168.252.2
	    LT:10800
	    SM:255.255.254.0
	    DG:0.0.0.0
	    NS:192.168.252.2
	    RN:5400
	    RB:9450
	    BR:192.168.253.255
	    VC:"PXEClient"
	    DN:"nobody.intuit.com"
	    T252:92.66.111.111.116.92.66.67.68
	    T150:115.111.108.45.120.56.54.47.109.46.108.115.116
	    T186:3232300034
	    T187:8017
	    VO:1.4.0.0.0.0
18:07:42.950189 IP (tos 0x10, ttl 128, id 0, offset 0, flags [none],
proto: UDP (17), length: 394) 192.168.252.2.67 > 255.255.255.255.68:
BOOTP/DHCP, Reply, length: 366, xid:0x59aa02ac, secs:10, flags: [Broadcast]
	  Your IP: 192.168.253.198
	  Server IP: 192.168.252.2
	  Client Ethernet Address: 00:50:56:aa:02:ac
	  file "pxelinux.0"
	  Vendor-rfc1048:
	    DHCP:OFFER
	    SID:192.168.252.2
	    LT:10800
	    SM:255.255.254.0
	    DG:0.0.0.0
	    NS:192.168.252.2
	    RN:5400
	    RB:9450
	    BR:192.168.253.255
	    VC:"PXEClient"
	    DN:"nobody.intuit.com"
	    T252:92.66.111.111.116.92.66.67.68
	    T150:115.111.108.45.120.56.54.47.109.46.108.115.116
	    T186:3232300034
	    T187:8017
	    VO:1.4.0.0.0.0
18:07:45.795997 IP (tos 0x0, ttl  20, id 5, offset 0, flags [none], proto:
UDP (17), length: 576) 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP,
Request from 00:a0:d1:ee:06:20, length: 548, xid:0xd7ee0620, secs:20,
flags: [Broadcast]
	  Client Ethernet Address: 00:a0:d1:ee:06:20
	  Vendor-rfc1048:
	    DHCP:DISCOVER
	    
PR:SM+TZ+DG+TS+IEN+NS+RL+HN+BS+DN+SS+RP+EP+RSZ+TTL+BR+YD+YS+NTP+VO+RQ+LT+SI
D+RN+RB+VC+TFTP+BF+T128+T129+T130+T131+T132+T133+T134+T135
	    MSZ:1260
	    GUID:0.68.69.76.76.84.0.16.49.128.51.185.192.79.70.81.49
	    ARCH:0
	    NDI:1.2.1
	    VC:"PXEClient:Arch:00000:UNDI:002001"


I didn't want to post the entire config, because the application puts alot
of junk in there for things like Solaris, but here are some snippets of
the more general parts:

authoritative;
log-facility local6;
deny duplicates;
one-lease-per-client true;
get-lease-hostnames true;
ddns-update-style none;
ping-check true;
max-lease-time 21600;
default-lease-time 10800;
next-server 192.168.252.2;

#
# declare OPSW site options
#
option space OPSW;
# DANGER WILL ROBINSON - if you change the codes for the first 2 of these
# options, you'll need to also edit them in the param-request-lists
appearing
# below. Note that in the pxeclient section, you need to specify the
# values in hex, not in decimal. Also, these values are burned into
# a couple other files you'll need to edit as well:
# /opt/opsware/boot/tftpboot/pxelinux.cfg/default
# /opt/opsware/boot/jumpstart/Boot/etc/dhcp/inittab
# /opt/opsware/boot/jumpstart/Boot/etc/default/dhcpagent
option OPSW.buildmgr_ip code   186 = ip-address;
option OPSW.buildmgr_port code 187 = unsigned integer 16;
option OPSW.grub-menu code 150 = text;
option OPSW.wpad code 252 = text;

#
# define OPSW site options
#
site-option-space "OPSW";
option OPSW.buildmgr_ip   192.168.252.2;
option OPSW.buildmgr_port 8017;


#
# declare PXE vendor options
#
option space PXE;
option PXE.mtftp-ip             code 1  = ip-address;
option PXE.mtftp-cport          code 2  = unsigned integer 16;
option PXE.mtftp-sport          code 3  = unsigned integer 16;
option PXE.mtftp-tmout          code 4  = unsigned integer 8;
option PXE.mtftp-delay          code 5  = unsigned integer 8;
option PXE.discovery-control    code 6  = unsigned integer 8;
option PXE.discovery-mcast-addr code 7  = ip-address;
option PXE.boot-item            code 71 = unsigned integer 16;

#
# define PXE vendor options
#
class "pxeclients-ia64" {
   # 00002 == ia64
   match if substring (option vendor-class-identifier, 0, 20) =
"PXEClient:Arch:00002";
   filename "hpsa_ia64_bootloader.efi";
   option dhcp-parameter-request-list =
concat(dhcp-parameter-request-list,ba,bb);
}

class "pxeclients-x86" {
   # 00000 == x86
   match if substring (option vendor-class-identifier, 0, 20) =
"PXEClient:Arch:00000";
   vendor-option-space PXE;
   filename "pxelinux.0";
   option vendor-class-identifier "PXEClient";
   # We set the MCAST IP address to 0.0.0.0 to tell the boot ROM we
   # can't provide multicast TFTP, so it will have to use just
   # plain ol' TFTP instead (address 0.0.0.0 is considered
   # as "no address").
   option PXE.mtftp-ip 0.0.0.0;
   site-option-space "OPSW";
   option OPSW.grub-menu "sol-x86/m.lst";
   option OPSW.wpad      "\\Boot\\BCD";
   option dhcp-parameter-request-list =
concat(dhcp-parameter-request-list,ba,bb,fc);
}

# Begin dhcptool added subnets (do not edit)
subnet 192.168.252.0 netmask 255.255.254.0 {
   range dynamic-bootp 192.168.252.10 192.168.253.199;
   option broadcast-address 192.168.253.255;
   option domain-name "nobody.intuit.com";
   option domain-name-servers 192.168.252.2;
   option routers 0.0.0.0;
}
# End dhcptool added subnets (do not edit)



So does anything look wrong from our side?  I'm not sure how to proceed in
troubleshooting, since I don't have the access/ability to sniff/tap the
switch the ESX host is on, I can't see if the DHCPOFFER is ever getting
back to the client.  This is a provisioning network only, so systems don't
remain here really.  I've tested a few other VM's and I'm getting the same
issue.  I do have one VM that seems to have gotten a lease awhile ago and
continues to get it:

Jul 20 01:55:49 sdgSAsat06 dhcpd: DHCPREQUEST for 192.168.253.152 from
00:50:56:aa:02:21 via eth2
Jul 20 01:55:49 sdgSAsat06 dhcpd: DHCPACK on 192.168.253.152 to
00:50:56:aa:02:21 via eth2


At least that seems to be working.  Like I said, any help or finger
pointing in the right direction from here would be greatly appreciated.

--
sh



More information about the dhcp-users mailing list