Merge in DNS/adguard-home from 4863-fix-dhcp-request to master
Closes #4863.
Squashed commit of the following:
commit f8872015e315eab3b2ce0249e552d12cbcf72f63
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date: Tue Aug 30 20:34:35 2022 +0300
dhcpd: imp code
commit b63c5d98c2055c3a3b76ff47737551840409f324
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date: Tue Aug 30 20:19:22 2022 +0300
dhcpd: fix deadlock
commit 5c03b54a86ab05efde9716faef60b84ecab01d19
Merge: f076cf8f 8733f55c
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date: Tue Aug 30 19:12:27 2022 +0300
Merge branch 'master' into 4863-fix-dhcp-request
commit f076cf8fc13944613b7127aac86ca78f68009f93
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date: Tue Aug 30 19:08:04 2022 +0300
dhcpd: imp code, names
commit a09540b6db6b86b80b8eb84c08187bfd9f960190
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date: Tue Aug 30 17:28:39 2022 +0300
dhcpd: imp code, docs
commit 38b12235509aaf55fa130f820213410b6b3022bb
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date: Tue Aug 30 16:42:32 2022 +0300
dhcpd: imp docs more
commit ff07c2f90f097754beb736fd5bd5cafc337ac65c
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date: Tue Aug 30 16:41:42 2022 +0300
dhcpd: fix docs
commit fafbc2ec2317f2320d8e1db167a1ae6c1c7c3790
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date: Tue Aug 30 16:35:42 2022 +0300
dhcpd: imp code
commit 9fe30190a7f125fd640b58e17661a4c33c078eba
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date: Tue Aug 30 15:00:56 2022 +0300
all: imp chlog
commit 1067fe95df5cb2252d1b9b70d2f3f8463997aea1
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date: Tue Aug 30 14:54:03 2022 +0300
dhcpd: log changes
commit 20de395c2bdcfb8e0554bb1c45385c15d617be65
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date: Tue Aug 30 14:49:58 2022 +0300
dhcpd: impl rfc 2131 for req
DHCP server
Contents:
Test setup with Virtual Box
To set up a test environment for DHCP server you need:
- Linux host machine
- Virtual Box
- Virtual machine (guest OS doesn't matter)
Configure client
-
Install Virtual Box and run the following command to create a Host-Only network:
$ VBoxManage hostonlyif createYou can check its status by
ip acommand.You can also set up Host-Only network using Virtual Box menu:
File -> Host Network Manager... -
Create your virtual machine and set up its network:
VM Settings -> Network -> Host-only Adapter -
Start your VM, install an OS. Configure your network interface to use DHCP and the OS should ask for a IP address from our DHCP server.
-
To see the current IP address on client OS you can use
ip acommand on Linux oripconfigon Windows. -
To force the client OS to request an IP from DHCP server again, you can use
dhclienton Linux oripconfig /releaseon Windows.
Configure server
-
Edit server configuration file 'AdGuardHome.yaml', for example:
dhcp: enabled: true interface_name: vboxnet0 dhcpv4: gateway_ip: 192.168.56.1 subnet_mask: 255.255.255.0 range_start: 192.168.56.2 range_end: 192.168.56.2 lease_duration: 86400 icmp_timeout_msec: 1000 options: [] dhcpv6: range_start: 2001::1 lease_duration: 86400 ra_slaac_only: false ra_allow_slaac: false -
Start the server
./AdGuardHomeThere should be a message in log which shows that DHCP server is ready:
[info] DHCP: listening on 0.0.0.0:67