1. 安装 bind 服务
VMware 挂载光盘
mount /dev/sr0 /mnt
cd /mnt/Packages && find ./ -name "bind*" #bind 是安装包,服务名叫 named
rpm -ivh bind* # rpm 装的话可能有需要的依赖包,我们直接 yum 装吧yum -y install bind-chroot
systemctl status named
rpm -qc bind #查看配置文件
2. 在 bind 服务程序中有三个重要的配置文件
主配置文件(/etc/named.conf):主要用来定义 bind 服务程序的运行
区域配置文件(/etc/named.rfc1912.zone):用来保存域名和 IP 地址对应关系的所在位置
数据配置文件目录(/var/named):用来保存域名和 IP 地址真实的对应关系的数据配置文件
3. DNS 正反解析配置
在 DNS 域名解析服务中,正向解析是指根据域名(主机名)查找到对应的 IP 地址。
(1) 修改主配置文件 /etc/named.conf
vim /etc/named.conf
# 端口监听记录不想设所有主机的话可以使用本机 IP
(2) 修改区域配置文件 /etc/named.rfc1912.zones
.................//正向解析配置
zone "linuxprobe.com" IN {
type master;
file "linuxprobe.com.zone";
allow-update { none; };
};
zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
type master;
file "named.loopback";
allow-update { none; };
};
//反向解析配置
zone "10.168.192.in-addr.arpa" IN {
type master;
file "linuxprobe.com.zone.local";
allow-update { none; };
}; ...................
#注意自己的网段
#做正反解析的话只需要这两段,可将该文件备份,另创一个只有这两段的文件,看起来简洁一点
(3) 编辑数据配置文件
#从 /var/named 目录中复制正反解析模板文件,在复制时加上 -p/-a 参数,保留原始文件的权限等信息
[root@c7-1 ~]#cd /var/named
[root@c7-1 /var/named]#ls
chroot data dynamic named.ca named.empty named.localhost named.loopback slaves
[root@c7-1 /var/named]#cp -a named.localhost linuxprobe.com.zone #正向解析数据配置文件
[root@c7-1 /var/named]#cp -a named.loopback linuxprobe.com.zone.local #反向解析数据配置文件
[root@c7-1 /var/named]#ls #正反解析数据配置文件所属用户和组必须为 root named
[root@c7-1 /var/named]#ls
data linuxprobe.com.zone named.ca named.localhost slaves
dynamic linuxprobe.com.zone.local named.empty named.loopback
#注意编写数据中心配置文件的时候 " . " 别写错或漏了
#正向解析数据配置文件
#反向解析数据配置文件
#检查一下配置文件是否有错(有时候没用)
named-checkconf -z /etc/named.conf
(4) 修改 /etc/resolv.conf 文件
(5) 启动服务
systemctl restart network
systemctl restart named && systemctl enable named
(6) 正反解析验证
#解析常用的命令有 nslookup 、dig 、host,执行 yum -y install bind-utils 安装
4. DNS 主从服务器及自动同步
(1) 主从服务器 IP
主服务器 192.168.10.20
从服务器 192.168.10.30
(2) 主 DNS 服务器配置
#修改区域配置文件 /etc/named.rfc1912.zones
#修改 DNS 配置文件
#重启服务
systemctl restart named
(3) 从 DNS 服务器配置
#安装 DNS 服务
yum -y install bind
#vim /etc/named.conf
#和主服务器一样,监听端口主机可以用本机 IP ,也可以设置所有 any
#vim /etc/named.rfc1912.zones
#在文件末尾添加下面两段
#修改 DNS 配置文件
#启动服务
systemctl start named
(4) 验证
#主 DNS 服务器验证
#从 DNS 服务器验证
(5) 关闭 主 / 从 DNS 服务器 named 服务,仍可解析
#关闭主 DNS 服务器 named 服务,开启从 DNS 服务器 named 服务
#关闭从 DNS 服务器 named 服务,开启主 DNS 服务器 named 服务
5. DNS 分离解析
(1) 实验环境
IP | 网卡 | |
---|---|---|
DNS 主服务器 | eth0 192.168.70.21 | vmnet2 |
eth1 | 10.0.0.101 | vmnet3 |
web 服务器 | ens33 192.168.70.210 | vmnet2 |
Windows 服务器 | eth0 10.0.0.123 | vmnet3 |
(2) 主 DNS 服务器配置
#安装 DNS 服务
yum -y install bind bind-utils
#更换虚拟机网卡为 vmnet2(仅主机模式)
#添加一块网卡 vmnet3(仅主机模式)
#虚拟网络编辑器 vmnet2 和 vmnet3 配置
#修改网卡配置文件
vim /etc/sysconfig/network-scripts/ifcfg-eth0
#如果觉得在 vmware 里面操作不方便的话可以先启用 DNS1
vim /etc/sysconfig/network-scripts/ifcfg-eth1 #注意如果有 UUID 要注销
#重启网络
#配置 DNS 主配置文件
vim /etc/named.conf
#配置区域配置文件
cp -a /etc/named.rfc1912.zones /home/named.rfc1912.zones.bak #先备份一下
vim /etc/named.rfc1912.zones
view "lan" {
match-clients { 192.168.70.0/24; };
zone "benet.com" IN {
type master;
file "benet.com.zone.lan";
};
zone "." IN{
type hint;
file "named.ca";
};
};
view "wan"{
match-clients { any; };
zone "benet.com" IN {
type master;
file "benet.com.zone.wan";
};
};
#配置数据中心配置文件
cd /var/named
cp -p named.localhost benet.com.zone.lan
cp -p named.localhost benet.com.zone.wan
vim benet.com.zone.lan
vim benet.com.zone.wan
$TTL 1D
@ IN SOA benet.com. admin.benet.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS benet.com.
A 192.168.70.71
www IN A 192.168.70.71
$TTL 1D
@ IN SOA benet.com. admin.benet.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS benet.com.
A 10.0.0.101
www IN A 10.0.0.101
#启动 named 服务
systemctl start named
#测试一下
(3) windows服务器配置与测试
#网络配置
#测试解析
(4) web 服务器配置
#网络配置
#解析测试
6. 总结
DNS 配置案例(正反解析-主从同步-分离解析)是掌握DNS的教材,熟练掌握DNS的知识会使自己的路子走的更远