新闻资讯

dns解析域名如何实现?哪个品牌可以做?

2019-01-3

DNS解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务。人们习惯记忆域名,但机器间互相只认IP地址,域名与IP地址之间是一一对应的,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,整个过程是自动进行的。

1:开始前:准备两台虚拟机,server虚拟机(172.25.254.160)作为dns服务器,提前配置好yum源.

desktop虚拟机(172.25.254.180)作为客户端进行测试。

2:服务端(对服务端进行配置)

[root@localhost ~ ]# yum install bind -y //安装dns服务软件; -y不用与系统进行交互式访问,直接安装

[root@localhost ~]#systemctl start named //开启服务(在启动过程中,因为加密字符不够,服务重启一直在等待,这时需要打开图形界面敲击键盘)
[root@localhost ~]#systemctl stop firewalld //关闭防火墙

[root@localhost ~]# vim /etc/named.conf ///编辑修改配置文件
10 options {
11 listen-on port 53 { any; }; //将之前默认ip改成any;控制named 侦听的ipv4地址
12 listen-on-v6 port 53 { ::1; };
14 dump-file "/var/name
13 directory "/var/named";d/data/cache_dump.db";
15 statistics-file "/var/named/data/named_stats.txt";
16 memstatistics-file "/var/named/data/named_mem_stats.txt";
17 allow-query { any; }; //将允许设置为any;控制那些客户端可以向DNS服务器询问信息
18 forwarders { 172.25.254.180; };//包含D的NS查询将转发至名称服务器列表(而不是直接联系外部名称服务器;)
32 dnssec-validation no; //将yes设置为no
[root@localhost ~]# vim /etc/resolv.conf //编辑本地解析文件
search example.com
nameserver 172.25.254.180

[root@localhost ~]# systemctl restart named //重启服务
[root@localhost ~]# systemctl restart network //重启网络

客户端:

[root@localhost ~]# vim /etc/resolv.conf
nameserver 172.25.254.160 //这里的ip是dns服务的主机ip

[root@localhost ~]# dig www.baidu.com //测试:查询百度的ip信息

当客户端可以查询百度ip信息时,则说明dns服务配置完成

dns本地正向解析(server虚拟机上进行操作)
1:[root@localhost ~]# cd /var/named
[root@localhost named]# ls(查看该目录下有什么)
data dynamic named.ca named.empty named.localhost named.loopback slaves
//新建文件,修改文件
[root@localhost named]# cp -p named.localhost westos.com.zone

2:[root@localhost named]# vim westos.com.zone //编辑文件 ;其中,@ “”的内容 ;SOA 授权起始主机!

3:[root@localhost named]# vim /etc/named.conf //将上一个实验的添加的forwards这一行注释

其余的操作和之前的一样。

[root@localhost ~]# vim /etc/named.rfc1912.zones

[root@localhost named]# systemctl restart named //重启dns服务
4:[root@localhost named]# vim /etc/resolv.conf //修改dns解析地址,ip改为本地ip
nameserver 172.25.254.160

5:[root@localhost named]# dig hello.swestos.com //本机测试

轮询
[root@localhost named]# vim westos.com.zone //修改配置文件

[root@localhost named]# systemctl restart named //重启服务

[root@localhost named]# dig www.westos.com // 测试

(等待1~2s后,再次测试dig www.westos.com会发现两个ip位置会调换;)

dns本地反向解析服务(输入ip得到相应的域名)
[root@localhost ~]# vim /etc/named.conf //编辑配置文件(与之前的操作一样两处修改成any一处改为no)
options {
listen-on port 53 { any; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { any; };

[root@localhost ~]# vim /etc/named.rfc1912.zones

zone "254.25.172.in-addr.arpa" IN { // 添加这一段;逆向输入域名
type master;
file "westos.com.ptr";
allow-update { none; };
};

[root@localhost ~]# cd /var/named
[root@localhost named]# ls
data named.ca named.localhost slaves
dynamic named.empty named.loopback star.com.zone
[root@localhost named]# cp -p named.loopback star.com.ptr //将所需的文件导入westos.com.ptr中 -p表示将文件的属性也一同复制过去
[root@localhost named]# vim star.com.ptr //编辑反向解析文件!

[root@localhost ~]# vim /etc/resolv.conf
search example.com
nameserver 172.25.254.160(本机的ip地址)

[root@localhost named]# systemctl restart named //重启服务
[root@localhost named]# dig -x 172.25.254.161 //测试(显示下面的结构,表示本地反向解析完成)

dns双向解析
[root@localhost ~]#cd /var/named
[root@localhost named]# cp -p westos.com.zone westos.com.inter //--p 是将文件属性一同复制
[root@localhost named]# vim westos.com.inter //让其他主机看到在这个文件里的ip与域名的关系,主机看到的是westos.com.zone真实存在的域名关系

[root@localhost named]# cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.inter

[root@localhost named]# vim /etc/named.rfc1912.inter //编辑配置文件

[root@localhost named]# vim /etc/named.conf //修改配置文件 (man 5 named可查看所需的配置)

将这一部分注释

添加这两段

[root@localhost named]# systemctl retstart named //重启服务
[root@localhost named]# vim /etc/resolv.conf
search example.com
nameserver 172.25.254.160
[root@localhost named]# dig www.westos.com //本机测试

客户端

[root@localhost Desktop]# vim /etc/resolv.conf
search example.com
nameserver 172.25.254.160(dns服务端的ip)
[root@localhost Desktop]# dig www.star.com

两台主机dig到的ip是不一样的,这样做的好处是保证另外一定的安全性。

dns集群

服务端

[root@localhost named]# vim /etc/named.conf //恢复主配置文件(将之前做双向解析的那个的注释删除,两个view注释后面的内容注释掉)

[root@localhost named]# vim /etc/named.rfc1912.zones

(指定180主机位主dns的辅助)

[root@localhost named]# systemctl restart named //重启服务

辅助dns端

[root@localhost desktop]# yum install bind -y //安装bind
[root@localhost desktop]#systemctl start named //开启dns服务
[root@localhost desktop]#systemctl stop firewalld //关闭防火墙
[root@localhost desktop]#systemctl disable firewalld
[root@localhost desktop]#vim /etc/named.conf(两处any ,一处no)
[root@localhost desktop]#vim /etc/named.rfc1912.zones // 编辑配置文件

zone "westos.com" IN {
type slave;
masters { 172.25.254.160; }; //主dns的ip
file "slaves/westos.com.zone";
allow-update { none; };
};

[root@localhost desktop]# systemctl restart named //重启named服务

测试:在主dns端:vim /var/named/westos.com.zone

将serial前的0改为1.这样子客户端才能检测到ip的变化

修改ip

在辅助dns端,dig www.westos.com,查看新ip:

客户端远程管理dns主机的dns记录(更新)
主dns端:

[root@localhost named]# cp -p westos.com.zone /mnt/ //备份
[root@localhost named]# vim /etc/named.rfc1912.zones //修改配置文件
zone "westos.com" IN {
type master;
file "westos.com.zone";
allow-update { 172.25.254.180; }; //将原来的none修改为指定的客户端ip
also-notify{172.25.254.180;};
};
[root@localhost named]# systemctl restart named //重启服务
[root@localhost named]# chmod 770 /var/named //加上权限
客户端(进行测试)

(send后没有报错能继续输入则表示没有出错)

之后在dig www.westos.com即可查看172.25.254.111ip地址

(如果内核级防火前处于Enforcing状态):需要把named服务打开

基于key的加密更新
dns主机:

1:开始前:先删除westos.com.zone 和westos.com.zone.jn1(westos.com.zone文件一定要备份)

[root@localhost ~]# cd /mnt //之前将westos.com/zone复制到/mnt下的
[root@localhost mnt]# ls
westos.com.zone
[root@localhost mnt]# dnssec-keygen -a HMAC-MD5 -b 128 -n HOST westoskey
Kwestoskey.+157+20484 //加密 (然后在ls查看/mnt下的文件)

2:查看加密生成的文件(两个钥匙是一样的)

3:编辑/etc/westos.key文件

4:编辑配置文件:

vim /etc/named.conf

vim /etc/named.rfc1912.zones(将none改为westoskey)

5:将钥匙发给客户端即可

6:然后在客户端主机的/mnt下就可以看到钥匙

7:远程客户端

[root@localhost desktop ]# vim /etc/resolv.conf
search ilt.example.com example.com
nameserver 172.25.254.174
[root@localhost desktop ]# nsupdate -k kwestos+157+40484.key

这样客户端必须带着钥匙才能管理dns主机的ip记录

dns智能解析(动态域名解析,又名花生壳)
1:服务端:

[root@localhost mnt]# yum install dhcp -y //安装dhcp服务软件
[root@localhost mnt]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
cp: overwrite ‘/etc/dhcp/dhcpd.conf’? y
[root@localhost mnt]# vim /etc/dhcp/dhcpd.conf //编辑配置文件(35行之后全部删除)
[root@localhost mnt]# systemctl restart dhcpd //重启dhcp服务:

2:客户端:

[root@localhost mnt]# hostnamectl set-hostname YYZZ.westos.com //修改主机名
[root@localhost mnt]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 //修改静态ip为动态获取ip
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes

在这一步的时候,需要拔掉网线,再重启网络,获得ip

[root@localhost mnt]# systemctl retstart network //重启网络
[root@localhost mnt]# ifconfig //查看是否动态获取到了ip(dhcp动态ip地址)

3:进入之前配置的/etc/dhcp/dhcp.conf文件添加所欲的信息

测试:在客户端重启网络看解析

花生壳动态域名解析于2013年11月11日正式发布花生壳(内网穿透)服务。无需公网IP,无需路由器端口映射,从此对nat说NO!颠覆式的动态域名技术创新,全新的交互界面及功能体验,满足你多元化的需求,带给你焕然一新的使用感受。在安装完成花生壳(内网穿透)版本的客户端以及注册花生壳账号之后就可以使用花生壳进行内网穿透了。