ip解析与dns服务器通信,dns服务器直接怎么通信的?

假如一个域名,本地无法解析,转发到第一个dns服务器进行解析,如果第一个dns服务也没办法解析。那第一个dns服务器是怎样把包转发到第二个dns服务器的?是第一个dns服务器里已经配好了第二台dns服务器的ip地址吗?他们之间用什么方式进行通信?

当一个域名无法被本地DNS解析时,第一个DNS服务器会发送一个迭代查询请求(Iterative Query Request)到根DNS服务器进行解析。根DNS服务器会返回一个指向下一级DNS服务器的指针,第一个DNS服务器再根据这个指针向下一级DNS服务器发起询问。这样一直进行下去直到找到对应的IP地址或者查询失败。 第一个DNS服务器里面会有配置根DNS服务器的IP地址。在DNS服务器之间进行通信时使用的是UDP协议。

  • 你可以参考下这篇文章:“找不到服务器ip地址”已解决,原因是DNS配置问题。
  • 除此之外, 这篇博客: 企业dns服务器搭建(多种解析方式的设置:正向,反向,双向....)中的 4.dns 的正向解析 (域名-?ip) 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 域名解析
    根域名服务器知道所有顶级域名的域名服务器,对应于每个顶级域名,它都有两条资源记录:一条是NS资源记录,域名字段是该顶级域名,值字段是该顶级域名解析的域名服务器的域名;另一条是A资源记录,用来指明该域名服务器的域名对应的IP地址。综合使用这两条记录,就可以知道对该域下的某个域名解析,应该继续去哪个IP地址的域名服务器寻找。第二层的域名服务器类似地存放各个第三层域名服务器的指针。第三层的域名服务器会出现A、CNAME、MX等类型的资源记录。每个域名服务器都有根域名服务器的地址记录。
    最后,一个需要域名解析的用户先将该解析请求发往本地的域名服务器。如果本地的域名服务器能够解析,则直接得到结果,否则本地的域名服务器将向根域名服务器发送请求。依据根域名服务器返回的指针再查询下一层的域名服务器,依此类推,最后得到所要解析域名的IP地址。(来自百度百科)

    dns A 192.168.0.20
    www CNAME westos.a.westos.com. ##规范域名
    westos.a A 192.168.0.111 ##正向解析记录
    westos.a A 192.168.0.112
    westos.com. MX 1 192.168.0.20. ##邮件解析记录
    systemctl restart named
    dig www.westos.com #查询正向解析
    dig -t mx westos.com #邮件解析记录查询
    
    dns的正向解析
    注释掉上个实验中  服务端  172.25.254.17
    [root@localhost Desktop]# vim /etc/named.conf
    20         forwarders {114.114.114.114;};    注释
    
    [root@localhost Desktop]# vim /etc/named.rfc1912.zones 
    [root@localhost Desktop]# cat /etc/named.rfc1912.zones 
    添加以下内容
    zone "westos.com" IN {                        ##维护的域名 
            type master;                                ##当前服务器主dns
            file "westos.com.zone";               ##域名A记录文件
            allow-update { none; };               ##允许更新主机列表
    };
    
    [root@localhost Desktop]# cd /var/named
    [root@localhost named]# cp named.localhost westos.com.zone -p     ##   复制文件注意权限    
    [root@localhost named]# vim /var/named/westos.com.zone
    [root@localhost Desktop]# cat /var/named/westos.com.zone    ip对应域名A记录文件,
    $TTL 1D
    @	IN SOA	dns.westos.com. root.westos.com. (
    					0	; serial                     ##域名版本序列号
    					1D	; refresh               ##刷新时间(辅助dns)
    					1H	; retry                    ##重试时间(辅助dns)
    					1W	; expire                  ##过期时间(辅助dns,查询失败,过期停止对辅助域名的应答)
    					3H )	; minimum
    	        NS	       dns.westos.com   
    dns	        A	       172.25.254.17   ##正向解析记录 
    www        A	       172.25.254.111
    bbs           CNAME   bss.a.westos.com.
    bss.a           A       172.25.254.111
    bss.a           A       172.25.254.222
    westos.com.     MX 1     127.0.0.1.
    
    ##############################(文件中不带点,自动补齐westos.com)
    

    客户端检测

    [root@localhost ~]# cat /etc/resolv.conf 
    # Generated by NetworkManager
    me/westos/Pictures/Screenshot from 2020-08-07 15-03-39.png' '/home/westos/Pictures/Screenshot from 2020-08-07 15-03-39.png' 
    nameserver 172.25.254.17                 ####  服务端主机   ip  
    [root@localhost ~]# dig www.westos.com   ##### 查询正向解析
    
    ; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el8 <<>> www.westos.com
    ;; global options: +cmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 44868
    ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 5
    
    ;; OPT PSEUDOSECTION:
    ; EDNS: version: 0, flags:; udp: 4096
    ; COOKIE: 4431c5666adcd969d5d4403c5f2d162875bb49355fae5d4c (good)
    ;; QUESTION SECTION:
    ;www.westos.com.			IN	A
    
    ;; ANSWER SECTION:
    www.westos.com.		3600	IN	A	103.224.182.230
    
    ;; AUTHORITY SECTION:
    westos.com.		172799	IN	NS	421.ns1.above.com.
    westos.com.		172799	IN	NS	421.ns2.above.com.
    
    ;; ADDITIONAL SECTION:
    421.ns1.above.com.	172799	IN	A	103.224.182.5
    421.ns1.above.com.	172799	IN	A	103.224.212.5
    421.ns2.above.com.	172799	IN	A	103.224.212.6
    421.ns2.above.com.	172799	IN	A	103.224.182.6
    
    ;; Query time: 1785 msec
    ;; SERVER: 172.25.254.17#53(172.25.254.17)
    ;; WHEN: Fri Aug 07 16:51:51 CST 2020
    ;; MSG SIZE  rcvd: 201
    
    

    邮件解析记录查询

    [root@lzy Desktop]# dig -t mx westos.com
    
    ; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el8 <<>> -t mx westos.com
    ;; global options: +cmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 8760
    ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
    
    ;; OPT PSEUDOSECTION:
    ; EDNS: version: 0, flags:; udp: 4096
    ; COOKIE: 412253f8a76ef16ed1a44b335f2f99bce1b1373d33ba5c7f (good)
    ;; QUESTION SECTION:
    ;westos.com.			IN	MX
    
    ;; ANSWER SECTION:
    westos.com.		86400	IN	MX	1 127.0.0.1.
    
    ;; AUTHORITY SECTION:
    westos.com.		86400	IN	NS	dns.westos.com.
    
    ;; ADDITIONAL SECTION:
    dns.westos.com.		86400	IN	A	172.25.254.17
    
    ;; Query time: 15 msec
    ;; SERVER: 172.25.254.17#53(172.25.254.17)
    ;; WHEN: Sun Aug 09 02:37:47 EDT 2020
    ;; MSG SIZE  rcvd: 126