web-dev-qa-db-fra.com

Comment libérer une adresse IP et renouveler depuis la ligne de commande?

J'utilise les versions modernes d'Ubuntu qui utilisent network-manager et je voudrais publier et renouveler mes paramètres réseau via la ligne de commande.

Autrefois, quand Ubuntu utilisait le fichier interfaces, je faisais simplement: Sudo /etc/init.d/networking restart, mais cela ne fonctionne plus.

Je recherche une fonctionnalité similaire à ipconfig /release et ipconfig /renew de Windows.

Comment puis-je publier et renouveler les paramètres réseau à partir de l'interface de ligne de commande?

1
David

Pour libérer et renouveler l'adresse IP, il faut:

Sudo dhclient -r eth0
Sudo dhclient eth0

Ou vous pouvez essayer un one-liner qui récupère le nom Ethernet par défaut de netstat:

NIC=$(netstat -r | awk '/default/ {print $NF}' | head -1); Sudo dhclient -r $NIC && Sudo dhclient $NIC

De la page de manuel dhclient:

       -r     Release the current lease and stop the running  DHCP  client  as
              previously  recorded  in  the  PID file.  When shutdown via this
              method dhclient-script will be executed with the specific reason
              for calling the script set.  The client normally doesn't release
              the current lease as this is not required by the  DHCP  protocol
              but  some  cable ISPs require their clients to notify the server
              if they wish to release an assigned IP address.

J'espère que cela t'aides!

3
Terrance

Pour ce faire, vous pouvez, par exemple, demander au gestionnaire de réseau de déconnecter brièvement le périphérique et de le reconnecter:

nmcli device disconnect wlan0; nmcli device connect wlan0 

(remplacez wlan0 par le nom de périphérique correct sur votre système)

1
guntbert