โปรแกรมบรรทัดคำสั่งเพื่อทดสอบบริการ DHCP


คำตอบ:


10

แม้ว่าคุณจะไม่ใช้เซิร์ฟเวอร์การมอนิเตอร์ Nagios คุณสามารถ grep check_dhcpไบนารี่หรือรวบรวมจากแหล่งที่มาและใช้การตรวจสอบเพื่อทดสอบDHCP-เซิร์ฟเวอร์ เช่น

./check_dhcp -v -s <dhcp_server_address> -r <expected_ip_address> -m <mac_address_touse>

37

ตามคำตอบนี้สมมติว่าคุณได้ติดตั้ง nmap ( sudo apt install nmap):

sudo nmap --script broadcast-dhcp-discover

เพิ่ม-e $interfaceตัวเลือกหากคุณมีเครือข่ายมากกว่าหนึ่งอินเตอร์เฟส (ตัวอย่างเช่น: nmap --script broadcast-dhcp-discover -e eth0)

ตัวอย่างผลลัพธ์:

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

หรือผลลัพธ์นี้ในเครือข่ายอื่นโดยมี 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

นี่ไม่พบเซิร์ฟเวอร์ DHCP ของฉัน - จะต้องมีบางอย่างผิดปกติกับพีซีของฉัน ... อีเธอร์เน็ตใช้งานได้ไม่ใช่แค่นั้น
Jasen

โปรดทราบว่าสคริปต์นี้ใช้ที่อยู่ MAC คงที่ ( DE:AD:CO:DE:CA:FE) และดังนั้นจะไม่ทำงานหากเซิร์ฟเวอร์ DHCP ของคุณได้รับการกำหนดค่าด้วยรายการที่อนุญาต
Bob

@ Bob: ขอบคุณ นั่นเป็นเรื่องดีที่จะรู้
mivk

5

dhcpdump เหมาะสำหรับการดมและการแสดงแพ็กเก็ต DHCP บนเครือข่าย

เช่น

# 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)

---------------------------------------------------------------------------

คุณสามารถใช้ร่วมกับเครื่องมืออื่นเพื่อทำตามคำขอ DHCP หรือใช้เพื่อดูพีซี / อุปกรณ์ค้นหา DHCP


2
ยังสามารถใช้ได้สำหรับ MacOS brew install dhcpdumpผ่าน
fifi การเงิน

ดูเหมือนว่าจะใช้งานได้ก็ต่อเมื่อมีการรับส่งข้อมูล dhcp จริงในเครือข่าย
mivk

@mivk คุณจริงจังไหม?
เคนชาร์ป

2
@KenSharp ทำไม? ใช่. dhcpdump จะแสดงบางอย่างเมื่อไคลเอ็นต์บนเครือข่ายร้องขอที่อยู่ dhcp หากคุณไม่ต้องการที่จะรอและไม่ต้องการที่จะส่งคำขอ DHCP ด้วยตัวคุณเอง แต่จะเห็นว่าเครื่องใดจะตอบว่ามีการร้องขอหรือไม่หากนี่เป็นวิธีการแก้ปัญหา
mivk

@mivk ทำไม เพราะโปสเตอร์พูดอย่างนั้น
Duncan X Simpson


4

ฉันได้เขียนโปรแกรมไคลเอนต์ทดสอบ DHCP มาระยะหนึ่งแล้วทำงานบน Windows และ POSIX:

https://github.com/CyberShadow/dhcptest


เขียนใน D ... เป็นไปได้ (กับldc2) ที่จะได้รับไบนารีคงที่ด้วยldc2 -link-defaultlib-shared=false -static -L=-lphobos2-ldc -L=-lz dhcptest.d
Gert van den Berg

4

ทำไมไม่เพียงแค่ทำการร้องขอ DHCP

dhclient

สำหรับการใช้เอาต์พุต verbose:

dhclient -v


14
อาจเป็นเพราะจะทำให้ระบบของคุณใช้ IP ที่กำหนดโดยเซิร์ฟเวอร์ DHCP ซึ่งไม่ใช่สิ่งที่ต้องการเมื่อพยายามค้นหาว่ามีเซิร์ฟเวอร์ DHCP อันธพาลในเครือข่ายของเขาหรือไม่
ThiefMaster

6
ตัวเลือก -n ช่วยที่นี่?
akostadinov

1
ตัวเลือก-nน่าจะใช้งานไม่ได้กับ ISC DHCP Client v4.2.4 บน Ubuntu 14 LTS
Josip Rodin

ฉันไม่คิดว่า-nจะทำในสิ่งที่คุณคิด
Jasen

explshell.com/explain?cmd=dhclient+-n : "อย่ากำหนดค่าอินเทอร์เฟซใด ๆ นี่น่าจะเป็นประโยชน์มากเมื่อใช้ร่วมกับแฟล็ก -w"
mwfearnley



โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.