Comments (6)
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.
Some documentation would be nice. I don't have the first clue how to configure PXE booting with staticDHCPd.
from staticdhcpd.
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.
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.
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.
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)
- DHCPv4 server support for Rapid Commit HOT 6
- Redis extention or nosql db layer
- Support for relay agents requiring Option 82 HOT 2
- Publishing project to PIP? HOT 3
- support for Database INSERT for unknownMAC HOT 3
- IPv6 support? HOT 2
- How can I handleUnknownMAC? I want my server should allocate IP to the client even if mac address of client is not in INI or database. HOT 5
- Doesn't support python 3 (and doesn't document that) HOT 1
- Can staticdhcpd make a lease table from watching DHCP traffic? HOT 2
- adding extentions HOT 2
- AttributeError: 'NoneType' object has no attribute 'split' HOT 7
- TypeError: setsockopt() argument 3 must be string or read-only buffer, not None HOT 20
- staticDHCPd version 2.0.0-rc1 doesn't start HOT 3
- Cannot load mysql.sql on MariaDB 10.3.17 HOT 3
- Error in the rfc3925_125_decode function HOT 1
- dev null dup2 Bad file descriptor HOT 1
- Need to Port to Python3 HOT 22
- Documentation HOT 2
- DHCPRENEW support HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from staticdhcpd.