回答:
IPを提供しているDHCPサーバーを見つけるには、キーボードのCtrl+ Alt+ Tを押してターミナルを開きます。開いたら、以下のコマンドを実行します。
cat /var/lib/dhcp3/dhclient.leases
または、grepコマンドを使用してDHCPサーバーのアドレスを取得することもできます。
grep dhcp-server-identifier /var/lib/dhcp3/dhclient.leases
または
grep dhcp-server-identifier /var/lib/dhcp/dhclient.leases
Ubuntu 14.04、16.04、および17.10の場合は、次のものを使用できます。
dhclient -d -nw eth0
出力例:
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.
dhclient
(つまりdhclient -d -nw eth0
)はすでに実行中のdhclient
プロセスに干渉し、新しいIPアドレスが発生しました。
Ubuntu 14.04では、/var/lib/dhcp/dhclient.leases
空です。実際のリースファイルは、dhclient
viaのコマンドラインで確認できますps
。-lf
オプションを探します。このコマンドは、Ubuntu 14.04インストールで機能するはずです(17.10でも有効です)。
cat $(ps aux | grep -o '[/]var/lib/NetworkManager/\S*.lease') | grep dhcp-server-identifier
dhclient.leases
空ではありません。
Ubuntu 16.04では、試すことができます
journalctl | grep DHCPACK
dhclient
、systemd-networkdでも動作しますか?
と:
sudo nmap --script broadcast-dhcp-discover -e eth0
sudo nmap --script broadcast-dhcp6-discover -6 # DHCPv6
sudo dhcpdump -i eth0
sudo tcpdump -i eth0 -nev udp port 68
その他:
dhcp_probe
(dhcp-probe
パッケージ)