DNS软件bind-实现DNS服务器 - goodbay说拜拜
source link: https://www.cnblogs.com/lyj1023/p/16215909.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
DNS软件bind-实现DNS服务器
DNS服务器软件::bind,powerdns,dnsmasq,unbound,coredns
BIND相关程序包
- bind:服务器
- bind-libs:相关库
- bind-utils:客户端
- bind-chroot:安全包,将dns相关文件放至/var/named/chroot/
BIND包相关文件
- BIND主程序:/usr/sbin/named
- 服务脚本和Unit名称:/etc/rc.d/init.d/named,/usr/lib/systemd/system/named.service
- 主配置文件:/etc/named.conf, /etc/named.rfc1912.zones, /etc/rndc.key
- 管理工具:/usr/sbin/rndc:remote name domain controller,默认与bind安装在同一主机,且 只能通过127.0.0.1连接named进程,提供辅助性的管理功能;953/tcp
- 解析库文件:/var/named/ZONE_NAME.ZONE
主配置文件
- 全局配置:options {};
- 日志子系统配置:logging {};
- 区域定义:本机能够为哪些zone进行解析,就要定义哪些zone zone "ZONE_NAME" IN {};
- 任何服务程序如果期望其能够通过网络被其它主机访问,至少应该监听在一个能与外部主机通信的 IP地址上
- 缓存名称服务器的配置:监听外部地址即可
- dnssec: 建议关闭dnssec,设为no
主配置文件语法检查
named-checkconf
解析库文件语法检查
named-checkzone "magedu.org" /var/named/magedu.org.zone #centos8没有整个命令
#三种方式 #rndc reload #systemctl reload named #service named reload
实现DNS正向主从服务器
实验设备:服务器
centos8 地址10.0.0.88;centos7 地址10.0.0.77
centos7 地址10.0.0.7
设置域名:magedu.org
客户端DNS解析:主服务器掉线,自动连接 “从服务器”解析
主服务器配置
1、编辑配置文件 /etc/named.conf
[root@centos8-liyj ~]#vim /etc/named.conf
dnssec-enable yes; #改为no
dnssec-validation yes; #改为no
配置文件
2、编辑/etc/named.rfc1912.zones
再最后添加以下内容 zone "magedu.org" IN { typer master; file "magedu.org.zone"; #文件目录,默认/var/named/ }; #在named.conf文件中定义了directory "/var/named";
named.rfc1912.zones
3、编辑DNS区域数据库文件
[root@centos8-liyj /etc/named]#cd /var/named/ [root@centos8-liyj /var/named]#ls data dynamic named.ca named.empty named.localhost named.loopback slaves
3.1复制named.localhost文件格式,重新编辑
[root@centos8-liyj /var/named]#cp -p named.localhost magedu.org.zone #-p 复制原格式权限 [root@centos8-liyj /var/named]#ll 或者手动修改:chgrp named magedu.org.zone total 20 drwxrwx--- 2 named named 6 Aug 25 2021 data drwxrwx--- 2 named named 6 Aug 25 2021 dynamic -rw-r----- 1 root named 152 Aug 25 2021 magedu.org.zone #文件权限为640 ,强制 属主root,数组named -rw-r----- 1 root named 2253 Aug 25 2021 named.ca -rw-r----- 1 root named 152 Aug 25 2021 named.empty -rw-r----- 1 root named 152 Aug 25 2021 named.localhost -rw-r----- 1 root named 168 Aug 25 2021 named.loopback drwxrwx--- 2 named named 6 Aug 25 2021 slaves
[root@centos8-liyj /var/named]#vim magedu.org.zone
$TTL 1D @ IN SOA ns1 admin.magedu.org. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS ns1 #主DNS
NS ns2 #从DNS ns1 A 10.0.0.88 #指向地址 ns2 A 10.0.0.77
[root@centos8-liyj /var/named]#systemctl start named #第一次启动 [root@centos8-liyj /var/named]#rndc reload #不是第一次启动,使用rndc reload 加载 配置文件,不会终端DNS服务 server reload successful [root@centos8-liyj /var/named]#
主服务器DNS-dig测试
[root@centos8-liyj /var/named]#dig ns1.magedu.org #本机设置了DNS地址,联通了外网,互联网上由 ns1.magedu.org域名。解析如下
ns1.magedu.org. 5 IN A 47.91.170.222 #解析出外网地址,
vim /etc/sysconfig/network-scripts/ifcfg-eth0
删除本机的DNS地址
[root@centos8-liyj /var/named]#cat /etc/sysconfig/network-scripts/ifcfg-eth0 #修改后,删除了DNS地址,重启网卡服务 DEVICE="eth0" NAME="eth0" BOOTPROTO="static" IPADDR=10.0.0.88 PREFIX=24 GATEWAY=10.0.0.2 ONBOOT="yes"
dig域名测试正确
从服务器配置
[root@centos7-liyj ~]#vim /etc/named.conf
注释//
options {
// listen-on port 53 { 127.0.0.1; };
// allow-query { localhost; };
allow-transfer { none;}; #不允许其他主机进行区域传输
yes改为no
dnssec-enable no;
dnssec-validation no;
配置文件
[root@centos7-liyj ~]#vim /etc/named.rfc1912.zones 添加以下内容
zone "magedu.org" { type slave; masters { 10.0.0.88;}; file "slaves/magedu.org.slave"; #文件目录 };
配置文件
systemctl start named #第一次启动服务 rndc reload #不是第一次启动服务 ls /var/named/slaves/magedu.org.slave #查看区域数据库文件是否生成
[root@centos7-liyj ]#ll /var/named/slaves/ total 4 -rw-r--r-- 1 named named 264 May 2 17:06 magedu.org.slave [root@centos7-liyj ]#cat /var/named/slaves/magedu.org.slave #从服务器 自动生成文件 boXQ 查看内容乱码,不允许从服务器看到配置 mageduorg6ns1mageduorgadminmageduorgQ :*0DQ mageduorgns1mageduorgns2mageduorg*Qns1mageduorg X*Qns2mageduorg
解决乱码问题:
添加 masterfile-format text;
重启服务 systemctl restart named
从无服务器magedu.org.slave
DNS gid测试
首先修改 eth0 网卡配置,删除dns地址,添加dns=10.0.0.88
[root@centos7-liyj ~]#cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" NAME="eth0" BOOTPROTO="static" IPADDR=10.0.0.77 PREFIX=24 GATEWAY=10.0.0.2 DNS3=10.0.0.88 ONBOOT="yes"
域名解析
客户端域名解析
修改客户端DNS1 为 10.0.0.88 DNS2为10.0.0.77
[root@centos7-liyj ~]#vim /etc/sysconfig/network-scripts/ifcfg-eth0 [root@centos7-liyj ~]#cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" NAME="eth0" BOOTPROTO="static" IPADDR=10.0.0.7 PREFIX=24 GATEWAY=10.0.0.2 DNS1=10.0.0.77 DNS2=10.0.0.88 ONBOOT="yes"
测试,DNS主从服务器都在线
yum install -y bind-utils
域名解析
DNS主服务器掉线
[root@centos8-liyj ~]#systemctl stop named [root@centos8-liyj ~]#systemctl status named ● named.service - Berkeley Internet Name Domain (DNS) Loaded: loaded (/usr/lib/systemd/system/named.service; disabled; vendor preset: disabled) Active: inactive (dead)
客户端解析
正常解析额
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK