Bagaimana cara saya meminta alamat IP baru dari server DHCP saya menggunakan Ubuntu Server?


26

Saya tahu ada perintah sederhana untuk ini, tetapi bagaimana cara saya memberi tahu server Ubuntu saya untuk meminta alamat IP baru dari server DHCP pada eth0?


+1 karena menjadi Pelit Panas (w / pic!), Haha.
nedm

Jawaban:



34

Untuk melepaskan alamat IP saat ini:

$ sudo dhclient -r

Untuk mendapatkan sewa baru:

$ sudo dhclient 

3
OP mungkin ingin menjalankan ini di dalam layar dan benar-benar melakukan "sudo dhclient -r <interface> && sudo dhclient <interface>" jika tidak konektivitas dapat terputus dan ia perlu masuk ke situs untuk memulihkan tautan jaringan. Itu jika tidak ada manajemen band yang terpasang.
serverhorror

Menarik, mengapa melakukan rilis, kemudian mendapatkan lebih baik daripada hanya sudo dhclient eth0? Terima kasih!
Heat Miser

4
Hanya me-restart dhclient biasanya akan menetapkan ulang alamat IP yang sama jika server tidak keberatan. Jika Anda melepaskan alamatnya terlebih dahulu, server dan klien tahu untuk menegosiasikan ulang yang baru (walaupun mungkin bisa sama dengan yang Anda miliki).
Martijn Heemels

13

Masalah lain yang saya alami adalah dhclient terus meminta IP yang sama dari server DHCP. Menjalankan perintah dhclient -rtidak menyelesaikan ini. Oleh karena itu, setelah membaca man pageslebih teliti, saya menemukan bahwa jika saya mengedit file /var/lib/dhcp3/dhclient.leasesuntuk menghapus semua referensi sewa ke adaptor tertentu, dalam kasus saya eth0. Kemudian menjalankan sudo dhclient eth0bekerja seperti yang diharapkan dan memberi saya IP baru / berbeda.

Situasi saya mungkin unik, tetapi mengharuskan server saya menarik alamat dari rentang yang lebih tinggi dari yang sebelumnya dikeluarkan. Server DHCP telah dikonfigurasikan untuk melakukan ini, kecuali jika alamat IP tertentu diminta terlepas dari kisaran. Karena dhclientsecara khusus meminta alamat IP lama, berdasarkan informasi dalam dhclient.leasesfile, server DHCP selalu mengembalikan alamat yang sama.


Setuju: situasi yang saya miliki dan hanya perlu mengingatkan diri saya lagi tentang situasi di mana Anda memiliki sistem yang mendapatkan alamat IP acak, tetapi Anda menetapkan alamat IP baru (berbeda) yang disewa secara statis, ditugaskan oleh MAC. Masalahnya adalah bahwa jika klien DHCP Anda masih memiliki sewa yang valid di dhclient.leases, itu sebenarnya tidak meminta server untuk alamat IP baru: itu hanya menggunakan kembali sewa yang dianggap masih valid. Jadi dhclient -r secara efektif tidak melakukan apa-apa. Menghapus file sewa terlebih dahulu, diikuti oleh dhclient -r, dan semuanya baik-baik saja.
liamf

-2

Ketika Anda menjalankan "sudo /etc/init.d/dhcp3-server restart" apakah itu memberikan sesuatu seperti:

Menghentikan server DHCP: dhcpd3. Memulai server DHCP: dhcpd3.

Jika tidak, itu tidak berjalan ...

Maka pastikan, periksa apakah klien Anda mengirim permintaan untuk sewa, lihat file /var/logs/deamon.log Anda. Seharusnya ada banyak permintaan DHCP di sana. Jika tidak, masalahnya ada pada klien Anda (dan kami akan mengambilnya dari sana).

Jika klien Anda baik-baik saja, lupakan saja firestarter untuk saat ini dan mari kita coba membuatnya bekerja tanpanya. Untuk memastikan server DHCP Anda aktif dan berjalan. Ketik "sudo /etc/init.d/dhcp3-server stop" dan kemudian "sudo /etc/init.d/dhcp3-server start". Maka itu harus berjalan, dengan asumsi itu terpasang dengan benar di komputer Anda.

Saya telah memasukkan salinan file dhcpd.conf saya.

Terakhir, lihat file server / var / log / messages Anda jika mendapat permintaan dan balas dengan leasing yang valid. Ini juga mungkin memberi Anda ide apa yang salah dengan file konfigurasi Anda (jika ada yang salah dengan itu tentu saja). Jika Anda tidak dapat melakukan hal ini, poskan file pesan Anda dan saya akan memeriksanya nanti.

semoga berhasil

Rajat


2
Dia berbicara tentang klien DHCP, bukan server.
mikl
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.