如何查看DHCP分配的DNS地址?


33

如何查看DHCP分配的DNS地址?

ifconfig无法显示它。

$ ifconfig -a
eth0      Link encap:Ethernet  HWaddr 90:e6:ba:22:6a:f2  
          inet addr:192.168.1.111  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::92e6:baff:fe22:6af2/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:224856 errors:0 dropped:0 overruns:0 frame:0
          TX packets:220040 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:166848627 (166.8 MB)  TX bytes:20256333 (20.2 MB)
          Interrupt:46 Base address:0x4000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:5889 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5889 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:468885 (468.8 KB)  TX bytes:468885 (468.8 KB)

wlan0     Link encap:Ethernet  HWaddr 00:26:5e:e8:4f:8e  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

返回结果:ifconfig | grep'inet addr:'吗?
david6 '22

@ david6 inet地址:192.168.1.111 Bcast:192.168.1.255掩码:255.255.255.0 inet地址:127.0.0.1掩码:255.0.0.0
Victor S

这应该对您有帮助cat /var/lib/dhcp3/dhclient.leases | grep dhcp-server-identifier
devav2 2012年

@ devav2 $ cat /var/lib/dh​​cp/dhclient-529bed02-363e-4e97-bd5d-9f63f42f17f2-eth0.lease | grep dhcp-server-identifier选项dhcp-server-identifier 192.168.1.1; 选项dhcp-server-identifier 192.168.1.1; 选项dhcp-server-identifier 192.168.1.1; 选项dhcp-server-identifier 192.168.1.1; 选项dhcp-server-identifier 192.168.1.1;
维克多S

1
有什么要求? DHCP服务从池(或范围)分配IP地址。DNS服务器返回主机名,域或邮箱的IP地址(MX记录)。您的 ifconfig输出看起来正常..
david6 2012年

Answers:


40

在终端中至少运行Ubuntu 15.10及更高版本(可能也是早期版本):

nmcli dev show eth0 | grep IP4

eth0是最常见的IFACE,但它可能是eth1eth2

对于较旧的版本,请使用nmcli dev list iface eth0 | grep IP4


1
很棒的答案!感谢您的分享!我知道了。
维克多S

很高兴它有所帮助。当我想要一种获取信息然后解析它以按需显示时,我就找到了它,因为我有3种可能的DNS服务器(ISP,Google和OpenDNS)。
马蒂·弗里德

7
从15.04开始,命令是nmcli dev show
Sergiy Kolodyazhnyy

3
使用nmcli dev show eth0(如15.04上),它也可以在Debian Buster上使用。谢谢!
卢克,

1
@YandryPozo根据要求发布答案:)
Sergiy Kolodyazhnyy

13
$ nm-tool 

还将列出DNS服务器。


1
+1,因为此版本已经过测试,适用于14.04发行版。对于15.04和更高版本,请改用nmcli其他答案建议的方法。
clearkimura 2015年

7

要获取DNS地址,请打开终端(Ctrl+ Alt+ T)并输入:

cat /var/lib/dhcp/dhclient.leases | grep dhcp-server-identifier

2
/var/lib/dh​​cp/dhclient.leases中没有任何内容,它为空。
维克多S

$ file /var/lib/dh​​cp/dhclient.leases /var/lib/dh​​cp/dhclient.leases:空
Victor S

尝试/var/lib/dh​​cp/dhclient.eth0.leases
碎片

那个没用的cat。您可能的意思是grep domain-name-servers /var/lib/dhcp/dhclient.leasesdomain-name,否dhcp-server)。
Pablo

6

这里是:

cat /etc/resolv.conf

但不要编辑此文件


在最近的Ubuntu版本中(我认为是2012年之后),它将无用,因为它将包含nameserver 127.0.1.1,表示本地dnsmasq安装。最好查询由@ anwar-shah和@ marty-fried编写的NetworkManager
gerlos 2016年

如您所述,该文件可以编辑,因此不一定是DHCP分配的地址。现在,如果您自己进行编辑,那么显然将会有所不同-但是如果您使用公司VPN,该怎么办?还是其他因素影响了文件?这就是为什么我认为这不是一个好答案,即使简单而通用。这是一个很好的第一眼地方,但本身并不是一个真正的答案。
卢克,

3

作为@MartyFried答案的GUI替代方法,请尝试此操作。

  1. 单击顶部面板上的网络连接图标。

  2. 选择Wi-Fi设置

  3. 它应该显示您的DNS服务器地址

    屏幕截图


4
我的Ubuntu没有任何GUI桌面。
维克多S

@VictorS显示与其他答案相同的信息。我检查了一下
Anwar 2012年

1
感谢您的回答,这对于gnome或KDE用户很方便。
维克多S


2

正如我在评论中提到的那样(根据普遍的要求,现在它已成为一种答案),nmcli dev show从Ubuntu 15.04开始可以使用。添加grep到混合中,您可以设置:

$ nmcli dev show | grep 'DNS'                                                                                                                                                                     
IP4.DNS[1]:                  208.67.222.222
IP4.DNS[2]:                  208.67.220.220

2

现在,Ubuntu(以及Debian和几乎所有发行版)都使用systemd(请检查file /sbin/init),也许获取此信息的更优雅的方法是:

systemd-resolve --status

1
对于未运行NetworkManager的系统的完美答案。Ubuntu 18.04,Ubuntu 19.10
Ryan Jeremiah Freeman

它也可以在Raspbian中使用
riofly

2

我的实际解决方案(2015年,Ubuntu 14.04版)是这样的:

  1. 启动命令行
  2. 类型: sudo apt-get install gnome-system-tools
  3. 安装成功后,在终端上键入: network-admin

如果您某种方式无法执行此操作,请尝试执行此操作,尽管这对我来说还不够好,但是可以完成我的工作:

  1. 类型 dig google.com
  2. 快要结束时,您会看到类似这样的内容(2015年成立);服务器:然后是一个IP地址(至少在我的机器上),它是为您解析域的实际DNS服务器。该服务器可以更改每个主机名。

0

如果您的计算机在Internet Provider的Router / WiFi后面运行,您将从Router的DHCP 获得私有IP地址,例如192.168.0.2或192.168.1.100。

要从您的Internet Provider获取DNS的DHCP的DHCP 的公共IP地址,您需要在终端上运行以下命令行:

dig +short myip.opendns.com @resolver1.opendns.com
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.