Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pieroproietti/node-proxy-dhcpd
https://github.com/pieroproietti/node-proxy-dhcpd
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/pieroproietti/node-proxy-dhcpd
- Owner: pieroproietti
- License: mit
- Created: 2024-06-07T13:47:10.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-06-08T15:22:31.000Z (7 months ago)
- Last Synced: 2024-09-12T21:08:08.920Z (4 months ago)
- Language: JavaScript
- Size: 58.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# node-dhcpd-proxy
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.
Reference:
* [node-dhcproxy](https://github.com/FOGProject/node-dhcproxy)
# Working tsconfig.json
```
{
"compilerOptions": {
"allowJs": true,
"importHelpers": true,
"esModuleInterop": true,
"module": "ES2020", // utilizza i moduli ES6
"moduleResolution": "node",
"outDir": "dist",
"rootDir": "src",
"strict": true,
"lib": [
"ES2020", // utilizza le funzionalità ES6
"DOM"
],
"target": "ES2020", // compila per ES6
"resolveJsonModule": true,
"baseUrl": ".", // aggiunto per supportare la risoluzione dei moduli
"paths": { // aggiunto per supportare la risoluzione dei moduli
"*": [
"node_modules/*",
"src/types/*"
]
},
},
"include": [
"src/**/*",
]
}
```