difference between behavior after pxe and normal request and their definitions

Meike Stone meike.stone at googlemail.com
Fri Jul 18 16:11:28 UTC 2014


Hello,

we set up a Citrix VDI environment and a few virtual desktops (PVS
Target devices) boots Windows from network (normally via pxe).
1) So at first, the (virtual) NIC from the PVS target device discovers
and request an IP address and getting the boot image via tftp
2) Second, during later booting the OS (Windows), the client network
stack discover and request an IP address again (same mac).

a) Normaly, the DHCP Server should hand out two different IP
addresses, if the first lease (from 1)) is not expired.
  That works as expected (normal network boot without pxe).

b) With a PXE request in 1), the client gets in 2) the same address
like in 1), regardless whether the lease in 1) is expired or not.

Both are normal, but my question is, where can I find the definitions
(RFC) for this behavior regarding pxe in the dhcp protocol? I did
nothing found until now?
The manual page from dhcp.conf does nothing write about this...

Citrix only made a small comment in their knowledge base :
http://support.citrix.com/article/CTX139873

Thanks Meike, have nice weekend!


===============================================
Examples (only Discover and Offer)
(hope, I made no mistake during clean up ...)
===============================================

-----------------------------------------
Example without PXE for a)
-----------------------------------------

* NIC

15:43:27.390642 192.168.128.12.bootpc > dhcpsrv.vdi.test.bootps: [udp
sum ok] BOOTP/DHCP, Request from 42:b1:60:11:23:12 (oui Unknown),
length 260, hops 1,
xid 0x574fe450, Flags [none]
      Gateway-IP 192.168.128.12
      Client-Ethernet-Address 42:b1:60:11:23:12 (oui Unknown)
      Vendor-rfc1048 Extensions
        Magic Cookie 0x63825363
        DHCP-Message Option 53, length 1: Discover
        Client-ID Option 61, length 7: ether 42:b1:60:11:23:12
        Parameter-Request Option 55, length 5:
          Subnet-Mask, Default-Gateway, Domain-Name-Server, Domain-Name
          Server-ID
        END Option 255, length 0


15:43:27.391136 IP dhcpsrv.vdi.test.bootps > 192.168.128.12.bootps:
[udp sum ok] BOOTP/DHCP, Reply, length 300, hops 1,
xid 0x574fe450, Flags [none]
      Your-IP 192.168.129.215
      Gateway-IP 192.168.128.12
      Client-Ethernet-Address 42:b1:60:11:23:12 (oui Unknown)
      Vendor-rfc1048 Extensions
        Magic Cookie 0x63825363
        DHCP-Message Option 53, length 1: Offer
        Server-ID Option 54, length 4: dhcpsrv.vdi.test
        Lease-Time Option 51, length 4: 360
        Subnet-Mask Option 1, length 4: 255.255.255.0
        Default-Gateway Option 3, length 4: 192.168.129.1
        Domain-Name-Server Option 6, length 8: dns01.vdi.test,dns02.vdi.test
        Domain-Name Option 15, length 11: "d.vdi.test."
        END Option 255, length 0
        PAD Option 0, length 0, occurs 9


**** WINDOWS OS Stack ****

    15:46:42.656691 192.168.128.12.bootpc > dhcpsrv.vdi.test.bootps:
[udp sum ok] BOOTP/DHCP, Request from 42:b1:60:11:23:12 (oui Unknown),
length 300, hops 1,
    xid 0x42f613d, secs 768, Flags [Broadcast]
      Gateway-IP 192.168.128.12
      Client-Ethernet-Address 42:b1:60:11:23:12 (oui Unknown)
      Vendor-rfc1048 Extensions
        Magic Cookie 0x63825363
        DHCP-Message Option 53, length 1: Discover
        CLASS Option 77, length 7: "vditest"
        Client-ID Option 61, length 7: ether 42:b1:60:11:23:12
        Hostname Option 12, length 11: "pvs-pd-t-04"
        Vendor-Class Option 60, length 8: "MSFT 5.0"
        Parameter-Request Option 55, length 12:
          Subnet-Mask, Domain-Name, Default-Gateway, Domain-Name-Server
          Netbios-Name-Server, Netbios-Node, Netbios-Scope, Router-Discovery
          Static-Route, Classless-Static-Route,
Classless-Static-Route-Microsoft, Vendor-Option
        END Option 255, length 0
        PAD Option 0, length 0


15:46:43.658587 dhcpsrv.vdi.test.bootps > 192.168.128.12.bootps: [udp
sum ok] BOOTP/DHCP, Reply, length 300, hops 1,
xid 0x42f613d, secs 768, Flags [Broadcast]
      Your-IP 192.168.129.184
      Gateway-IP 192.168.128.12
      Client-Ethernet-Address 42:b1:60:11:23:12 (oui Unknown)
      Vendor-rfc1048 Extensions
        Magic Cookie 0x63825363
        DHCP-Message Option 53, length 1: Offer
        Server-ID Option 54, length 4: dhcpsrv.vdi.test
        Lease-Time Option 51, length 4: 3600
        Subnet-Mask Option 1, length 4: 255.255.255.0
        Domain-Name Option 15, length 11: "d.vdi.test."
        Default-Gateway Option 3, length 4: 192.168.129.1
        Domain-Name-Server Option 6, length 8: dns01.vdi.test,dns02.vdi.test
        END Option 255, length 0
        PAD Option 0, length 0, occurs 9






-----------------------------------------
   Example with PXE for b)
-----------------------------------------

**** NIC ****

16:09:23.366919 192.168.128.12.bootps > dhcpsrv.vdi.test.bootps: [udp
sum ok] BOOTP/DHCP, Request from d6:12:16:ef:ab:32 (oui Unknown),
length 384, hops 2,
xid 0x16dae42a, secs 4, Flags [none] (0x0000)
          Gateway-IP 192.168.128.12
          Client-Ethernet-Address d6:12:16:ef:ab:32 (oui Unknown)
          Vendor-rfc1048 Extensions
            Magic Cookie 0x63825363
            DHCP-Message Option 53, length 1: Discover
            MSZ Option 57, length 2: 1260
            ARCH Option 93, length 2: 0
            NDI Option 94, length 3: 1.2.1
            Vendor-Class Option 60, length 32:
"PXEClient:Arch:00000:UNDI:002001"
            CLASS Option 77, length 4: "gPXE"
            Parameter-Request Option 55, length 13:
              Subnet-Mask, Default-Gateway, Domain-Name-Server, LOG
              Hostname, Domain-Name, RP, Vendor-Option
              Vendor-Class, TFTP, BF, Option 175
              Option 203
            T175 Option 175, length 42:
45317,272,60545,14616,257,8705,281,257,8449,272,258,4609,275,257,4353,491,769,0,5889,277,257
            Client-ID Option 61, length 7: ether d6:12:16:ef:ab:32
            GUID Option 97, length 17:
0.76.160.173.120.214.79.202.71.138.35.67.120.117.143.246.52
            END Option 255, length 0

16:09:24.367470 dhcpsrv.vdi.test.bootps > 192.168.128.12.bootps: [udp
sum ok] BOOTP/DHCP, Reply, length 300, hops 2,
xid 0x16dae42a, secs 4, Flags [none] (0x0000)
          Your-IP 192.168.129.34
          Gateway-IP 192.168.128.12
          Client-Ethernet-Address d6:12:16:ef:ab:32 (oui Unknown)
          Vendor-rfc1048 Extensions
            Magic Cookie 0x63825363
            DHCP-Message Option 53, length 1: Offer
            Server-ID Option 54, length 4: dhcpsrv.vdi.test
            Lease-Time Option 51, length 4: 360
            Subnet-Mask Option 1, length 4: 255.255.255.0
            Default-Gateway Option 3, length 4: 192.168.129.1
            Domain-Name-Server Option 6, length 8: dns01.vdi.test,dns02.vdi.test
            Domain-Name Option 15, length 11: "d.vdi.test."
            END Option 255, length 0
            PAD Option 0, length 0, occurs 9



 **** WINDOWS OS Stack ****


16:10:05.079842  192.168.128.12.bootps > dhcpsrv.vdi.test.bootps: [udp
sum ok] BOOTP/DHCP, Request from d6:12:16:ef:ab:32 (oui Unknown),
length 300, hops 2,
xid 0x5ba369f0, Flags [Broadcast] (0x8000)
          Gateway-IP 192.168.128.12
          Client-Ethernet-Address d6:12:16:ef:ab:32 (oui Unknown)
          Vendor-rfc1048 Extensions
            Magic Cookie 0x63825363
            DHCP-Message Option 53, length 1: Discover
            CLASS Option 77, length 5: "vdipc"
            Client-ID Option 61, length 7: ether d6:12:16:ef:ab:32
            Hostname Option 12, length 12: "vdisk-04-002"
            Vendor-Class Option 60, length 8: "MSFT 5.0"
            Parameter-Request Option 55, length 12:
              Subnet-Mask, Domain-Name, Default-Gateway, Domain-Name-Server
              Netbios-Name-Server, Netbios-Node, Netbios-Scope, Router-Discovery
              Static-Route, Classless-Static-Route,
Classless-Static-Route-Microsoft, Vendor-Option
            END Option 255, length 0
            PAD Option 0, length 0, occurs 2


16:10:05.080139  dhcpsrv.vdi.test.bootps > 192.168.128.12.bootps: [udp
sum ok] BOOTP/DHCP, Reply, length 300, hops 2,
xid 0x5ba369f0, Flags [Broadcast] (0x8000)
          Your-IP 192.168.129.34
          Gateway-IP 192.168.128.12
          Client-Ethernet-Address d6:12:16:ef:ab:32 (oui Unknown)
          Vendor-rfc1048 Extensions
            Magic Cookie 0x63825363
            DHCP-Message Option 53, length 1: Offer
            Server-ID Option 54, length 4: dhcpsrv.vdi.test
            Lease-Time Option 51, length 4: 3600
            Subnet-Mask Option 1, length 4: 255.255.255.0
            Domain-Name Option 15, length 11: "d.vdi.test."
            Default-Gateway Option 3, length 4: 192.168.129.1
            Domain-Name-Server Option 6, length 8: dns01.vdi.test,dns02.vdi.test
            END Option 255, length 0
            PAD Option 0, length 0, occurs 9


More information about the dhcp-users mailing list