如何找到我的 DHCP 服务器?

May*_*hux 16 networking dhcp

在我的 LAN 上有多个 DHCP 服务器在运行,并且它们都在同一范围内。

现在我使用一台具有来自 DHCP 服务器的动态 IP 地址的机器。我必须知道它来自哪个服务器。

怎么做?!

Mit*_*tch 13

要找出为您提供 IP 的 DHCP 服务器,只需按键盘上的Ctrl+ Alt+T打开终端。当它打开时,运行以下命令:

cat /var/lib/dhcp3/dhclient.leases
Run Code Online (Sandbox Code Playgroud)

或者您可以使用 grep 命令来获取 DHCP 服务器地址。

grep dhcp-server-identifier /var/lib/dhcp3/dhclient.leases
Run Code Online (Sandbox Code Playgroud)

或者

grep dhcp-server-identifier /var/lib/dhcp/dhclient.leases
Run Code Online (Sandbox Code Playgroud)

对于 Ubuntu 14.04、16.04 和 17.10,您可以使用:

dhclient -d -nw eth0
Run Code Online (Sandbox Code Playgroud)

示例输出:

Internet Systems Consortium DHCP Client 4.2.4
Copyright 2004-2012 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/eth0/00:0c:29:49:3e:67
Sending on   LPF/eth0/00:0c:29:49:3e:67
Sending on   Socket/fallback
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 3 (xid=0x4f723f9)
DHCPREQUEST of 192.168.138.136 on eth0 to 255.255.255.255 port 67 (xid=0x4f723f9)
DHCPOFFER of 192.168.138.136 from 192.168.138.254
DHCPACK of 192.168.138.136 from 192.168.138.254
RTNETLINK answers: File exists
bound to 192.168.138.136 -- renewal in 892 seconds.
Run Code Online (Sandbox Code Playgroud)


gli*_*dud 12

在 Ubuntu 14.04 中,它/var/lib/dhcp/dhclient.leases是空的。实际的租约文件可以在dhclientvia的命令行上找到ps。寻找-lf选项。此命令应该适用于 Ubuntu 14.04 安装(从 17.10 开始仍然有效)

cat $(ps aux | grep -o '[/]var/lib/NetworkManager/\S*.lease') | grep dhcp-server-identifier
Run Code Online (Sandbox Code Playgroud)


Pab*_*chi 9

和:

其他的:


小智 5

在 Ubuntu 16.04 中你可以尝试

journalctl | grep DHCPACK
Run Code Online (Sandbox Code Playgroud)