ฉันจะขอที่อยู่ IP ใหม่จากเซิร์ฟเวอร์ DHCP ของฉันโดยใช้เซิร์ฟเวอร์ Ubuntu ได้อย่างไร


26

ฉันรู้ว่ามีคำสั่งง่าย ๆ สำหรับเรื่องนี้ แต่ฉันจะบอกอินสแตนซ์ของเซิร์ฟเวอร์ Ubuntu ของฉันเพื่อขอที่อยู่ IP ใหม่จากเซิร์ฟเวอร์ DHCP บน eth0 ได้อย่างไร


+1 เมื่อเป็น Heat Miser (w / pic!) ฮ่า ๆ
nedm

คำตอบ:



34

ในการปล่อยที่อยู่ IP ปัจจุบัน:

$ sudo dhclient -r

วิธีขอรับสัญญาเช่าใหม่:

$ sudo dhclient 

3
OP อาจต้องการเรียกใช้สิ่งนี้ภายในหน้าจอและทำ "sudo dhclient -r <interface> && sudo dhclient <interface>" มิฉะนั้นการเชื่อมต่ออาจสูญหาย นั่นคือถ้าไม่มีการจัดการนอกแถบความถี่
serverhorror

น่าสนใจทำไมจึงปล่อยให้เป็นอิสระแล้วได้ดีกว่า sudo dhclient eth0? ขอบคุณ!
Heat Miser

4
เพียงรีสตาร์ท dhclient มักจะกำหนดที่อยู่ IP เดียวกันถ้าเซิร์ฟเวอร์ไม่คัดค้าน หากคุณปล่อยที่อยู่ก่อนเซิร์ฟเวอร์และไคลเอนต์จะทราบว่าจะต้องเจรจาใหม่อีกครั้ง
Martijn Heemels

13

อีกปัญหาที่ฉันพบคือ dhclient ยังคงร้องขอ IP เดียวกันจากเซิร์ฟเวอร์ DHCP การรันคำสั่งdhclient -rไม่สามารถแก้ไขปัญหานี้ได้ ดังนั้นหลังจากที่ได้อ่านman pagesเพิ่มเติมอย่างละเอียดผมพบว่าถ้าผมแก้ไขไฟล์ที่จะลบการอ้างอิงเช่าทั้งหมดอะแดปเตอร์ที่เฉพาะเจาะจงในกรณีของฉัน/var/lib/dhcp3/dhclient.leases eth0จากนั้นทำงานsudo dhclient eth0ได้ตามที่คาดหวังและมอบหมาย IP ใหม่ / แตกต่าง

สถานการณ์ของฉันอาจไม่เหมือนกัน แต่ต้องการให้เซิร์ฟเวอร์ของฉันดึงที่อยู่จากช่วงที่สูงกว่าที่เคยใช้ เซิร์ฟเวอร์ DHCP ได้รับการกำหนดค่าให้ทำเช่นนี้เว้นแต่จะมีการร้องขอที่อยู่ IP เฉพาะไม่ว่าจะอยู่ในช่วงใดก็ตาม เนื่องจากdhclientเป็นการร้องขอที่อยู่ IP เก่าโดยเฉพาะตามข้อมูลในdhclient.leasesไฟล์เซิร์ฟเวอร์ DHCP จึงส่งคืนที่อยู่เดิมเสมอ


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

-2

เมื่อคุณเรียกใช้"sudo /etc/init.d/dhcp3-server restart"มันให้อะไรเช่น:

การหยุดเซิร์ฟเวอร์ DHCP: dhcpd3 การเริ่มต้นเซิร์ฟเวอร์ DHCP: dhcpd3

ถ้าไม่มันไม่ทำงาน ...

จากนั้นตรวจสอบให้แน่ใจว่าลูกค้าของคุณส่งคำขอให้เช่าดูที่ไฟล์ /var/logs/deamon.log ควรมีคำขอ DHCP จำนวนมากอยู่ในนั้น หากไม่มีปัญหาเกิดขึ้นกับลูกค้าของคุณ (และเราจะดำเนินการให้จากที่นั่น)

หากลูกค้าของคุณโอเคลืมเรื่อง firestarter สักครู่แล้วลองทำให้มันใช้งานไม่ได้ เพื่อให้แน่ใจว่าเซิร์ฟเวอร์ DHCP ของคุณพร้อมใช้งาน พิมพ์ "sudo /etc/init.d/dhcp3-server stop" แล้ว "sudo /etc/init.d/dhcp3-server start" จากนั้นควรจะทำงานโดยสมมติว่าติดตั้งอย่างถูกต้องในกล่องของคุณ

ฉันรวมสำเนาของไฟล์ dhcpd.conf ของฉันแล้ว

สุดท้ายให้ดูที่ไฟล์ / var / log / messages ของเซิร์ฟเวอร์ของคุณหากได้รับคำขอและตอบกลับด้วยสัญญาเช่าที่ถูกต้อง นอกจากนี้ยังอาจทำให้คุณมีความคิดว่ามีอะไรผิดปกติกับไฟล์กำหนดค่าของคุณ (หากมีบางอย่างผิดปกติกับไฟล์) หากคุณไม่สามารถทำสิ่งนี้ให้โพสต์ไฟล์ข้อความของคุณและฉันจะดูในภายหลัง

โชคดี

Rajat


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