实验1:DNS正向服务器

本文最后更新于:2023年12月5日 晚上

实验目的

搭建 DNS 正向主服务器,实现 web 服务器基于 FQDN 的访问

环境要求

需要三台主机
DNS 服务端:10.0.0.175
web 服务器:10.0.0.8
DNS 客户端:10.0.0.57

提前准备

关闭 SElinux
关闭防火墙
时间同步

实现步骤

1. 在 DNS 服务端安装 bind

[root@centos8 ~]$yum -y install bind

2. 修改 bind 配置文件

修改配置文件 /etc/named.conf

#注释掉下面两行
// listen-on port 53 { 127.0.0.1; };
// allow-query { localhost; };

修改配置文件 vim /etc/named.rfc1912.zones

#加上下面内容, IN 可以省略
zone "magedu.local" IN {
    type master;
    file "magedu.local.zone";
};

3. DNS 区域数据库文件

在主目录(默认是/var/named/)下新建 DNS 区域数据库文件 magedu.local.zone

#如果没有加-p选项,需要修改所有者或权限。chgrp named magedu.local.zone
[root@centos8 ~]$cd /var/named/
[root@centos8 named]$cp -p named.localhost magedu.local.zone
[root@centos8 named]$ll
total 32
drwxrwx--- 2 named named 4096 Sep 17 22:55 data
drwxrwx--- 2 named named 4096 Sep 17 21:49 dynamic
-rw-r----- 1 root  named  152 Jul  7 22:14 magedu.local.zone
-rw-r----- 1 root  named 2253 Jul  7 22:14 named.ca
-rw-r----- 1 root  named  152 Jul  7 22:14 named.empty
-rw-r----- 1 root  named  152 Jul  7 22:14 named.localhost
-rw-r----- 1 root  named  168 Jul  7 22:14 named.loopback
drwxrwx--- 2 named named 4096 Jul  7 22:14 slaves
[root@centos8 named]$vim magedu.local.zone
# 修改magedu.local.zone为以下内容:
$TTL 1D
@  IN  SOA  master  admin.magedu.org. (  ;master 会自动补全 master.magedu.local
         0 ; serial
         1D ; refresh
         1H ; retry
         1W ; expire
         3H ) ; minimum
  NS   master
master  A   10.0.0.175
www  A   10.0.0.8

4. 检查配置文件和数据库文件格式,并启动服务

[root@centos8 named]$named-checkconf
[root@centos8 named]$named-checkzone magedu.local.zone /var/named/magedu.local.zone
zone magedu.local.zone/IN: loaded serial 0
OK
# systemctl start named 第一次启动服务
# rndc reload 不是第一次启动服务
[root@centos8 named]$rndc reload
server reload successful

5. 实现 WEB 服务

在 web 服务器 10.0.0.8 执行以下命令:

echo 'www.magedu.local' > /var/www/html/index.html

6. 在客户端实现测试

# 添加DNS从服务器ip到/etc/resolv.conf
[root@centos7 ~]$cat /etc/resolv.conf
# Generated by NetworkManager
search magedu.org
nameserver 10.0.0.175

# dig
[root@centos7 ~]$dig www.magedu.local

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-16.P2.el7_8.6 <<>> www.magedu.local
;; global options: +cmd
;; Got answer:
;; WARNING: .local is reserved for Multicast DNS
;; You are currently testing what happens when an mDNS query is leaked to DNS
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48252
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.magedu.local.              IN      A

;; ANSWER SECTION:
www.magedu.local.       86400   IN      A       10.0.0.8

;; AUTHORITY SECTION:
magedu.local.           86400   IN      NS      master.magedu.local.

;; ADDITIONAL SECTION:
master.magedu.local.    86400   IN      A       10.0.0.175

;; Query time: 1 msec
;; SERVER: 10.0.0.175#53(10.0.0.175)
;; WHEN: Thu Sep 17 19:11:55 CST 2020
;; MSG SIZE  rcvd: 98

# 能ping通
[root@centos7 ~]$ping www.magedu.local
PING www.magedu.local (10.0.0.8) 56(84) bytes of data.
64 bytes from 10.0.0.8 (10.0.0.8): icmp_seq=1 ttl=64 time=0.549 ms
64 bytes from 10.0.0.8 (10.0.0.8): icmp_seq=2 ttl=64 time=0.664 ms
64 bytes from 10.0.0.8 (10.0.0.8): icmp_seq=3 ttl=64 time=0.838 ms
^C
--- www.magedu.local ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 0.549/0.683/0.838/0.122 ms

# 能访问
[root@centos7 ~]$curl www.magedu.local
www.magedu.local

查看 web 服务器查的 http 访问记录:

[root@centos8 httpd]$cat /dev/null > access_log
[root@centos8 httpd]$tail -f access_log
10.0.0.57 - - [17/Sep/2020:07:47:55 -0400] "GET / HTTP/1.1" 200 17 "-" "curl/7.29.0"

实验1:DNS正向服务器
http://blog.lujinkai.cn/运维/DNS/实验1:DNS正向服务器/
作者
像方便面一样的男子
发布于
2021年2月4日
更新于
2023年12月5日
许可协议