1) Configure the network interface to give a static IP address to the DHCP server
Edit the file /etc/network/interfaces
2) Use the command sudo apt-get install isc-dhcp-server in the terminal to install DHCP.
3) For the DHCP to assign Ipv4 addresses edit the file /etc/dhcp/dhcpd.conf and provide the range of address you want to the DHCP server to assign.
4) For ipv6 address, create a new file dhcpd6.conf and then configure the range of ipv6 addresses which needs to be assigned. The file should be created in /etc/dhcp/dhcpd6.conf
5) For ipv6, edit the file /etc/sysctl.conf and provide the below configurations. net.ipv6.conf.all.forwarding=1 net.ipv6.conf.all.autoconf=1 net.ipv6.conf.all.accept_ra=1 6) Enter the below commands to enable the configurations made above. sudo sysctl -w net.ipv6.conf.all.autoconf=1 sudo sysctl -w net.ipv6.conf.all.accept_ra=1 sudo sysctl -w net.ipv6.conf.all.forwarding=1
7) Install the router advertisement daemon or radvd by using the command
Sudo apt-get install radvd
8) Create file /etc/radvd.conf and put the internal interface and prefix there.
9) Now restart all the service using the commands
Sudo /etc/init.d/networking restart
Sudo /etc/init.d/radvd restart
Sudo /etc/init.d/isc-dhcp-server restart
Sudo /etc/init.d/isc-dhcp-server6 restart
10) Also edit the firewall to allow ipv6. The file to be edited is /etc/default/ufw and set the ipv6 to yes.
Testing:
1) Connect a client in the same network as the DHCP server. The server will assign IP address to the client.
Screenshot of the client’s IP address assigned by the DHCP server
Screenshot the DHCP server system logs showing the DHCP request and response transactions
Screenshot of the dhcp.leases file for the DHCP server showing the leased ip addresses