搭建局域網DNS解析,具體實現功能如下圖
注:該測試只有正向解析
項目流程圖
1. 項目前準備關閉防火墻和SELINUX,配置網絡
①開啟8臺機器
②關閉防火墻及selinux
iptables -vnL #查看防火墻狀態
systemctl stop firewall #關閉防火墻
getenforce #查看SELinux狀態
setenforce 0 #禁用SELinux
③示例配置網絡后面依此類推,不再演示
vim > /etc/sysconfig/network-scripts <<EOF
DEVICE=ens37
ONBOOT=yes
BOOTPROTO=static
IPADDR=172.20.29.201
PREFIX=16
DNS1=114.114.114.114
DNS2=1.1.1.1
GATEWAY=172.20.0.1
EOF
上述基本環境搭建完成
2. 配置web網站信息
① 安裝httpd包
配置172.20.29.201機器
yum clean all #清除yum緩存
yum install httpd -y #安裝httpd服務包
cat > /var/www/html/index.html <<EOF #添加一個頁面顯示作為查看測試結果
welcome magedu.com web1
EOF
systemctl start httpd #開啟httpd服務
systemctl enable httpd #開機自動啟動httpd服務
② 打開網頁查看web1能否訪問
curl 172.20.29.201
① 安裝httpd包
配置172.20.29.202機器
yum clean all #清除yum緩存
yum install httpd -y #安裝httpd服務包
cat > /var/www/html/index.html <EOF #添加一個頁面顯示作為查看測試結果
welcome magedu.com web2
EOF
systemctl start httpd #開啟httpd服務
systemctl enable httpd #開機自動啟動httpd服務
② 打開網頁查看web2能否訪問
curl 172.20.29.201
到此,web網站基本搭建成功
3. 配置DNS主服務器
①安裝bind包
配置172.20.29.203機器為DNS主服務器
yum clean all #清除yum緩存
yum install bind -y #安裝bind包
②修改DNS主配置文件
vim /etc/named.conf #修改主配置文件
options {
listen-on port 53 { localhost; }; #修改監聽地址為本機所有地址
#修改為默認所有人通過域名訪問,解析庫文件對應的單條A記錄
allow-query { any; };
#指定204IP才能查詢解析本機所有的A記錄
allow-transfer {172.20.29.204;};
}
vim /etc/named.rfc1912.zone #修改主配置文件
zone "magedu.com" IN { #添加magedu.com域
type master; #定于域類型為主域
file "magedu.com.zone"; #定義magedu.com域的解析庫文件
};
③添加解析庫文件
cat > /var/named/magedu.com.zone <<EOF
$TTL 1D #定義服務器響應時間
#定義主域名,郵件服務器域名,(版本號 拉取數據時間,拉取數據失敗重試時間,備用DNS服務器緩存數據有效期,錯誤緩存存放時間)
@ IN SOA dns1.magedu.com. admin.magedu.com. ( 1 1D 2H 3D 1H )
NS dns1 #定義DNS1服務器名稱
NS dns2 #定義DNS2服務器名稱
dns1 A 172.20.29.203 #解析DNS1為主服務器地址
dns2 A 172.20.29.204 #解析DNS2為從服務器地址
websrv A 172.20.29.201 #解析2個web服務器實現負載均衡
websrv A 172.20.29.202
www CNAME websrv #定義別名
EOF
④修改解析庫文件權限
chgrp named magedu.com.zone #修改屬組為named
chmod 640 magedu.com.zone #修改權限為640
修改完成后如下:
-rw-r----- 1 root named 201 Jun 1 21:16 magedu.com.zone
⑤開啟,調試服務
systemctl start named #開啟DNS服務
systemctl enable named #開機自動啟動DNS服務
systemctl status named #查看DNS服務狀態是否有錯誤
4. 配置DNS從服務器
①安裝bind包
配置172.20.29.204機器為DNS從服務器
yum clean all #清除yum緩存
yum install bind -y #安裝bind包
②修改DNS主配置文件
vim /etc/named.conf #修改主配置文件
options {
listen-on port 53 { localhost; }; #修改監聽地址為本機所有地址
#修改為默認所有人通過域名訪問,解析庫文件對應的單條A記錄
allow-query { any; };
#不允許任何端口解析本機所有的A記錄
allow-transfer {none;};
}
vim /etc/named.rfc1912.zone #修改主配置文件
zone "magedu.com" IN { #添加magedu.com域
type slave; #類型定義為從域
masters { 172.20.29.203;}; #指定主域IP地址
file "slaves/magedu.com.zone.slave"; #定義magedu.com域的解析庫文件
};
③開啟,調試服務
systemctl start named #開啟DNS服務
systemctl enable named #開機自動啟動DNS服務
systemctl status named #查看DNS服務狀態是否有錯誤
④查看從DNS服務器是否從主DNS服務器拉取解析庫文件
ls -l /var/named/slaves/
同步完成后如下:
-rw-r--r-- 1 named named 377 Jun 1 21:37 magedu.com.zone.slave
5. 配置COM服務器
①安裝bind包
配置172.20.29.205機器為com服務器
yum clean all #清除yum緩存
yum install bind -y #安裝bind包
②修改DNS主配置文件
vim /etc/named.conf #修改主配置文件
options {
listen-on port 53 { localhost; }; #修改監聽地址為本機所有地址
#修改為默認所有人通過域名訪問,解析庫文件對應的單條A記錄
allow-query { any; };
}
dnssec-enable no; #關閉安全協議功能
dnssec-validation no;
vim /etc/named.rfc1912.zone #修改主配置文件
zone "com" IN { #添加com域
type master; #定義類型為主域
file "com.zone"; #定義com.com域的解析庫文件
};
③添加解析庫文件
cat > /var/named/com.zone <<EOF
$TTL 1D #定義服務器響應時間
#定義主域名,郵件服務器域名,(版本號 拉取數據時間,拉取數據失敗重試時間,備用DNS服務器緩存數據有效期,錯誤緩存存放時間)
@ IN SOA dns.com. admin.com. ( 1 1D 2H 3D 1H )
NS dns1 #定義DNS1服務器名稱
magedu NS dns2 #定義DNS2服務器名稱
magedu NS dns3 #定義DNS3務器名稱
dns1 A 172.20.29.205 #解析DHS1為本機地址
dns2 A 172.20.29.203 #解析DHS2為主DNS服務器
dns3 A 172.20.29.204 #解析DHS3為從DNS服務器
EOF
④修改解析庫文件權限
chgrp named com.zone #修改屬組為named
chmod 640 com.zone #修改權限為640
修改完成后如下:
-rw-r----- 1 root named 167 Jun 1 22:02 com.zone
⑤開啟調試服務
systemctl start named #開啟DNS服務
systemctl enable named #開機自動啟動DNS服務
systemctl status named #查看DNS服務狀態是否有錯誤
6. 配置根域
①安裝bind包
配置172.20.29.206機器為根服務器
yum clean all #清除yum緩存
yum install bind -y #安裝bind包
②修改DNS主配置文件
vim /etc/named.conf #修改主配置文件
options {
listen-on port 53 { localhost; }; #修改監聽地址為本機所有地址
#修改為默認所有人通過域名訪問,解析庫文件對應的單條A記錄
allow-query { any; };
}
dnssec-enable no; #關閉安全協議功能
dnssec-validation no;
刪除/etc/named.conf里定義的根記錄,定義本機為根
#zone "." IN {
# type hint;
# file "named.ca";
#};
vim /etc/named.rfc1912.zone #修改主配置文件
zone "." IN { #添加根域
type master; #定義根域為主服務器
file "root.zone"; #定義com.com域的解析庫文件
};
③添加解析庫文件
cat > /var/named/root.zone <<EOF
$TTL 1D #定義服務器響應時間
#定義主域名,郵件服務器域名,(版本號 拉取數據時間,拉取數據失敗重試時間,備用DNS服務器緩存數據有效期,錯誤緩存存放時間)
@ IN SOA dns1. admin. ( 1 1D 2H 3D 1H )
NS dns1 #定義DNS1服務器名稱
com NS dns2 #定義DNS2服務器名稱
dns1 A 172.20.29.206 #解析DHS2為根域服務器
dns2 A 172.20.29.205 #解析DHS2為com服務器
EOF
④修改解析庫文件權限
chgrp named root.zone #修改屬組為named
chmod 640 root.zone #修改權限為640
修改完成后如下:
-rw-r----- 1 root named 167 Jun 1 22:02 com.zone
⑤開啟,調試服務
systemctl start named #開啟DNS服務
systemctl enable named #開機自動啟動DNS服務
systemctl status named #查看DNS服務狀態是否有錯誤
7. 配置電信服務器
①安裝bind包
配置172.20.29.207機器為轉發服務器
yum clean all #清除yum緩存
yum install bind -y #安裝bind包
②修改DNS主配置文件
vim /etc/named.conf #修改主配置文件
options {
listen-on port 53 { localhost; }; #修改監聽地址為本機所有地址
#修改為默認所有人通過域名訪問,解析庫文件對應的單條A記錄
allow-query { any; };
}
dnssec-enable no;
dnssec-validation no;
③修改根域為206
vim etc/named/name.ca
④開啟,調試服務
systemctl start named #開啟DNS服務
systemctl enable named #開機自動啟動DNS服務
systemctl status named #查看DNS服務狀態是否有錯誤
8. 用戶訪問電信服務器查看結果
①修改DNS指向電信服務器
cat > /etc/resolv.conf <<EOF
search localdomain
nameserver 172.20.29.207
EOF
②測試訪問結果
curl www.magedu.com
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/100292