Saya memiliki dua antarmuka di komputer saya, eth0
dan eth1
.
Kedua subnet memiliki server DHCP. Bagaimana saya bisa menggunakan dhclient
untuk memperbarui alamat IP untuk kedua antarmuka?
Jika aku melakukan:
dhclient -r && dhclient eth0
Memperbarui IP aktif eth0
. Lalu, jika saya hanya ingin melakukan:
dhclient eth1
Gagal dengan kesalahan:
dhclient(22421) is already running - exiting.
Dapat saya lakukan:
dhclient -r && dhclient eth1
Tetapi dhclient -r
bagian ini melepaskan kontrak dan saya kehilangan alamat IP eth0
juga.
Untuk saat ini, satu-satunya cara saya telah berhasil melakukan apa yang saya inginkan adalah untuk menjalankan dhclient
untuk eth0
, brutal membunuhnya, dan menjalankannya pada eth1
: Aku berakhir dengan IP baru pada kedua interface.
Saya juga diuji dengan dhclient -x
bukannya dhclient -r
, tidak berhasil.
Tentunya, ini bukan cara untuk pergi!
EDIT:
Dua jawaban yang disarankan untuk melakukan dhclient -r eth0 eth1 && dhclient eth0 eth1
ini, memang membatasi panggilan siaran ke antarmuka ini. Tetapi server DHCP pertama yang menjawab akan menjadi satu-satunya yang digunakan, sehingga menghasilkan IP baru pada satu antarmuka dan tidak keduanya. Lihat di sini, kita dapat melihat DHCPDISCOVER
panggilan pada kedua antarmuka, tetapi DHCPREQUEST
hanya dilakukan pada eth0
, antarmuka pertama melalui mana server DHCP ditemukan:
Listening on LPF/eth0/0a:00:27:00:00:00
Sending on LPF/eth0/0a:00:27:00:00:00
Listening on LPF/eth1/84:8f:69:d3:d4:a1
Sending on LPF/eth1/84:8f:69:d3:d4:a1
Sending on Socket/fallback
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 5 (xid=0x170fcb67)
DHCPDISCOVER on eth1 to 255.255.255.255 port 67 interval 4 (xid=0x115a24c3)
DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x170fcb67)
DHCPOFFER from 192.168.1.1
DHCPACK from 192.168.1.1 (xid=0x170fcb67)
bound to 192.168.1.4 -- renewal in 1710 seconds.
sumber
Ide # 1: Coba lewati 2 antarmuka ke dhclient
Jika Anda melihat halaman manual untuk
dhclient
Anda akan melihat bahwa pada akhir penggunaan contoh bit[ if0 [ ...ifN ]
. Ini menyiratkan bahwa Anda dapat menjalankandhclient
dan mengirimkannya beberapa antarmuka yang ingin Anda jalankan.kutipan dari halaman manual dhclient
Jadi, Anda harus bisa
dhclient
melepaskan pada banyak antarmuka dan menghubungkannya juga.Gagasan # 2: Lihatlah bagaimana NetworkManager melakukannya
Inilah cara NetworkManager mengatur
dhclient
sistem saya. Anda dapat mencoba memanggil dhclient kedua secara eksplisit dengan argumen.sumber
dhclient -r && dhclient eth0 && dhclient -v eth1
dhclient(1155) is already running - exiting.