代码改变世界

Linux 如何查看修改DNS配置

2016-04-19 12:02  潇湘隐者  阅读(135813)  评论(0编辑  收藏  举报

DNS服务器介绍

    DNS是计算机域名系统(Domain Name System 或Domain Name Service) 的缩写,它是由域名解析器和域名服务器组成的。域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器。其中域名必须对应一个IP地址,一个IP地址可以有多个域名,而IP地址不一定有域名。域名系统采用类似目录树的等级结构。域名服务器通常为客户机/服务器模式中的服务器方,它主要有两种形式:主服务器和转发服务器。将域名映射为IP地址的过程就称为“域名解析”。提供DNS服务的就是DNS服务器。DNS服务器可以分为三种,高速缓存服务器(Cache-only server)、主服务器(Primary Name server)、辅助服务器(Second Name Server)。

一般运作中的域名最好有两台或以上的DNS服务器,一台称为主域名服务器,而另一台称为从域名服务器。第二个DNS服务器通常用于故障转移:如果一台宕机,另外一台就激活成为DNS服务器。

 

查看服务器的DNS信息

Linux系统中如何查看配置的DNS服务器信息呢? 一般有下面几种方法

 

1:查看/etc/resolv.con文件

[root@localhost ~]# cat /etc/resolv.conf 
nameserver 192.168.xxx.xxx
#search localdomain
[root@localhost ~]# 

 

2:使用nslookup命令查看DNS信息

[root@localhost ~]# nslookup 127.0.0.1 | grep Server
Server:         192.168.xxx.xxx
[root@localhost ~]# 

 

3:使用dig命令来查看DNS信息

root@localhost ~]# dig 
 
; <<>> DiG 9.3.6-P1-RedHat-9.3.6-16.P1.el5 <<>>
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36888
;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 3
 
;; QUESTION SECTION:
;.                              IN      NS
 
;; ANSWER SECTION:
.                       86163   IN      NS      m.root-servers.net.
.                       86163   IN      NS      a.root-servers.net.
.                       86163   IN      NS      j.root-servers.net.
.                       86163   IN      NS      l.root-servers.net.
.                       86163   IN      NS      e.root-servers.net.
.                       86163   IN      NS      d.root-servers.net.
.                       86163   IN      NS      k.root-servers.net.
.                       86163   IN      NS      f.root-servers.net.
.                       86163   IN      NS      h.root-servers.net.
.                       86163   IN      NS      c.root-servers.net.
.                       86163   IN      NS      g.root-servers.net.
.                       86163   IN      NS      b.root-servers.net.
.                       86163   IN      NS      i.root-servers.net.
 
;; ADDITIONAL SECTION:
a.root-servers.net.     3599    IN      A       112.4.20.71
b.root-servers.net.     86163   IN      A       192.228.79.201
i.root-servers.net.     86173   IN      A       192.36.148.17
 
;; Query time: 8 msec
;; SERVER: 192.168.xxx.xxx#53(192.168.xxx.xxx)
;; WHEN: Sat Apr 16 07:34:37 2016
;; MSG SIZE  rcvd: 289
 
[root@localhost ~]# dig | grep SERVER: | awk -F# '{ print $1 }' | awk -F: '{ print $2 }'
 192.168.xxx.xxx

 

4:其它一些方法查看DNS信息

在网上看到还有一些其他方法,查看服务器的DNS配置信息,如下所示,不过这些方法,由于环境限制,我没有验证过,仅供参考。

nm-tool | grep DNS
 
nmcli dev list iface eth0 | grep IP4

 

 

修改服务器的DNS信息

修改DNS服务器非常简单,只需要修改/etc/resolv.conf配置文件即可。那么修改DNS是否需要重启某些服务,答案是不需要。修改后会立即生效,不需做任何额外处理。