DHCPpool 192.168.1.0/24.10.11.12.13.14DORA: Discover · Offer · Request · Ack

ดีเอชซีพี

11 นาทีอ่านเครือข่าย

อุปกรณ์ทุกเครื่องที่คุณเสียบเข้ากับเครือข่ายจะได้รับที่อยู่ IP, เซิร์ฟเวอร์ DNS และเส้นทางเริ่มต้นโดยที่คุณไม่ต้องพิมพ์อะไรเลย สิ่งมหัศจรรย์นั้นคือ DHCP — Dynamic Host Configuration Protocol — ทำงานอย่างเงียบๆ ในพื้นหลังของการเชื่อมต่อ Wi-Fi ทุกตัวและปลั๊กอีเทอร์เน็ตทุกตัว การทำความเข้าใจว่าสิ่งนี้ทำอะไรทำให้พฤติกรรมเครือข่ายหลายอย่างสมเหตุสมผล

เนื้อหาบทความฉบับเต็มมีให้เป็นภาษาอังกฤษด้านล่าง

DHCP (Dynamic Host Configuration Protocol) เป็นโปรโตคอลที่จะกำหนดที่อยู่ IP และการกำหนดค่าเครือข่ายอื่นๆ ให้กับอุปกรณ์บนเครือข่ายโดยอัตโนมัติ ได้รับการกำหนดมาตรฐานใน RFC 2131 ในปี 1997 โดยสืบทอดจากโปรโตคอล BOOTP รุ่นก่อนหน้า เครือข่าย Wi-Fi และอีเทอร์เน็ตขององค์กรทุกเครือข่ายใช้งาน ผู้ใช้ส่วนใหญ่ไม่เคยโต้ตอบกับมันโดยตรง

สิ่งที่ DHCP มอบให้กับไคลเอนต์

A การตอบสนอง DHCP ทั่วไปประกอบด้วย:

  • IP ที่อยู่ — ที่อยู่ของลูกค้าบนเครือข่ายนี้ พร้อมระยะเวลาการเช่า
  • Subnet mask — กำหนดที่อยู่ในท้องถิ่นและที่เข้าถึงได้ผ่าน เราเตอร์
  • เกตเวย์เริ่มต้น — IP ของเราเตอร์สำหรับการรับส่งข้อมูลขาออก
  • DNSเซิร์ฟเวอร์ — โดยทั่วไปแล้วเราเตอร์เองหรือตัวแก้ไขสาธารณะ
  • Domain suffix — สำหรับการแก้ไขแบบสั้น ชื่อโฮสต์
  • NTP เซิร์ฟเวอร์ — บางครั้ง สำหรับการซิงค์เวลา
  • ตัวเลือกเฉพาะของผู้จำหน่าย (เซิร์ฟเวอร์บูต PXE การตั้งค่า VoIP ฯลฯ )

DORA exchange

การจับมือ DHCP สี่ขั้นตอน — DORA — เกิดขึ้นทุกครั้งที่ไคลเอนต์ เข้าร่วม:

  1. DHCPDISCOVER — การออกอากาศของลูกค้า "มีใครเสนอ IP หรือไม่" เป็น 255.255.255.255 (ยังไม่มี IP หมายความว่าไม่มี unicast)
  2. DHCPOFFER — เซิร์ฟเวอร์ DHCP ตอบกลับด้วย IP ที่เสนอและพารามิเตอร์การเช่า
  3. DHCPREQUEST — ลูกค้าร้องขอ IP ที่นำเสนออย่างเป็นทางการ (สิ่งนี้มีการออกอากาศด้วยเช่นกัน ดังนั้นเซิร์ฟเวอร์ DHCP หลายเครื่องจึงรู้ว่าใครเป็นผู้ชนะ)
  4. DHCPACK — เซิร์ฟเวอร์ยืนยันการเช่า

การเช่ามีระยะเวลาคงที่ (มักจะ 24 ชั่วโมงสำหรับเครือข่ายในบ้าน และนานกว่าสำหรับองค์กร) ลูกค้าต่ออายุสัญญาเช่าเมื่อถึงจุดกึ่งกลาง หากการต่ออายุล้มเหลว จะพยายามอีกครั้งที่ 87.5% ของสัญญาเช่าและสุดท้ายก่อนหมดอายุ หากการต่ออายุไม่สำเร็จ IP จะถูกปล่อยออกมาและไคลเอนต์จะเริ่มต้นใหม่

แบบคงที่ ไดนามิก และการสำรอง

  • การมอบหมายแบบคงที่ — ไคลเอนต์ได้รับการกำหนดค่าด้วยตนเองด้วย IP ไม่ได้ใช้ DHCP ใช้งานได้ไม่ดีนัก สงวนไว้สำหรับกรณีพิเศษ (ตัวเราเตอร์เอง เซิร์ฟเวอร์หลัก)
  • Dynamic allowance — DHCP เลือก IP ฟรีจากพูล ไคลเอนต์ได้รับทุกอย่างที่มีอยู่
  • DHCP booking — DHCP รู้ว่าที่อยู่ MAC ที่เฉพาะเจาะจงควรได้รับ IP ที่เฉพาะเจาะจงเสมอ ความสะดวกสบายแบบคงที่พร้อมความยืดหยุ่นของ DHCP เราเตอร์ตามบ้านส่วนใหญ่รองรับสิ่งนี้

DHCP รีเลย์

DHCP อาศัยการออกอากาศ ซึ่งไม่ข้ามเราเตอร์ สำหรับเครือข่ายหลายซับเน็ต (องค์กรส่วนใหญ่) เราเตอร์จะรัน DHCP Relay Agent ที่จะจับการออกอากาศและส่งต่อไปยังเซิร์ฟเวอร์ DHCP แบบรวมศูนย์ นี่คือวิธีที่เครือข่ายองค์กรที่มีซับเน็ตหลายร้อยซับเน็ตสามารถรันเซิร์ฟเวอร์ DHCP หนึ่งเซิร์ฟเวอร์ แทนที่จะเป็นหนึ่งเซิร์ฟเวอร์ต่อซับเน็ต

DHCPv6 และ SLAAC

IPv6 ใช้แนวทางที่แตกต่างออกไป SLAAC (การกำหนดค่าที่อยู่ไร้สถานะอัตโนมัติ) ช่วยให้ไคลเอนต์รับ IP ของตัวเองจากคำนำหน้าเครือข่ายที่โฆษณาโดยเราเตอร์ พร้อมด้วยตัวระบุอินเทอร์เฟซแบบสุ่ม การกำหนดสถานะแบบ DHCP ก็สามารถทำได้เช่นกัน (DHCPv6) แต่เป็นทางเลือก เครือข่าย IPv6 จำนวนมากใช้ไฮบริด: SLAAC สำหรับที่อยู่, DHCPv6 สำหรับ DNS และตัวเลือกอื่นๆ

DHCP โจมตี

  • Rogue เซิร์ฟเวอร์ DHCP ผู้โจมตีที่เชื่อมต่อกับเครือข่ายจะรันเซิร์ฟเวอร์ DHCP ของตัวเองที่แจกแจงการตั้งค่าที่เป็นอันตราย โดยชี้เกตเวย์และ DNS ไปที่ IP ที่ผู้โจมตีควบคุม การบรรเทาผลกระทบ: การสอดแนม DHCP บนสวิตช์
  • DHCP ความอดอยาก ทำให้เซิร์ฟเวอร์ DHCP ถูกต้องตามกฎหมายด้วยการร้องขอโดยใช้ที่อยู่ MAC ปลอมแปลงจนกว่ากลุ่มที่อยู่จะหมด จากนั้นจึงเปิดเซิร์ฟเวอร์ปลอมขึ้นมา การบรรเทาผลกระทบ: การจำกัดอัตรา, นโยบายการรวมแหล่งที่มาของ MAC, ตัวเลือก
  • การปลอมแปลง, การจัดการตัวเลือก DHCP เพื่อแทรกเซิร์ฟเวอร์บูต DNS ที่เป็นอันตรายหรือเซิร์ฟเวอร์บูต PXE

DHCP การสอดแนมและ DAI (การตรวจสอบ ARP แบบไดนามิก) บนสวิตช์ที่ได้รับการจัดการถือเป็นการบรรเทาปัญหามาตรฐานในองค์กร เครือข่าย

ปัญหา DHCP ในทางปฏิบัติ

  • "เหตุใด IP ของฉันจึงเปลี่ยนแปลงอยู่ตลอดเวลา" ระยะเวลาการเช่าสั้นหรือการเปลี่ยนแปลงข้อมูลระบุตัวตนฝั่งอุปกรณ์ (การสุ่ม MAC บน Wi-Fi) กำหนดค่าการจอง DHCP หรือการเช่าระยะยาวสำหรับ IP ที่เสถียร
  • "อุปกรณ์ของฉันจะไม่เชื่อมต่อหลังจากลาพักร้อน" การเช่าหมดอายุนานและเราเตอร์/DHCP ลืมอุปกรณ์ ต่ออายุด้วย ipconfig /renew (Windows), dhclient -r (Linux) หรือสลับ Wi-Fi
  • "อุปกรณ์สองเครื่องมี IP เดียวกัน"เซิร์ฟเวอร์ DHCP ไม่ซิงค์ (หายาก) หรืออุปกรณ์กำหนดค่าด้วยตนเองให้ทับซ้อนกัน ใช้ DHCP เท่านั้น — อย่าผสมแบบคงที่และไดนามิกในช่วงเดียวกัน
  • "เครื่องพิมพ์ของฉันหายไป" IP ของเครื่องพิมพ์เปลี่ยนผ่าน DHCP และคิวการพิมพ์ยังคงชี้ไปที่อันเก่า วิธีแก้ไข: การสำรอง DHCP สำหรับเครื่องพิมพ์

DHCP ลายนิ้วมือ

รูปแบบของตัวเลือก DHCP ที่ไคลเอนต์ร้องขอเผยให้เห็นว่าเป็นอุปกรณ์ประเภทใด เครือข่ายมักจะบันทึกสิ่งนี้เพื่อติดตามจำนวนอุปกรณ์: iPhone, MacBook, แล็ปท็อป Windows, อุปกรณ์ IoT ที่ใช้ ESP32 ฐานข้อมูลลายนิ้วมือ (Fingerbank) จัดทำรายการลายนิ้วมือที่แตกต่างกันหลายร้อยรายการ ไม่ระบุตัวตนเป็นการส่วนตัว แต่มีประโยชน์สำหรับการจัดการเครือข่าย

คำถามที่พบบ่อย

ฉันสามารถรันเซิร์ฟเวอร์ DHCP ของตัวเองที่บ้านได้หรือไม่
เราเตอร์ของคุณทำงานอยู่แล้ว หากคุณต้องการเรียกใช้เซิร์ฟเวอร์ DHCP แยกต่างหาก (โฮมแล็บขั้นสูง การทดสอบเครือข่าย) ให้ปิด DHCP ของเราเตอร์ก่อน Pi-hole, dnsmasq, ISC DHCP และ Kea เป็นทางเลือกทั่วไป ผู้ใช้ส่วนใหญ่ไม่จำเป็นต้องมี
สัญญาเช่า DHCP คืออะไร
ระยะเวลาที่ไคลเอ็นต์ได้รับอนุญาตให้ใช้ IP ที่กำหนด หลังจากที่สัญญาเช่าหมดอายุ IP จะกลับสู่พูล ลูกค้าต่ออายุสัญญาเช่าก่อนหมดอายุ หากไคลเอนต์ยกเลิกการเชื่อมต่อ สัญญาเช่าจะหมดอายุในที่สุดและ IP สามารถนำมาใช้ซ้ำได้ เวลาเช่า 24 ชั่วโมงเป็นเรื่องปกติสำหรับเครือข่ายในบ้าน
เหตุใดบางครั้ง Wi-Fi ของฉันจึงกำหนด IP อื่นให้ฉัน
สัญญาเช่าหมดอายุและที่อยู่ถูกมอบหมายใหม่ให้กับบุคคลอื่น (ดังนั้น DHCP จึงเลือกที่อยู่อื่นสำหรับคุณในครั้งต่อไป) หรือการสุ่ม MAC บนอุปกรณ์ของคุณทำให้เครือข่ายเห็นว่าคุณเป็นอุปกรณ์ใหม่ กำหนดค่าการจอง DHCP เพื่อความเสถียร หรือยอมรับการเปลี่ยนแปลงเป็นสิทธิประโยชน์ด้านความเป็นส่วนตัว
DHCP สามารถตั้งค่าเซิร์ฟเวอร์ DNS ของฉันได้หรือไม่
ใช่ — นั่นเป็นหนึ่งในตัวเลือก DHCP มาตรฐาน ตัวแก้ไข DNS ของอุปกรณ์ของคุณคือสิ่งที่ DHCP บอกไว้ หากต้องการแทนที่ ให้ตั้งค่า DNS ด้วยตนเองในการตั้งค่าเครือข่ายของอุปกรณ์ (ซึ่งระบบปฏิบัติการส่วนใหญ่รองรับต่ออินเทอร์เฟซ) ไคลเอนต์ VPN ยังแทนที่ DNS ในขณะที่เชื่อมต่อ VPN
ความแตกต่างระหว่าง DHCP และ IP แบบคงที่คืออะไร
DHCP กำหนด IP โดยอัตโนมัติ IP แบบคงที่จะถูกพิมพ์ด้วยตนเอง สำหรับอุปกรณ์ส่วนใหญ่ DHCP นั้นถูกต้อง ในกรณีเฉพาะ (เซิร์ฟเวอร์ที่ต้องการ IP ที่เสถียร อุปกรณ์ที่ต้องเข้าถึงได้โดย IP ไม่ใช่ DNS) แบบคงที่หรือการจอง DHCP ใช้งานได้ การใช้งานแบบคงที่ด้วยตนเองนั้นหาได้ยากในเครือข่ายสมัยใหม่
อธิบาย DHCP: อุปกรณ์รับที่อยู่ IP โดยไม่มีการกำหนดค่าได้อย่างไร