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

Home Page:https://penguins-eggs.net

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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.

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.

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 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

Reference:

About

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://penguins-eggs.net


Languages

Language:JavaScript 53.5%Language:TypeScript 46.5%