linux的高速缓存dns

        相校于由数字构成的IP 地址,域名更容易被理解和记忆,所以我们通常更习惯通过域名的方式来访问网络中的资源。但是,网络中的计算机之间只能基于IP 地址来相互识别对方的身份,而且想要在互联网中传输数据,也必须基于外网的IP 地址来完成。

        为了降低用户访问网络资源的门槛,DNS(Domain Name System,域名系统)技术应运而生。这是一项用于管理和解析域名与IP 地址对应关系的技术,简单来说,就是能够接受用户输入的域名或IP 地址,然后自动查找与之匹配(或者说具有映射关系)的IP 地址或域名,即将域名解析为IP 地址(正向解析),或将IP 地址解析为域名(反向解析)。这样一来,我们只需要在浏览器中输入域名就能打开想要访问的网站了。DNS 域名正向解析也是我们最长使用的一种工作模式。

一、Bind 域名解析服务搭建

        BIND(Berkeley Internet Name Domain,伯克利因特网名称域)服务时全球范围内使用最广泛、最安全可靠且高效的域名解析服务程序。DNS 域名解析服务作为互联网基础设施服务,其责任之重可想而知,因此建议在生产环境中安装部署bind 服务程序时加上chroot(俗称牢笼机制)扩展包,以便有效地限制bind 服务程序仅能对自身的配置文件进行操作,以确保整个服务器的安全。

1. 将真机作为路由器,使虚拟机能够上网

查看真机防火墙信息

将真机路由功能开启,为虚拟机充当路由器

然后打开真机的路由分发功能

配置虚拟机网卡与连接文件,设定网关为真机ip 地址,同时设定域名解析服务地址

然后重启网络生效,此时虚拟机即可上网

2. 配置yum 源,安装Bind 服务相应软件,并启动服务

第一次启动Bind 服务时需要输入一些字符

关闭虚拟机防火墙

3. 修改服务的配置文件

其中,listen-on port 53 { any; }; 为控制named 服务监听的ipv4 地址

allow-query { any; }; 为控制哪些客户端可以向DNS 服务器询问信息

forwarders { 114.114.114.114; }; 为外部域名解析服务器地址

dnssec-validation no; 为无需对DNS 进行检测

重启服务生效

4. 测试

在客户端更改域名解析服务的地址为,已经配置好域名解析DNS 服务的地址

同时在服务端也将域名解析服务的地址改为服务端的ip 地址

然后询问一个网址,进行测试

然后再次询问相同的网址会发现,时间减少为0,这说明服务器将先前询问过的域名信息进行保存,当再次询问时,直接访问服务器已经保存过的信息,不会再去外网获取信息,这样就会节省大量的时间,因此称其为高速缓存DNS 服务器

二、DNS 本地正向解析

1. 注释forwarders { 114.114.114.114; }; 使询问本地域名时,不会去外网询问

2. 添加自己所需要维护的域名空间信息

设置域名,同时设置域名空间的配置文件名

3. 创建域名空间文件

将已有的文件复制为新的域名空间文件,同时要复制相应的权限,否则域名服务无法访问或修改文件信息

4. 编辑域名空间文件

其中@ 为先前设置的“westos.com” 域名,SOA 后为域名授权起始主机,如果域名后有“.” 说明不会补充“westos.com” 域名,若没有“.” ,则会自动补充

重启服务

5. 测试

对本地域名进行询问

三、轮询

1. 域名转换

编辑数据配置文件

其中,CNAME 可将规范名称转换为非规范名称

然后重启服务,测试

再次测试时,会发现ip 地址会调换位置

四、邮件地址解析

1. 编辑数据配置文件

在文件中加入邮箱地址交换记录

其中,MX 代表邮箱交换记录,数字10代表优先级

也可写成如下形式

2. 重启服务,并发邮件进行测试

其中,利用mail 命令向某个域名的某个用户发邮件,“. ”代表邮件结束

再利用mail 命令查看本地用户的邮件,若为空,说明发送成功

查看邮件队列,可以看到先前发送的邮件

3. 询问邮箱地址交换记录

五、DNS 本地反向解析

        在DNS 域名解析服务中,反向解析的作用时将用户提交的IP 地址解析为对应的域名信息,它一般用于对某个IP 地址上绑定的所有域名进行整体屏蔽,屏蔽由某些域名发送的垃圾邮件。它也可以针对某个IP 地址进行反向解析,大致判断出有多少个网站运行在上面。当购买虚拟主机时,可以使用这一功能验证虚拟主机提供商是否有严重的超售问题。

1. 编辑区域配置文件

在49行应该将域名所在地址网络位反写,51行写出反向解析数据配置文件名

2. 编辑反向解析数据配置文件

首先复制一份反向解析的模板文件,同时还要复制其原有的权限信息

在配置文件中加入反向解析的记录

3. 重启服务并测试

六、分离解析技术

        该技术可以让位于不同地理范围内的用户通过访问相同的网址,而从不同的服务器获取到相同的数据。

1. 在服务端配置另一个IP 地址,同时在另一台客户端配置统一网段的IP 地址

重启网络查看多个ip 地址

在另一台客户端配置同一网段的ip 地址,使DNS服务指向服务端地址

2. 编辑内部网络(1.1.1.0/24网段)的数据配置文件

复制已有模板及其权限

编辑数据配置文件,替换原有网络位

3. 编辑内部网络的区域配置文件

复制已有模板及其权限

编辑区域配置文件,使文件指向刚才建立的内部网络的数据配置文件

4. 编辑主配置文件,使不同网络询问时,回答不同的结果

当客户端地址为(1.1.1.0/24)网段内时,区域配置文件指向inter,其他客户端则指向zones

5. 重启服务并测试

在内部网络内询问

在其他网络内询问

七、部署从属服务器

1. 恢复主配置文件,并配置另一台虚拟机的ip 地址

2. 在另一台虚拟机中安装bind 服务软件,使其充当从属服务器

设置从属服务器主机名称

配置从属服务器主配置文件

3. 编辑从属服务器区域配置文件

设置其主服务器ip 地址,同时设置其数据配置文件名(该文件从主服务器自动获取,无需创建)

然后启动服务

编辑域名服务配置文件,使地址指向本机

测试

当主服务器数据配置文件更改时,从属服务器信息无法同步,需要将从属服务器数据配置文件删除,然后重启服务才能同步

4. 主从服务器同步

在主服务器中,配置区域配置文件,allow-transfer 为允许传输区域信息到某服务器上,also-notify 为当主服务器信息变化时自动通知某服务器

此时主服务器信息变更时,只需更改主服务器数据配置文件的更新序列号,然后重启主服务器服务即可和从属服务器同步

注:serial 为更新序列号,只要该序列号在主从服务器中不一致,即可更新信息

八、远程更新主服务器记录

1. 备份主服务器的数据配置文件

2. 修改主服务器区域配置文件

其中,allow-update 为允许哪台主机更新

然后重启服务

并更改主服务器数据配置文件目录的权限,使得named 组可以对该目录进行修改

3. 在被允许更新的主机上进行测试

当主服务器的selinux 开启时,需要开启named 服务的写开关,此能远程更新主服务器信息

在被允许更新的主机上更新信息

然后询问刚才添加的记录

在主服务器上重启服务,即可查看数据配置文件中更新了记录

九、加密更新

1. 删除已有的数据配置文件,并从备份文件复制

2. 对数据配置文件进行加密

查看生成的密钥文件

3. 复制已有的密钥模板文件

修改名称和加密字符

4. 修改服务主配置文件

同时,修改区域配置文件,使只有拥有westoskey 钥匙的用户才能更新信息

5. 发送密钥文件至需要更跟新主服务器信息的主机处

6. 在获得密钥文件的主机上进行测试

查看主服务器数据配置文件

十、动态域名解析(花生壳)

1. 在主服务器上安装dhpc 服务软件并配置服务

复制已有的配置模板文件

编辑dhcp 服务配置文件,设置域名和域名解析服务的地址

其中,ddns-update-style interim; 为可以使得dns 动态更新

设置网络位、子网掩码、非配的ip 地址范围和网关地址

并在最后加入密钥信息

同时加入要更新的dns的域信息

然后保存退出,启动dhcp 服务

2. 修改客户端网络配置

使其网络分配方式为dhcp 自动分配

查看分配到的ip 地址

3. 测试

在一台主机上,设置主机名为:xxx. 域名. com

然后询问该主机名看 解析到的地址

重新设定dhcp 服务的ip 地址分配范围

然后重启客户端主机网络

查看网络,并查看解析

猜你喜欢

转载自blog.csdn.net/weixin_43369306/article/details/84312342