[ipxe-devel] DHCP - Support of vendor-encapsulated-options ?

Geert Stappers stappers at stappers.nl
Fri Jun 17 22:41:52 UTC 2016


On Fri, Jun 17, 2016 at 02:21:32PM +0000, Agrain Patrick wrote:
     ... 186 lines ...
> I tried also to encapsulate it, with following configuration in the dhcpd.conf:
> <...>
> # Define vendor space
>         option space PXE;
>         option PXE.option-129 code 129 = text;
> <...>
> group {
>        allow booting;
>        allow bootp;
>        next-server 172.25.27.90;
>        default-lease-time 1800;
>        max-lease-time 1800;
> 
>         # Mohon Peak
>         host mohon_pag {
>                 hardware ethernet 00:80:9F:FF:FF:FC; # ETH0
>                 filename "/bootp/linux/106.000-pre/pxe/pxeloader_mohon";
>                 fixed-address 172.25.27.80;
> 
>                 option vendor-class-identifier "PXEClient";
>                 vendor-option-space PXE;
>                 option PXE.option-129 "S/tel/L2960.fr";
>         }
> }
> 
> This end up in the debug logs (with DEBUG=dhcp,dhcpopts):
> <...>
> iPXE 1.0.0+ -- Open Source Network Boot Firmware -- http://ipxe.org
> Features: FTP HTTP iSCSI DNS TFTP AoE bzImage ELF MBOOT PXE PXEXT Menu
> DHCP 0x205e4 entering discovery state
     ... 36 lines ...
> DHCPOPT 0x21600 found 54 (length 6)
> DHCP 0x205e4 DHCPACK from 172.25.27.90:67 for 172.25.27.80
> DHCPOPT 0x21600 found 1 (length 6)
> DHCPOPT 0x21600 found 3 (length 6)
> DHCPOPT 0x21600 found 12 (length 11)
> DHCPOPT 0x21600 found 12 (length 11)
> DHCPOPT 0x21600 found 1 (length 6)
> DHCPOPT 0x21600 found 3 (length 6)
> DHCPOPT 0x21600 found 12 (length 11)
> DHCPOPT 0x21600 found 12 (length 11)
>  ok
> mac...............: 00:80:9f:ff:ff:fc
> ip................: 172.25.27.80
> DHCPOPT 0x21600 found 1 (length 6)
> DHCPOPT 0x21600 found 1 (length 6)
> DHCPOPT 0x21600 found 1 (length 6)
> DHCPOPT 0x21600 found 1 (length 6)
> netmask...........: 255.255.255.224
> DHCPOPT 0x21600 found 54 (length 6)
> DHCPOPT 0x21600 found 54 (length 6)
> DHCPOPT 0x21600 found 54 (length 6)
> DHCPOPT 0x21600 found 54 (length 6)
> dhcp-server.......: 172.25.27.90
> filename..........: /bootp/linux/106.000-pre/pxe/pxeloader_mohon
> next-server.......: 172.25.27.90
> DHCPOPT 0x21600 found 12 (length 11)
> DHCPOPT 0x21600 found 12 (length 11)
> DHCPOPT 0x21600 found 12 (length 11)
> DHCPOPT 0x21600 found 12 (length 11)
> hostname..........: il27_080
> .
> /bootp/linux/106.000-pre/pxe/pxeloader_mohon... ok
> DHCPOPT 0xa1564 created (data 0x80430a60 lengths 0x0,0x3fc)
> DHCPOPT 0xa1564 creating 53 (length 3)
> DHCPOPT 0x20e00 found 1 (length 6)
> DHCPOPT 0x20e00 found 1 (length 6)
> DHCPOPT 0xa1564 creating 1 (length 6)
> DHCPOPT 0x20e00 found 3 (length 6)
> DHCPOPT 0x20e00 found 3 (length 6)
> DHCPOPT 0xa1564 creating 3 (length 6)
> DHCPOPT 0x20e00 found 12 (length 11)
> DHCPOPT 0x20e00 found 12 (length 11)
> DHCPOPT 0xa1564 creating 12 (length 11)
> DHCPOPT 0x20e00 found 43.129 (length 16)

Note the "129"


> DHCPOPT 0x20e00 found 43.129 (length 16)
> DHCPOPT 0xa1564 creating 43.129 (length 16)
> DHCPOPT 0xa1564 creating 43 (length 3)
> DHCPOPT 0x20e00 found 51 (length 6)
> DHCPOPT 0x20e00 found 51 (length 6)
> DHCPOPT 0xa1564 creating 51 (length 6)
> DHCPOPT 0x20e00 found 53 (length 3)
> DHCPOPT 0x20e00 found 53 (length 3)
> DHCPOPT 0xa1564 found 53 (length 3)
> DHCPOPT 0xa1564 resizing 53 from 3 to 3
> DHCPOPT 0x20e00 found 54 (length 6)
> DHCPOPT 0x20e00 found 54 (length 6)
> DHCPOPT 0xa1564 creating 54 (length 6)
> DHCPOPT 0x20e00 found 60 (length 11)
> DHCPOPT 0x20e00 found 60 (length 11)
> DHCPOPT 0xa1564 creating 60 (length 11)
> DHCPOPT 0xa1564 creating 66 (length 0)
> DHCPOPT 0xa1564 creating 67 (length 0)
> DHCPOPT 0xa1564 creating 175.2 (length 0)
> DHCPOPT 0xa1564 creating 175 (length 3)
> DHCPOPT 0xa1564 found 175 (length 3)
> DHCPOPT 0xa1564 resizing 175 from 3 to 0
> DHCPOPT 0xa1564 creating 175.3 (length 0)
> DHCPOPT 0xa1564 creating 175 (length 3)
> DHCPOPT 0xa1564 found 175 (length 3)
> DHCPOPT 0xa1564 resizing 175 from 3 to 0
> DHCPOPT 0x21600 found 1 (length 6)
> DHCPOPT 0x21600 found 3 (length 6)
> DHCPOPT 0x21600 found 12 (length 11)
> DHCPOPT 0x21600 found 12 (length 11)
> DHCPOPT 0x20e00 found 12 (length 11)
> DHCPOPT 0x20e00 found 12 (length 11)
> DHCPOPT 0x20e00 found 12 (length 11)
> DHCPOPT 0x20e00 found 12 (length 11)
> 
> In that case, tcpdump+wireshark show an "Unknown suboption 129" in the DHCPOFFER and DHCPACK transactions.

It means vendor option 129 was in the packet



> I replaced 'text' by 'string' with the same result.
> 
> In both cases, our installer does not see the string "S/tel/L2960.fr".

And what your installer?


> For iPXE, what should be used ? Encapsulated or not ?
> Is there maybe anything to add on iPXE side ?
> 
> Any hint is welcome.

I think your question should be

   How to hand over a DHCP (vendor) option to software that runs after iPXE?
 

> Thanks in advance.
> Kind regards,
> Patrick Agrain


Groeten
Geert Stappers
-- 
Leven en laten leven
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.ipxe.org/pipermail/ipxe-devel/attachments/20160618/878eca5b/attachment.sig>


More information about the ipxe-devel mailing list