20260417 DNS实验

张开发
2026/4/18 1:44:21 15 分钟阅读

分享文章

20260417 DNS实验
一、DNS实验1.1 实验规划用centos7模板克隆2台安装下表配置主机名IP地址主机名主机IP作用dns-server10.1.8.10/24DNS服务器dns-client10.1.8.11/24DNS客户端1.2 安装 BIND通过安装bind软件包来安装BIND。 名称服务器本身作为named服务运行。 bind包将HTML和PDF格式的BIND文档在安装在/usr/share/doc/bind/目录[rootdns-server ~ 09:50:12]# yum install -y bind bind-utils1.3 实验配置[rootdns-server ~ 09:51:00]# vim /etc/named.conf......options{# 修改listen-onlisten-on port53{127.0.0.1;10.1.8.10;};......# 修改allow-queryallow-query{any;};};......1.3.1 配置 zone示例以下named.conf块将服务器配置为承载laogao.cloud及其相应的反向查找区域8.1.10.inaddr.arpa的主要区域文件。[rootdns-server ~ 09:51:00]# vim /etc/named.conf.............# 最后添加以下内容zone.IN{typehint;filenamed.ca;};include/etc/named.rfc1912.zones;include/etc/named.root.key;zonejiang.cloudIN{typemaster;filejiang.cloud.zone;};zone8.1.10.in-addr.arpaIN{typemaster;file10.1.8.zone;};配置说明type指定服务器角色。file指定相对路径名。 相对路径由 options 块中的 directory 指令设置。1.3.2 创建区域文件辅助区域文件应保存在/var/named/slaves中。辅助服务器启动时会将其缓存的区域版本与主服务器上的当前版本进行比较如果区域文件版本是最新的则使用该区域文件 如果区域文件版本不是最新的或文件不存在则named执行区域传输并将结果缓存在该文件中。BIND 应该能够读取这些区域文件但不能写入它们。 这些文件应归root用户和named组所有以便守护程序在某种程度上受到损害时不能更改它们。[rootdns-server ~ 09:56:11]# touch /var/named/jiang.cloud.zone /var/named/10.1.8.zone[rootdns-server ~10:09:26]# chmod 640 /var/named/*.zone[rootdns-server ~10:09:39]# chown root:named /var/named/*.zone# 如果系统开启了selinux功能执行下面命令设置文件标签[rootdns-server ~10:10:18]# chcon -t named_zone_t /var/named/*.zone1.3.3 添加记录正向记录将名称映射到IP地址和其他记录。该区域文件必须具有SOA记录。每个公用名称服务器的NS记录该区域的其他AAAAACNAMEMXSRV和TXT记录。示例laogao.cloud域# 参考named.localhost[rootdns-server ~10:10:18]# cat /var/named/named.localhost /var/named/jiang.cloud.zone[rootserver ~10:10:18]# vim /var/named/jiang.cloud.zone$TTL3600 IN SOA dns.jiang.cloud. root.jiang.cloud.(0;serial 1D;refresh 1H;retry 1W;expire 3H);minimum IN NS dns.jiang.cloud. dns IN A10.1.8.10 server IN A10.1.8.10 student IN CNAME client.jiang.cloud. client IN A10.1.8.11 www30IN A10.1.8.200 IN MX10mail.jiang.cloud. mail IN A10.1.8.253[rootdns-server ~10:43:14]# cat /var/named/named.loopback /var/named/10.1.8.zone[rootdns-server ~10:44:51]# vim /var/named/10.1.8.zone$TTL1D IN SOA dns.jiang.cloud. root.jiang.cloud.(0;serial 1D;refresh 1H;retry 1W;expire 3H);minimum IN NS dns.jiang.cloud.10IN PTR dns.jiang.cloud.10IN PTR server.jiang.cloud.11IN PTR client.jiang.cloud.11IN PTR student.jiang.cloud.200IN PTR www.jiang.cloud.253IN PTR mail.jiang.cloud.1.3.4 验证配置在重新加载或重新启动named之前应该验证/etc/named.conf文件和区域文件的语法。named-checkconf验证 /etc/named.conf。[rootdns-server ~10:52:47]# named-checkconf[rootdns-server ~10:52:50]# named-checkconf /media/backups/named.confnamed-checkzone zone zone-file通过zone-file验证zone。[rootdns-server ~10:53:52]# named-checkzone jiang.cloud /var/named/jiang.cloud.zonezone jiang.cloud/IN: loaded serial0OK启动服务器时应监视系统日志中是否有错误。 单个错误也可能会导致整个区域无法加载但是无法加载区域不会阻止后台驻留程序启动。因此除非我们在启动过程中监视系统日志否则很难弄清楚哪里错了。例如我们可以查看与named.service单位文件有关的systemd的日志输出[rootdns-server ~ 10:54:08]# journalctl -f _SYSTEMD_UNITnamed.service -- Logs begin at Fri 2026-04-17 09:05:32 CST. --1.3.5 运行 BIND# 启用并启动服务[rootdns-server ~10:55:04]# systemctl enable named --nowCreated symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service.[rootdns-server ~10:55:15]# systemctl status named● named.service - Berkeley Internet Name Domain(DNS)Loaded: loaded(/usr/lib/systemd/system/named.service;enabled;vendor preset: disabled)Active: active(running)since Fri2026-04-1710:55:15 CST;8s ago# 设置防火墙[rootdns-server ~10:55:24]# firewall-cmd --add-servicednsFirewallD is not running[rootdns-server ~10:55:42]# firewall-cmd --add-servicedns --permanentFirewallD is not running1.4 客户端测试1.4.1方式1配置dns# 配置dns[rootdns-client ~ 09:28:01]# nmcli connection modify ens33 ipv4.dns 10.1.8.10 autoconnect yes[rootdns-client ~10:56:23]# nmcli connection up ens33Connection successfully activated(D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2)# ping 测试[rootdns-client ~10:56:31]# ping dns.jiang.cloudPING dns.jiang.cloud(10.1.8.10)56(84)bytes of data.64bytes from server.jiang.cloud(10.1.8.10):icmp_seq1ttl64time0.311ms64bytes from server.jiang.cloud(10.1.8.10):icmp_seq2ttl64time0.895ms64bytes from server.jiang.cloud(10.1.8.10):icmp_seq3ttl64time0.840ms64bytes from server.jiang.cloud(10.1.8.10):icmp_seq4ttl64time0.462ms64bytes from server.jiang.cloud(10.1.8.10):icmp_seq5ttl64time0.551ms64bytes from server.jiang.cloud(10.1.8.10):icmp_seq6ttl64time0.724ms ^C --- dns.jiang.cloudpingstatistics ---6packets transmitted,6received,0% packet loss,time5004ms rtt min/avg/max/mdev0.311/0.630/0.895/0.209 ms[rootdns-client ~10:56:46]# ping student.jiang.cloudPING client.jiang.cloud(10.1.8.11)56(84)bytes of data.64bytes from student.jiang.cloud(10.1.8.11):icmp_seq1ttl64time0.029ms64bytes from student.jiang.cloud(10.1.8.11):icmp_seq2ttl64time0.080ms64bytes from student.jiang.cloud(10.1.8.11):icmp_seq3ttl64time0.067ms64bytes from student.jiang.cloud(10.1.8.11):icmp_seq4ttl64time0.071ms64bytes from student.jiang.cloud(10.1.8.11):icmp_seq5ttl64time0.078ms ^C --- client.jiang.cloudpingstatistics ---5packets transmitted,5received,0% packet loss,time4001ms rtt min/avg/max/mdev0.029/0.065/0.080/0.018 ms

更多文章