Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pieroproietti/etrick
A dhcp-proxy server: it releases next server and filename to boot computers in a LAN where a standard dhcp server is already present
https://github.com/pieroproietti/etrick
dhcp-proxy dhcp-server pxe
Last synced: 3 months ago
JSON representation
A dhcp-proxy server: it releases next server and filename to boot computers in a LAN where a standard dhcp server is already present
- Host: GitHub
- URL: https://github.com/pieroproietti/etrick
- Owner: pieroproietti
- Created: 2023-02-27T17:42:06.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-06-07T11:15:11.000Z (7 months ago)
- Last Synced: 2024-09-13T01:20:18.112Z (4 months ago)
- Topics: dhcp-proxy, dhcp-server, pxe
- Language: JavaScript
- Homepage: https://penguins-eggs.net
- Size: 170 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# etrick
Eggs use this DHCPD PROXY server to provide PXE boot information to the clients, it need the presence of a standard DHCPD server on the LAN, but You don't need to reconfigure it to add PXE fields.
This project started from the only working dhcpd proxy for nodejs I could find: FOG project [node-dhcproxy](https://github.com/FOGProject/node-dhcproxy).
After using it to implement a PXE server for eggs, I began to feel the need to have my own version and perhaps evolve it into a full PXE server.
So I decided to rewrite it in typescript, give a structure and start to use it for my project [penguins-eggs](https://github.com/pieroproietti/penguins-eggs).
There is still work to be done, though; it is functional but should undergo refactoring. In particular, I could not convert the main part - the proxy and server classes - into typescript.
You can find an example of use in the [pxe.ts](https://github.com/pieroproietti/penguins-eggs/blob/master/src/classes/pxe.ts) class of penguins-eggs.
Note the lines:
```
// @ts-ignore
import etrick from 'etrick
```And lines:
```
/**
*
* @param dhcpOptions
*/
dhcpStart(dhcpOptions: IDhcpOptions) {
new etrick(dhcpOptions)
}
```The definition of types can be found in [i-pxe.ts](https://github.com/pieroproietti/penguins-eggs/blob/master/src/interfaces/i-pxe.ts)
Reference:
* [node-dhcproxy](https://github.com/FOGProject/node-dhcproxy) node-dhcproxy is based on [node-dhcpd](https://github.com/glaszig/node-dhcpd)