Câu trả lời:
Ngay cả khi bạn không sử dụng máy chủ theo dõi Nagios, bạn có thể grep nhị phân check_dhcp hoặc biên dịch nó từ nguồn và sử dụng kiểm tra để kiểm tra DHCP-Server. Ví dụ
./check_dhcp -v -s <dhcp_server_address> -r <expected_ip_address> -m <mac_address_touse>
Dựa trên câu trả lời này , giả sử bạn đã cài đặt nmap ( sudo apt install nmap
):
sudo nmap --script broadcast-dhcp-discover
Thêm -e $interface
tùy chọn nếu bạn có nhiều giao diện mạng. (Ví dụ nmap --script broadcast-dhcp-discover -e eth0
:)
Đầu ra mẫu:
Starting Nmap 7.01 ( https://nmap.org ) at 2017-09-27 17:40 CEST
Pre-scan script results:
| broadcast-dhcp-discover:
| Response 1 of 1:
| IP Offered: 192.168.81.94
| DHCP Message Type: DHCPOFFER
| Server Identifier: 192.168.81.2
| IP Address Lease Time: 5m00s
| Subnet Mask: 255.255.255.0
| Router: 192.168.81.2
| Domain Name Server: 192.168.81.2
| Domain Name: example.lan
| NTP Servers: 192.168.81.10, 192.168.81.2
| NetBIOS Name Server: 192.168.81.10
|_ NetBIOS Node Type: 8
WARNING: No targets were specified, so 0 hosts scanned.
Nmap done: 0 IP addresses (0 hosts up) scanned in 0.66 seconds
Hoặc đầu ra này trên một mạng khác, với nmap v. 6:
Starting Nmap 6.00 ( http://nmap.org ) at 2017-09-27 17:42 CEST
Pre-scan script results:
| broadcast-dhcp-discover:
| IP Offered: 192.168.4.101
| DHCP Message Type: DHCPOFFER
| Server Identifier: 192.168.4.1
| IP Address Lease Time: 7 days, 0:00:00
| Subnet Mask: 255.255.255.0
| Time Offset: 7200
| Router: 192.168.4.1
| Domain Name Server: 208.91.112.53, 208.91.112.52
| Renewal Time Value: 3 days, 12:00:00
|_ Rebinding Time Value: 6 days, 3:00:00
WARNING: No targets were specified, so 0 hosts scanned.
Nmap done: 0 IP addresses (0 hosts up) scanned in 1.15 seconds
DE:AD:CO:DE:CA:FE
) và do đó sẽ không hoạt động nếu máy chủ DHCP của bạn được định cấu hình với danh sách trắng.
dhcpdump
là tốt để đánh hơi và hiển thị các gói DHCP trên mạng.
Ví dụ
# dhcpdump -i eth0
---------------------------------------------------------------------------
TIME: 2015-11-27 11:41:37.379
IP: 0.0.0.0 (0:11:b9:5:0:b8) > 255.255.255.255 (ff:ff:ff:ff:ff:ff)
OP: 1 (BOOTPREQUEST)
HTYPE: 1 (Ethernet)
HLEN: 6
HOPS: 0
XID: abce9327
SECS: 0
FLAGS: 0
CIADDR: 0.0.0.0
YIADDR: 0.0.0.0
SIADDR: 0.0.0.0
GIADDR: 0.0.0.0
CHADDR: 00:11:b9:05:00:b8:00:00:00:00:00:00:00:00:00:00
SNAME: .
FNAME: .
OPTION: 53 ( 1) DHCP message type 1 (DHCPDISCOVER)
OPTION: 57 ( 2) Maximum DHCP message size 576
OPTION: 55 ( 4) Parameter Request List 1 (Subnet mask)
3 (Routers)
28 (Broadcast address)
6 (DNS server)
---------------------------------------------------------------------------
Bạn có thể sử dụng nó cùng với một công cụ khác để thực hiện các yêu cầu DHCP hoặc chỉ sử dụng nó để xem DHCP / thiết bị truy vấn DHCP.
brew install dhcpdump
.
hoặc bạn có thể thử dhcpcd
trong chế độ thử nghiệm:
dhcpcd -T eth0
dhcpcd -T eth0 -t 2
để hết thời gian chờ sau 2 giây
Tôi đã viết một chương trình thử nghiệm DHCP trước đây, hoạt động trên Windows và POSIX:
ldc2
) để có được các nhị phân tĩnh vớildc2 -link-defaultlib-shared=false -static -L=-lphobos2-ldc -L=-lz dhcptest.d
Tại sao không chỉ thực hiện một yêu cầu DHCP?
dhclient
Đối với đầu ra dài dòng sử dụng:
pháp -v
-n
dường như bị hỏng trên ISC DHCP Client v4.2.4 trên Ubuntu 14 LTS?
-n
làm những gì bạn nghĩ nó làm.
Trên các hệ thống Debian-Ubuntu:
dhcpd -f
cung cấp thông tin phản hồi tốt và kiểm tra cấu hình.
Trên các hệ thống RH hãy thử:
/etc/rc.d/init.d/dhcpd configtest
nếu bạn sử dụng nagios, bạn có thể theo dõi nó bằng check_dhcp