Linux 如何查看修改DNS配置

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是否需要重启某些服务,答案是不需要。修改后会立即生效,不需做任何额外处理。

上一篇:用socket实现基于udp的聊天


下一篇:awk