Marcus Penate 141ac1c9dd Initial commit: DHCP whitelist service for direct link connections
Features:
- Docker-based DHCP server with MAC address whitelisting
- Binds to specific ethernet interface only
- NO DNS/gateway advertised (direct link only, not a router)
- Configurable network parameters (subnet, DHCP range, lease times)
- Systemd service integration for Arch/Manjaro
- Test environment with isolated network (172.20.0.0/24)
- Auto-configuration script to detect network settings
- Complete Makefile with management targets

Security:
- Only responds to whitelisted MAC addresses
- deny unknown-clients configuration
- Runs in Docker container for isolation

Configuration:
- Copy .example files to create your config
- interface.conf: Network interface to bind to
- whitelist.conf: Allowed MAC addresses
- network.conf: Network parameters (optional)
2025-08-27 20:46:29 -04:00

18 lines
342 B
Docker

FROM alpine:3.19
RUN apk add --no-cache \
dhcp \
bash \
iproute2
RUN mkdir -p /var/lib/dhcp /etc/dhcp /run/dhcp
COPY dhcp/entrypoint.sh /entrypoint.sh
COPY dhcp/dhcpd.conf.template /etc/dhcp/dhcpd.conf.template
RUN chmod +x /entrypoint.sh && \
touch /var/lib/dhcp/dhcpd.leases
EXPOSE 67/udp
ENTRYPOINT ["/entrypoint.sh"]