linux之DNS配置

mac2024-03-10  32

认识DNS

1、什么是DNS? DNS(Domain Name System)全称为域名系统(服务)协议,主要用于域名与 IP 地址的相互转换,以及控制因特网的电子邮件的发送。 DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。 2、什么时候会用到DNS解析? 当我们在浏览器中输入url地址时,浏览器就开始查找输入域名所对应的ip地址; (1)当我们发起请求之后,浏览器就开始进行域名的解析,解析首先在会本地查找,本地(linux系统中)查找的是/etc/hosts文件,如果文件中有所查找的域名和ip,那么就结束解析的过程,直接使用本地hosts文件中的内容; (2)如果本地文件中没有需要解析的域名,则就会向本地dns请求解析; 3、DNS域名称类别

分为顶级域名、二级域名、三级域名、注册域名。

顶级域名又分为两类:国家顶级域名(nTLDs),200多个国家都按照ISO3166国家代码分配了顶级域名,例如中国.cn,美国.us等。国际顶级域名(iTDs),工商企业 .com,网络提供商.net,非盈利组织.org等。firm公司企业、store销售公司或企业、Web突出WWW活动的单位、arts突出文化、娱乐活动的单位、rec突出消遣、娱乐活动的单位、info提供信息服务的单位、nom个人。

二级域名指顶级域名之下的域名,在国际顶级域名下,它是指域名注册人的网上名称,例如 ibm,yahoo,microsoft等;在国家顶级域名下,它是表示注册企业类别的符号,例如com,edu,gov,net等。

三级域名用字母( A~Z,a~z,大小写等)、数字(0~9)和连接符(-)组成, 各级域名之间用实点(.)连接,三级域名的长度不能超过20个字符。如无特殊原因,建议采用申请人的英文名(或者缩写)或者汉语拼音名 (或者缩写) 作为三级域名,以保持域名的清晰性和简洁性。

4、DNS服务器的分类 权威DNS 非权威DNS 5、DNS服务器解析分类: 正向解析服务器 反向解析服务器 正向反向DNS解析服务器 DNS集群

二、配置非权威dns服务器:

环境:一台dns服务器、一台客户端; 1、配置虚拟机的网路,使得虚拟机可以上网()具体的配置方法可以看之前的博客:使得虚拟机可以ping通114.114.114.114和www.baidu.com; 2、安装dns软件: yum search dns 这里安装的是bind.x86_64 2、查看bind软件的配置文件: bind配置文件:/etc/named/named.conf dns缓存配置文件:/var/named/* 3、配置dns服务器

dns服务开启使用需要开启的端口: 53 测试过程中需要关闭防火墙;

非权威dns的配置

(1)编辑/etc/named/named.conf文件 更改13,19,34行参数 listen-on port 53 { 53; }; /开启53端口 allow-query { any; }; //让所有的主机都可以进行连接 dnssec-validation = no /是否进行DNSSEC确认开关 allforward { 114.114.114.114; };// 添加非权威dns的权威dns解析地址 t 开启服务: systemctl start named 关闭防火墙: systemctl stop firewalld systemctl disabled firewalld 查看53端口是否开启 4、在dns配置文件中写入权威iedns的ip: vim /etc/resolve.conf nameserver 114.114.114.114 5、在客户端进行测试: 客户端端配置/etc/resolve.conf文件,配置的ip为dns服务器本身的ip。 dig测试: 测试结果为: NOERROR 表示已经成功解析 REFUSED dns服务器拒绝解析 NXDOMAIN 所查询的信息不存在 DNS高速缓测试:

在客户端测试: dig www.baidu.com查看解析时间,解析时间为:4956ms;

在真机上测试: dig www.baidu.com查询解析时间,解析时间为:0ms;

权威DNS配置

使非权威dns不再向114.114.114.114权威dns询问解析,转而向自己本身进行解析。

1、dns文件配置

vim /etc/resol.conf nameserver 172.25.254.112 172.25.254.112为dns服务器本身的ip;

编辑/etc/named.conf文件 去掉forwarders { 114.114.114.114; }; 重启systemctl restart named

编辑/etc/named.rfc1912.zones 这个文件也是dns的配置文件,为了减轻 /etc/named.conf文件内容的冗长

在配置文件中设置域名为zhangyan.com,配置域名主机信息在zhangyan.com.zone中

拷贝/var/named下的named.localhost文件为zhangyan.com.zone 注意拷贝的时候需要添加-p,确保文件权限不改变 编辑zhangyan.com.zone文件

其中:

@ /etc/named.rfc1912.zones中zhangyan.test SOA “授权起始时间”,DNS区域信息 $TTL 1D 代表缓存可以存放的时间为1天 NS 域名的名称服务器 A 用于将特定的主机映射到一个主机的ipv4的地址 AAAA 和A对应,用于将特定的主机映射到一个主机的ipv6的地址 CNAME 别名记录,用于将别名指向到某个A记录上,这样就不用需要为某个新的名字创建另一个A记录; SRV 用于定义提供特定服务的服务器的地址,比如hostname,port-number等

编辑结果为: dns A 172.25.254.112 权威dns的信息 主机管理信息必须以 . 结尾 bbs A 172.25.254.15 zhangyan.com这个域名里面的主机名字是bbs,ip是172.25.254.15 重启named服务之后,这样一个权威DNS服务器搭建成功;

客户端进行测试,可以看到dns服务器为dns.zhangyan.com

真机进行测试,可以看到dns服务器为dns.zhangyan.com

2、dns反向解析 修改 /etc/named.rfc1912.zones文件为ptr格式: 拷贝named.loopback为172.25.254.ptr 拷贝的时候需要添加-p

客户端反向解析测试 反向解析的命令为:dig -x ip

4、配置双向解析

双向解析 1、设置客户端一的解析ip地址为1.1.1.*网段; 2、设置客户端二的解析ip地址为172.25.254.*

编辑主配置文件: vim /etc/named.conf

编辑/var/named/下的配至文件;

cp /etc/named.rfc1912.zones /etc/named.rfc1912.zones.inter -p (1)内网配置文件 (2)外网配置文件的指定: ip解析指定文件的配置:

外网测试: 内网测试: 解析状态为NOERROR则说明结果正确。

辅助dns配置

为什么会有辅助DNS? DNS服务器一般在用的时候,为了缓解服务器的压力,多使用一个主DNS服务器,多个副DNS服务器,多出的主DNS就是辅助DNS,这些DNS服务器也被为DNS集群 。

DNS集群的配置,主DNS称位master,辅助DNS称位slave

1、辅助DNS配置步骤: 配置辅助DNS之前先将之前配置的双向DNS在著配置文件中的相关配置,并重启服务:

(1)安装named服务,并编辑配置文件: yum install bind.x86_64 -y vim /etc/named.conf

编辑主配置文件中加载的文件: 重启服务查看/var/named/slaves下是否生成了配置文件; 配置辅助dns服务器的resolve文件,ip配置为辅助dns的ip地址: 测试: 以上配置成功

总结:

在192.168.181.135主机上hostnamectl set-hostname dns.westos.com

vim /etc/named.conf 改东西(一共改三行,早上已经讲过) systemctl restart named 重启服务 netstat -antlupe | grep named 看53端口是否开启 systemctl status firedwall 查看防火墙的状态,需要关闭防火墙或者添加named服务的防火墙策略;

vim /etc/named.rfc1912.zones 写入:

type slave;(辅助型) masters {192.168.181.135;};(为192.168.181.134主机服务) file "slaves/westos.com.zone";(在slaves/这个目录下同步westos.com.zone) systemctl restart named cd /var/named/salves ls systemctl restart named

但是如果主dns服务器的配置文件发生了变化,那么辅助dns该如何获取相关的配置?

1、我们需要配置主dns配置文件。当配置出现变化的时候可以通知到辅助dns: vim /etc/named.rfc1912.zones 主配置文件vim named.zone 重启网络 辅助dns: 当改变主配置文件的serial值再在辅助dns中进行dig查看结果: 配置成功 总结:

编辑主配置文件: vim /etc/named.rfc1912.zones 添加 also-notify { 192.168.181,135; }; ip为辅助dns的ip地址; vim /var/named/named.zone (1)更改配置文件中的sersial 这个数字只有更改了才会更新配置;并且这个数字只能增加不能降低; (2)更改配置文件,更改ip或者名字; 重启服务 systemctl restartr named 辅助dns dig bbszhangyan.com 查看结果

远程更新

之前每次更改完配置文件之后需要重启网络才能生效,那么怎么才能不重启网络就可以解析到更新后的配置呢? 即就是引入远程更新

配置如下: 1、先对配置文件备份: cp -p named.zone /opt/ 2、查看selinux的值,需要配置为disabled; getenforce 3、检查/var/named的权限,需要组权限有写权限: 重启之后selinux生效; 辅助dns配置: (1)nsupdate进行文件的更新: (2)查看slaves下是否有name.zone.jnl (3)file name.zone.jnl查看文件 (4)重启服务,dig test.zhangyan.com 测试成功 主dns删除配置文件

密钥进行更新配置文件

为什么要通过密钥进行配置文件的更新?如果通过ip更新的话,如果每个人人配置成主dns允许的ip地址,那么所有更改成这个ip的主机都可以进行配置文件的更新以及删除;从而引入密钥进行配置文件的更新。

(1)生成密钥; (2)查看私钥 (3)编辑配置文件: 拷贝密钥文件: 编辑dns文件,使其识别钥匙 vim /etc/named.conf 编辑dns文件,使其允许钥匙加密更新 vim /etc/named.rfc1912.zones

进行更新

将密钥传给辅助dns: 辅助dns配置: 测试:

动态解析ddns

当服务器的ip地址发生变化的时候,此时如何进行dns解析?这就要用到

配置的前提是key解析成功,我的实验室一起做的,所以key解析是可以正常解析的。 ddns的配置进行解析。 首先,要有两台虚拟机,其中一台为服务端,另一台为客户端:

服务端需要搭建DHCP和DNS服务: 安装dns ##yum源配好的前提下,进行下载 systemctl start named ##开启dns服务 systemctl enable named ##设置开机启动

systemctl start dhcpd ##开启dhcp服务 systemctl enable dhcpd ##设置开机启动 关闭防火墙

2)客户端只需要将获取IP的方式设置为DHCP即可: vim /etc/sysconfig/network-script/ifcfg-westos BOOTPROTO=dhcp ONBOOT=yes DEVICE=eth0 :wq systemctl stop NetworkManager.service systemctl restart network

3)关闭两台虚拟机的防火墙 systemctl stop firewalld

编辑dhcp配置文件 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20191104232923297.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTY3NDAzOQ==,size_16,color_FFFFFF,t_70) dhcp自动分配查看是否成功: 客户端成功获取到了来自dhcp的IP:172.25.254.201 ![在这里插入图片描述](https://img-blog.csdnimg.cn/201911042342460.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTY3NDAzOQ==,size_16,color_FFFFFF,t_70) 服务端dig客户端的域名可以正确解析到他的IP ![在这里插入图片描述](https://img-blog.csdnimg.cn/20191104234729731.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTY3NDAzOQ==,size_16,color_FFFFFF,t_70) 以上dns配置完成
最新回复(0)