[GH-ISSUE #113] Suggestion: Add ProxyDHCP support #20

Open
opened 2026-02-27 14:56:46 +03:00 by kerem · 3 comments
Owner

Originally created by @lars18th on GitHub (Jul 31, 2024).
Original GitHub issue: https://github.com/netbootxyz/netboot.xyz-docs/issues/113

Hi,

The use case is very easy (and common): you can't replace the current DHCP server on your network and you can't edit the configuration to add the next-server option to it.

In this case the only option is to use the ProxyDHCP way. How it works? It uses a non-standard booting method where your booting client receives two DHCP OFFER packets. One is from the stock DHCP server with the IP address and all other information. And another one from your booting server with the PXE data. You can read more from here https://github.com/pypxe/PyPXE/blob/master/DOCUMENTATION.md#proxydhcp

So because this project https://github.com/pypxe/PyPXE includes support for this extension, the idea is to include it. I've done some tests with it sudo python -m pypxe.server --dhcp-proxy --tftp and it works with success.

The suggestion is then to add this package to this container and use it to enable this mode.
I hope you want to explore it.
Regards.

Originally created by @lars18th on GitHub (Jul 31, 2024). Original GitHub issue: https://github.com/netbootxyz/netboot.xyz-docs/issues/113 Hi, The use case is very easy (and common): you can't replace the current DHCP server on your network and you can't edit the configuration to add the `next-server` option to it. In this case the only option is to use the ProxyDHCP way. How it works? It uses a non-standard booting method where your booting client receives *two* DHCP OFFER packets. One is from the stock DHCP server with the IP address and all other information. And another one from your booting server with the PXE data. You can read more from here https://github.com/pypxe/PyPXE/blob/master/DOCUMENTATION.md#proxydhcp So because this project https://github.com/pypxe/PyPXE includes support for this extension, the idea is to include it. I've done some tests with it `sudo python -m pypxe.server --dhcp-proxy --tftp` and it works with success. The suggestion is then to add this package to this container and use it to enable this mode. I hope you want to explore it. Regards.
Author
Owner

@antonym commented on GitHub (Aug 1, 2024):

ProxyDHCP is already supported, if you drop a local-vars.ipxe in your local tftp root and set:

set use_proxydhcp_settings true

That will enable the proxydhcp code path:

https://github.com/netbootxyz/netboot.xyz/blob/development/roles/netbootxyz/templates/disks/netboot.xyz.j2#L31

<!-- gh-comment-id:2267263464 --> @antonym commented on GitHub (Aug 1, 2024): ProxyDHCP is already supported, if you drop a local-vars.ipxe in your local tftp root and set: `set use_proxydhcp_settings true` That will enable the proxydhcp code path: https://github.com/netbootxyz/netboot.xyz/blob/development/roles/netbootxyz/templates/disks/netboot.xyz.j2#L31
Author
Owner

@lars18th commented on GitHub (Aug 1, 2024):

Wow, that's great! I'll try it.

However, perhaps it has sense to add this description in the main README.md because this information has no visibility. And also I suggest to include a toggle in the UI to enable it, instead of a manual setting. Do you agree with that?

<!-- gh-comment-id:2267263465 --> @lars18th commented on GitHub (Aug 1, 2024): Wow, that's great! I'll try it. However, perhaps it has sense to add this description in the main README.md because this information has no visibility. And also I suggest to include a toggle in the UI to enable it, instead of a manual setting. Do you agree with that?
Author
Owner

@antonym commented on GitHub (Aug 4, 2024):

Moving to docs project to make a note to write some.

<!-- gh-comment-id:2267263466 --> @antonym commented on GitHub (Aug 4, 2024): Moving to docs project to make a note to write some.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/netboot.xyz-docs#20
No description provided.