描述:使用一台装有Ubuntu 20.0.4 desktop版本的主机和一台装有Windows 10的主机进行实验,其中装有Ubuntu的主机作为DNS和DHCP服务器。
bind9可作为DNS服务器,它的主配置文件为/etc/bind/named.conf,其内部包含了其他配置文件:
- named.conf.options:指定数据文件目录,指定转发DNS服务器ip地址等。
- named.conf.local:创建正向查找区域和反向查找区域。
- named.conf.default-zones:bind9安装好默认的正向查找区域和反向查找区域文件,本实验中不用管。
除了这些以外还有其他配置文件,但本次实验都不会使用到。
isc-dhcp-server可充当dhcp服务器,它最主要的是两个配置文件,分别是:
- /etc/dhcp/dhcpd.conf:配置dhcp地址池以及子网掩码等信息的文件。
- /etc/dhcp/default/isc-dhcp-server:配置接口的文件,就是DHCP服务器哪个接口用作DHCP请求。
DNS安装和配置具体步骤:
(1)准备工作:设置Ubuntu ip地址为172.18.8.12,子网掩码为255.255.255.0,设置Windows10的ip地址为172.18.8.10,子网掩码为255.255.255.0,用交叉线连接两台主机。安装bind9:apt install bind9。
(2)设置bind9的默认数据文件位置:vi /etc/bind/named.conf.options,directory默认为/var/cache/bind,可以不用更改。
(3)创建正向查找区域和反向查找区域:vi /etc/bind/named.conf.local,添加一个正向zone和反向zone,如下图所示:
(4)在/var/cache/bind下创建db.dns.net,在/var/cache/bind/reverse下创建db.172.18.8,对应的文件内容如下图所示:
无法为别名创建反向查找的PTR
(5)重启bind9以便更改的配置文件生效:输入service bind9 restart重启,然后在Ubuntu上用nslookup、dig、ping测试一下。
(6)在另一台主机上使用nslookup测试并使用wireshark抓包。
DHCP安装和配置具体步骤:
(1)配置接口:vi /etc/dhcp/default/isc-dhcp-server,更改为:
enp2s0是以太网卡名,使用ifconfig查看
(2)配置DHCP:vi /etc/dhcp/dhcpd.conf,更改为:
在本实验中,网关(routers)、广播地址(broadcast-address)以及域名没必要设置,上面这几项就够了。
(3)重启dhcp服务以便更改的配置生效:service isc-dhcp-server restart。
(4)抓包:在ip地址为172.18.8.10的主机上(Windows 10)使用ipconfig、ipconfig /release和ipconfig /renew来释放ip地址和获取ip地址,实验过程中用wireshark抓包。
写的比较简单,一方面是懒得写了,另一方面就是网上这方面的应该挺多的,我这就起一个借鉴的作用,如果遇到什么疑问可以和我私信交流。
添加一些需要注意的地方:
-
在创建正向查找区域和反向查找区域时,file的路径设置是很自由的,一个是相对路径(例如正向查找区域部分的file路径),它是/var/cache/bind的相对路径,/var/cache/bind可以在named.conf.options文件中更改,另一个就是绝对路径(例如反向查找区域部分的file)。
-
反向查找区域的名字一定要按着图中那么来,ip要倒着来,图中只有8.18.172而不是1.8.18.172或者其他,是因为子网掩码为255.255.255.0,可以定义更详细的反向查找区域,比如某一个ip地址。
-
在实验之前,请确保你让你的主机作为服务器了,vi /etc/resolv.conf ,然后注释最下面的两行记录
添加 search dns.net 和nameserver 172.18.8.12,上次写的时候忘记了这个关键的地方。 -
DNS正向查找和反向查找的配置文件一定还要注意,看图:
dns.net. 最后面的点一定要写,root那个也是一样的。 -
可以扩展一下,DNS还可以配置从服务器,是为了避免当主服务器宕机而没有服务器可用,需要改的地方分别是/etc/resolv.conf、/etc/bind/named.conf.local,前者需要加上从服务器的真实ip地址,至于是不是只需要在主服务器上加就不清楚了,可以去尝试一下,后者则是在查找区域内加字段,比如:
没有具体实验过,有条件的小伙伴可以去尝试一波。
暂时就没有其他东西了,以后碰到了会再添加。