DNS/DHCP 服务器(Dnsmasq)
(01)安装Dnsmasq
Dnsmasq:安装
安装 Dnsmasq,它是轻量级的 DNS 转发器和 DHCP 服务器软件。
[1] 安装 Dnsmasq。
root@dlp:~# apt -y install dnsmasq
[2] 配置 Dnsmasq。
root@dlp:~# vi /etc/dnsmasq.conf
# line 19 : uncomment
# never forward plain names
domain-needed
# line 21 : uncomment
# never forward addresses in the non-routed address spaces
bogus-priv
# line 53 : uncomment
# query with each server strictly in the order in resolv.conf
strict-order
# line 67 : add if you need
# query the specific domain name to the specific DNS server
# the example follows means query [server.education] domain to the [10.0.0.10] server
server=/server.education/10.0.0.10
# line 116 : uncomment and specify network interfaces to bind
interface=enp1s0
# line 134 : uncomment
bind-interfaces
# line 145 : uncomment to add domain name on hostname automatically
expand-hosts
# line 155 : add to set domain name
domain=srv.world
# change the link according to man page of systemd-resolved in order to avoid conflicting on 53
root@dlp:~# ln -fs /run/systemd/resolve/resolv.conf /etc/resolv.conf
root@dlp:~# systemctl restart dnsmasq systemd-resolved
[3] 对于 DNS 记录,请将其添加到 [/etc/hosts] 中。然后,Dnsmasq 将回答客户的查询。
root@dlp:~# vi /etc/hosts
# add DNS entries
10.0.0.30 dlp.srv.world dlp
10.0.0.31 www.srv.world www
root@dlp:~# systemctl reload dnsmasq
[4] 验证网络中客户端主机的名称或地址解析。
root@desktop:~#
vi /etc/netplan/01-netcfg.yaml
# change DNS setting to refer to Dnsmasq Server
nameservers:
addresses: [10.0.0.30]
root@desktop:~#
netplan apply
root@desktop:~#
grep nameserver /run/systemd/resolve/resolv.conf
nameserver 10.0.0.30
root@desktop:~#
dig dlp.srv.world.
root@desktop:~#
dig -x 10.0.0.30
; > DiG 9.18.24-0ubuntu5-Ubuntu > dlp.srv.world.
;; global options: +cmd
;; Got answer:
;; ->>HEADER
; > DiG 9.18.24-0ubuntu5-Ubuntu > -x 10.0.0.30
;; global options: +cmd
;; Got answer:
;; ->>HEADER
(02)配置DHCP服务器
Dnsmasq:配置DHCP服务器
在 Dnsmasq 上启用集成 DHCP 功能并配置 DHCP 服务器。
[1] 配置 Dnsmasq。
root@dlp:~# vi /etc/dnsmasq.conf
# line 168 : add : range of IP address to lease and term of lease
dhcp-range=10.0.0.200,10.0.0.250,12h
# line 345 : add : define default gateway
dhcp-option=option:router,10.0.0.1
# line 354 : add : define NTP, DNS, server and subnetmask
dhcp-option=option:ntp-server,10.0.0.10
dhcp-option=option:dns-server,10.0.0.10
dhcp-option=option:netmask,255.255.255.0
root@dlp:~# systemctl restart dnsmasq
[2] 没关系。
在任何客户端计算机上配置 DHCP 客户端并验证其是否正常工作。