Coder Social home page Coder Social logo

PXE? about staticdhcpd HOT 6 CLOSED

jsumners avatar jsumners commented on August 27, 2024
PXE?

from staticdhcpd.

Comments (6)

flan avatar flan commented on August 27, 2024

It does, but I've never actually had a PXE device myself, so everything has had to go through VirtualBox.

It's been a while since I last worked with it (my job is relatively networking-light these days), but I can try to help you with any configuration difficulties you may be having and try to make the documentation clearer based on the gap.

from staticdhcpd.

jsumners avatar jsumners commented on August 27, 2024

Some documentation would be nice. I don't have the first clue how to configure PXE booting with staticDHCPd.

from staticdhcpd.

flan avatar flan commented on August 27, 2024

Sorry, this got buried and I just noticed it again now.

http://static.uguu.ca/projects/staticDHCPd/doc/customisation/configuration.html#proxy-port-integer-none-default-none should be all you need to set to enable what's commonly referred to as PXE. I'll add that as a keyword to the section to make searching easier.

from staticdhcpd.

jsumners avatar jsumners commented on August 27, 2024

https://en.wikipedia.org/wiki/Preboot_Execution_Environment#Integration

So if I'm understanding correctly, staticDHCPd is relying on a separate DHCP server to be running on the port identified by PROXY_PORT. That separate server would provide the path to the boot file.

I was looking for support to configure DHCP options 66 and 67 -- https://tools.ietf.org/html/rfc2132 (sections 9.4 and 9.5).

from staticdhcpd.

flan avatar flan commented on August 27, 2024

No, it will provide service on that port if configured. If not, it leaves that port alone in case another server is providing ProxyDHCP support. (And because I don't believe it's a good idea to open ports unnecessarily)

If you want to use sname (or 68 -- the DHCP option is an alternative to the BOOTP field and many older/simpler clients will only check for the field) and file (or 67 -- same thing here), a separate TFTP server will be needed to actually serve the file.

To set these field values, define the function described at http://static.uguu.ca/projects/staticDHCPd/doc/customisation/scripting.html#loaddhcppacket . your client may be able to pull the required information out of a packet sent over the traditional port-67/68 exchange, but many explicitly check for a response on 4011, which you can determine and specifically configure based on the port argument passed to that function.

A more comprehensive explanation was written in the documentation a few years ago, when this was implemented: http://static.uguu.ca/projects/staticDHCPd/doc/commentary/setups.html#pxe-support
It might do a better job of explaining the process than my memory can do in this response right now.

from staticdhcpd.

flan avatar flan commented on August 27, 2024

The documentation, which includes full object references (in case you need to do anything unusual with the packet instances or something) is linked from the project's front page: https://github.com/flan/staticdhcpd#documentation

libpydhcpserver is where most types and constants exist, while staticDHCPd defines most of the processing logic.

from staticdhcpd.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.