Arduino + Ethernet shield può fare da server dhcp

certo, il DHCP si basa sull'UDP che è supportato dall'ethernet shield. Il resto credo tu lo debba fare a mano, ma non è troppo difficile se non parti da 0.