dhclient และ dhcpcd ความแตกต่างที่แท้จริง


13

ฉันไม่สามารถเข้าใจความแตกต่างจากหน้าคน ฉันเห็นว่าภูตคืออะไรและอีกอันคือลูกค้า แต่นั่นหมายความว่าในทางปฏิบัติเมื่อใช้คำสั่ง? นอกจากนี้ความแตกต่างระหว่างไคลเอนต์และ daemon ในกรณีนี้คืออะไรไม่ใช่แค่ข้อกำหนด (ไคลเอนต์และ daemon) แต่เป็นหน้าที่ที่ชาญฉลาด? แก้ไข: งานแบ่งอย่างไรถ้าลูกค้าอัพเดทข้อมูลเกี่ยวกับลูกค้าสิ่งที่เป็นวัตถุประสงค์ของภูต ฉันกำลังพูดถึงภูตลูกค้าในกรณีนี้ dhcpcd ไม่ใช่ dhcpd ทั้งสองมาติดตั้งโดยค่าเริ่มต้นกับ Linux บางรุ่นและดูเหมือนจะแบ่งปันหน้าที่ของลูกค้า dhcp

NAME dhcpcd - DHCP ไคลเอ็นต์ daemon

Name
dhclient - Dynamic Host Configuration Protocol Client 

คำตอบ:


17

ISC จัดให้มี dhclient และเช่นนี้มันทำหน้าที่เป็นข้อมูลอ้างอิง dhcpcd ที่มีน้ำหนักเบามากขึ้นนั้นค่อนข้างทันสมัย ทั้ง dhcpcd และ dhclient เป็นไคลเอ็นต์ DHCP ที่มีความสามารถอย่างเต็มที่ Dhclient ไม่ใช่ยูทิลิตี้ "ครั้งเดียว":

ผู้ชาย dhclient

-w ทำงานต่อไปแม้ว่าจะไม่พบอินเทอร์เฟซการออกอากาศ โดยปกติแล้วไคลเอ็นต์ DHCP จะออกหากไม่สามารถระบุอินเทอร์เฟซเครือข่ายเพื่อกำหนดค่าได้ ( ... )

นั่นเป็นพฤติกรรมเริ่มต้นของ dhcpcd


DHCP เป็นเป้าหมายที่เคลื่อนไหวได้โดยมีผู้ขายหลายราย (โดยเฉพาะ Microsoft) แนะนำการเบี่ยงเบนต่าง ๆ จากมาตรฐาน


2

เดเบียนเสนอdhcpcdแพ็คเกจ คำอธิบายแพ็กเกจอ่านดังนี้:

Simple configuration: supports executions of a script when the IP address changes.

dhclientมักจะใช้ในลักษณะนี้: dhclient -v eth0หรือคล้ายกัน - อะไรจะเกิดขึ้นก็คือว่ามันจะส่งออกอากาศออกจากeth0และถ้าตอบกลับเซิร์ฟเวอร์ DHCP eth0ก็จะนำข้อมูลที่ได้รับไป จากนั้นจะออก มันจะไม่ตรวจสอบอินเตอร์เฟสหลังจากนั้น ฉันไม่ได้ใช้dhcpcdแต่ฉันคิดว่านั่นคือจุดประสงค์

คุณจะใช้dhclientหากสิ่งต่าง ๆ เกิดความสับสนและคุณต้องการดึงข้อมูล IP ใหม่จากเซิร์ฟเวอร์ DHCP ด้วยตนเอง เครื่องมือที่ดีที่จะมีและนั่นคือเหตุผลที่ดิสทริบิวชันหลาย ๆ คนรวมเอาไว้


2

dhclient เป็นไคลเอนต์ one-shot - มันติดต่อกับเซิร์ฟเวอร์เพียงครั้งเดียวและครั้งเดียวเท่านั้นที่จะร้องขอหรือตรวจสอบที่อยู่ IP ของลูกค้า

ในทางตรงกันข้าม dhcpcd ทำงานในพื้นหลังและจัดการคำร้องขอใหม่อย่างแข็งขันหลังจากเวลาการเช่าหมดอายุ ฯลฯ pp โดยไม่จำเป็นต้องเรียกอีกครั้ง

BTW ไม่สับสน dhcpcd และ dhcpd หลังคือเซิร์ฟเวอร์ dhcp - นั่นคือแจกแอดเดรสให้กับอุปกรณ์เครือข่ายเมื่อกำหนดค่าให้ทำเช่นนั้น โดยทั่วไปคุณจะไม่ใช้ dhcpd บนคอมพิวเตอร์เว้นแต่คุณจะใช้คอมพิวเตอร์เครื่องนั้นเพื่อจัดการที่อยู่ IP สำหรับเครือข่ายทั้งหมด


2
Downvoting: ฉันไม่เห็นด้วย ฉันได้เห็น dhclient ยังคงทำงานอยู่และจัดการการต่ออายุสัญญาเช่า DHCP ข้อมูลของคุณอาจถูกต้องสำหรับซอฟต์แวร์ dhclient บางรุ่น แต่ไม่ใช่ ISC dhclient (ซึ่งโดยปกติจะเป็นรุ่นอ้างอิง) ลองตรวจสอบดูว่าอะไรทำงานหลังจาก dhclient ทำสิ่งนั้นเสร็จแล้ว คุณอาจพบว่าแม้ว่ามันจะส่งคืนเครื่องกลับไปที่พรอมต์คำสั่ง แต่ก็ยังคงทำงานอยู่
TOOGAM

2

ดูเหมือนว่า ISC dhclient ไม่ใช่ไคลเอนต์นัดเดียว มันเป็นหน้าคนพูดว่า:

The DHCP client will normally run in the foreground until it has 
configured an interface, and then will revert to running in the 
back-ground.

คุณสามารถใช้แฟล็ก -1 เพื่อขอให้ dhclient ลองเพียงครั้งเดียวเพื่อรับ IP จากนั้นออกเมื่อล้มเหลว จากหน้าคน:

The -1 flag cause dhclient to try once to get a lease.  If it 
fails, dhclient exits with exit code two.
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.