Come rinnovo il mio contratto di locazione DHCP?


56

A corto di riavvio, come posso rilasciare e rinnovare il mio contratto di locazione DHCP? Sarebbe utile conoscere una GUI e un metodo terminale.

In particolare, vorrei sapere se esiste un modo per farlo senza richiedere privilegi di amministratore.

Risposte:


18

Nel selettore a discesa della rete dalla barra delle applicazioni puoi premere la rete a cui sei già connesso, questo farà sì che il gestore della rete richieda un nuovo contratto di locazione da un server DHCP.

testo alternativo

(Questo funziona anche per le reti cablate, ma non credo che funzioni per le connessioni PPP (banda larga mobile))


47

Per rinnovare il contratto di locazione dhcp al terminal:

sudo dhclient -r; sudo dhclient

10
Penso che sudo service networking restartsia un modo migliore di andare. Quello che suggerisci non ha funzionato per me su una scatola 11.10 con dhclient3. Invece, ho finito con due client DHCP in esecuzione: uno dhclient3e uno dhclient. Vedi ubuntuforums.org/showthread.php?t=1868368
Adam Monsen

@AdamMonsen Il riavvio del servizio di rete funziona effettivamente con NetworkManager?
rakslice,

1
@AdamMonsen riavviare la rete non sembra rinnovare il contratto di locazione dhcp per me
dogmatic69

sudo service network-manager restartin Ubuntu 13.10 il desktop a 64 bit sembra riavviare correttamente le cose di rete e rinnovare il mio contratto di locazione DCHP. (Da askubuntu.com/a/230751/2273 )
Adam Monsen,

4
Utile da sapere per il debug: su Ubuntu 14.04 sudo service network-manager restartnon ha completamente rinnovato il lease IP da DHCP. Invia semplicemente un Requestpacchetto DHCP invece di a Discover. Se si desidera solo rinnovare il contratto di locazione è sufficiente, ma se si esegue il debug di DHCP si desidera utilizzare la soluzione originale.
gerlos,

31

Nel mio caso ho dovuto specificare quale carta rinnovare:

Per prima cosa rilascia l'attuale indirizzo IP:

sudo dhclient -r eth0

quindi rinnovare l'indirizzo IP

sudo dhclient eth0

3
Questa è la risposta corretta se hai più di un'interfaccia.
Tek,

Meglio: unisci i comandi con AND - sudo dhclient -r enp7s0 && sudo dhclient enp7s0(sostituisci con il tuo dispositivo di rete eth)
bshea,

Per favore modifica questa risposta per unirli insieme, sono appena stato espulso da una scatola remota provandoli separatamente.
Graham Russell,

8

Maverick viene fornito con nmcliun'interfaccia da riga di comando per il gestore della rete.

Non riesco a vedere un modo semplice per dirgli di rinnovare un contratto di locazione, ma in esecuzione:

nmcli con

Ti dà un elenco di connessioni e in esecuzione:

nmcli con down id 'Connection Name'
nmcli con up id 'Connection Name'

Abbassa e ricollega la connessione. Invece potrebbe essere possibile fare qualcosa di simile con il dispositivo.

L'elenco delle connessioni sembra includere tutte le connessioni, quindi probabilmente funzionerà anche con connessioni PPTP e VPN.


1
Il mio server DHCP mostra ancora il contratto di locazione lì ... (Sto cercando di forzare un rilascio per rendere effettiva un'assegnazione statica)
Gert van den Berg

8

Funziona su Ubuntu 12.04 LTS:

sudo service network-manager restart

Quando lo faccio, Network Manager richiede un nuovo contratto di locazione DHCP.

Preferisco questo al (ri) riavvio manuale dhclientperché ho avuto problemi con processi dhclient non aggiornati (quelli non gestiti da Network Manager) riconfigurando spontaneamente e erroneamente le mie impostazioni di rete in punti casuali quando è meno conveniente.


1
Ancora rilevante su Ubuntu 16.04. dhclient -rsemplicemente non fa nulla con un codice di uscita riuscito altrimenti. :-(
studog

Questo ha funzionato benissimo il 18.04!
Roel Van de Paar,

3

Se utilizzi una systemdversione basata di Ubuntu senza una GUI (ovvero la versione del server), questo è il modo per rinnovare il contratto di locazione DHCP:

sudo systemctl restart systemd-networkd

Nota: se si è connessi tramite l'interfaccia di cui si sta rinnovando il lease DHCP, è possibile che si venga disconnessi, a meno che non si sia connessi tramite un'interfaccia configurata staticamente o la console.


Lo stavo testando dhcpdumpascoltando su un altro terminale. Sembrava non funzionare, solo il dhclientmodo.
Pablo A

1

Dopo aver appena eseguito l'aggiornamento a Maverick Meerkat Beta 1, qualcosa si è rotto nella mia configurazione standard, ethilla vanilla di cui non ho ancora eseguito il debug. La soluzione rapida e sporca è stata

sudo dhclient

che nota che c'era già un cliente (forse morto) e ottiene un nuovo contratto di locazione:

There is already a pid file /var/run/dhclient.pid with pid 2436
killed old client process, removed PID file
Internet Systems Consortium DHCP Client V3.1.3
Listening on LPF/eth0/00:1a:92:24:9c:85
Sending on   LPF/eth0/00:1a:92:24:9c:85
Sending on   Socket/fallback
DHCPDISCOVER on vboxnet0 to 255.255.255.255 port 67 interval 3
DHCPREQUEST of 192.168.2.2 on eth0 to 255.255.255.255 port 67
DHCPACK of 192.168.2.2 from 192.168.2.1
bound to 192.168.2.2 -- renewal in 118389830 seconds.

Questa non è una correzione, solo un trucco. Seguirò quando immagino cosa è andato male.


1

In mancanza di questa specifica capacità nmcli, credo che la migliore soluzione CLI sia quella di rilasciare ed eliminare l'istanza dhclient gestita da NetworkManager, anziché avviarne una nuova. NM ripristinerà quindi automaticamente il backup, evitando di dover riavviare l'intera infrastruttura NM.

sudo dhclient -v -r -pf /run/sendsigs.omit.d/network-manager.dhclient-eth0.pid
  • -v - rendere prolisso
  • -r - rilasciare e spegnere
  • -pf - file pid dell'istanza di NM
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.