

























> Implement the OT_DHCP6_VENDOR option type to properly handle the > DHCPv6 Vendor Class option (code 16) according to RFC 3315. > > Previously, this option was marked as OT_INTERNAL, causing dnsmasq > to fail immediately if configured by name. Bypassing this block by > using the numerical option format (option6:16) caused the payload > to be formatted with an unintended string-length prefix. This broke > compliance because the RFC requires a fixed 4-byte Enterprise ID > at the beginning of the option, followed by data blocks. > > This byte misalignment broke features like UEFI HTTP IPv6 Boot
With this patch, we complete the support for all UEFI boot methods: # Vendor matching IPv4 dhcp-vendorclass=set:pxebios,PXEClient:Arch:00000 dhcp-vendorclass=set:pxeefi,PXEClient:Arch:00006 dhcp-vendorclass=set:pxeefi,PXEClient:Arch:00007 dhcp-vendorclass=set:pxeefi,PXEClient:Arch:00009 dhcp-vendorclass=set:httpefi,HTTPClient:Arch:00016 # Vendor matching IPv6 dhcp-match=set:pxeefi,option6:61,00:07 dhcp-match=set:pxeefi,option6:61,00:09 dhcp-match=set:httpefi,option6:61,00:10 # Set vendor class for HTTP IPv4 answers dhcp-option=httpefi,60,HTTPClient # Set vendor class for IPv6 answers (requires the patch in this thread) dhcp-option=httpefi,option6:vendor-class,343,HTTPClient # Set the IPv4 boot file for PXE and HTTP (I'm using iPXE) dhcp-boot=tag:pxebios,ipxe/ipxe.pxe,tftpsrv.example.com,192.0.2.2 dhcp-boot=tag:pxeefi,ipxe/ipxe.efi,tftpsrv.example.com,192.0.2.2 dhcp-boot=tag:httpefi,http://192.0.2.2/ipxe/ipxe.efi,httpsrv.example.com # Set the IPv6 boot file for PXE and HTTP (I'm using iPXE) dhcp-option=pxeefi,option6:59,tftp://tftpsrv.example.com/ipxe/ipxe.efi dhcp-option=httpefi,option6:59,http://[2001:db8::2]/ipxe/ipxe.efi # This is specific for iPXE (after it has already booted, independently from protocol IPv4/IPv6 or TFTP/HTTP) dhcp-userclass=set:ipxe,iPXE # When iPXE uses DHCPv4 first dhcp-boot=tag:ipxe,/ipxe/ipxe.cfg/init.ipxe # When iPXE uses DHCPv6 first dhcp-option=ipxe,option6:59,http://[2001:db8::2]/ipxe/ipxe.cfg/init.ipxe I didn't double check the Legacy BIOS boot, but I guess it should work. It would be nice if something like this would be available for the general public, like in docs, example config files or even man. Regards, Luiz _______________________________________________ Dnsmasq-discuss mailing list [email protected] https://lists.thekelleys.org.uk/cgi-bin/mailman/listinfo/dnsmasq-discuss
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。