¿Cómo renuevo mi contrato de arrendamiento de DHCP?

56

Antes de reiniciar, ¿cómo puedo liberar y renovar mi contrato de arrendamiento de DHCP? Sería útil conocer una GUI y un método de terminal.

Especialmente me gustaría saber si hay un medio para hacer esto sin requerir privilegios de administrador.

ændrük
fuente

Respuestas:

18

En el selector desplegable de red de la bandeja del sistema, puede presionar la red a la que ya está conectado, esto hará que el administrador de la red solicite una nueva concesión de un servidor DHCP.

texto alternativo

(Esto también funciona para redes cableadas, pero no creo que funcione para conexiones PPP (banda ancha móvil))

LassePoulsen
fuente
47

Para renovar su contrato de arrendamiento de dhcp en la terminal:

sudo dhclient -r; sudo dhclient
Sebastian Thürrschmidt
fuente
10
Creo que sudo service networking restartes un mejor camino a seguir. Lo que sugieres no funcionó para mí en un cuadro 11.10 con dhclient3. En cambio, terminé con dos clientes DHCP ejecutándose: uno dhclient3y uno dhclient. Ver ubuntuforums.org/showthread.php?t=1868368
Adam Monsen
@AdamMonsen ¿Reiniciar el servicio de red realmente funciona con NetworkManager?
rakslice
1
@AdamMonsen reiniciar redes no parece renovar el contrato de arrendamiento de dhcp para mí
dogmatic69
sudo service network-manager restarten Ubuntu 13.10, el escritorio de 64 bits parece reiniciar correctamente las cosas de la red y renovar mi contrato de arrendamiento de DCHP. (De askubuntu.com/a/230751/2273 )
Adam Monsen
44
Es útil saberlo para la depuración: en Ubuntu 14.04 sudo service network-manager restartno se renovó completamente el arrendamiento de IP de DHCP. Simplemente envía un Requestpaquete DHCP en lugar de a Discover. Si solo desea renovar su contrato de arrendamiento, es suficiente, pero si está depurando DHCP, desea utilizar la solución original.
gerlos
31

En mi caso, tuve que especificar qué tarjeta renovar:

Primero libere la dirección IP actual:

sudo dhclient -r eth0

luego renueve la dirección IP

sudo dhclient eth0
Daniel Mora
fuente
3
Esta es la respuesta correcta si tiene más de una interfaz.
Tek
Mejor: une los comandos con AND - sudo dhclient -r enp7s0 && sudo dhclient enp7s0(reemplaza con tu dispositivo de red eth)
bshea
Edite esta respuesta para unirlas, me acaban de sacar de una caja remota intentando estas por separado.
Graham Russell
8

Maverick viene con nmcliuna interfaz de línea de comandos para el administrador de red.

No puedo ver una manera simple de decirle que renueve un contrato de arrendamiento, pero ejecutando:

nmcli con

Obtiene una lista de conexión y ejecuta:

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

Toma la conexión hacia abajo y hacia atrás. En su lugar, es posible hacer algo similar con el dispositivo.

La lista de conexiones parece incluir todas las conexiones, por lo que probablemente esto también funcione con conexiones PPTP y VPN.

Mate
fuente
1
Mi servidor DHCP todavía muestra el contrato de arrendamiento allí ... (Estoy tratando de forzar un lanzamiento para que una asignación estática surta efecto)
Gert van den Berg
8

Esto funciona en Ubuntu 12.04 LTS:

sudo service network-manager restart

Cuando hago eso, Network Manager solicita un nuevo contrato de arrendamiento de DHCP.

Prefiero esto a (reiniciar) manualmente dhclientporque he tenido problemas por procesos de clientes obsoletos (los que no son administrados por Network Manager) reconfigurando espontánea e incorrectamente la configuración de mi red en puntos aleatorios cuando es menos conveniente.

Marius Gedminas
fuente
1
Sigue siendo relevante en Ubuntu 16.04. dhclient -rsilenciosamente no hace nada con un código de salida exitoso de lo contrario. :-(
studog
¡Esto funcionó bien el 18.04!
Roel Van de Paar
3

Si está utilizando una systemdversión basada en Ubuntu sin una GUI (es decir, la versión del servidor), esta es la forma de renovar la concesión de DHCP:

sudo systemctl restart systemd-networkd

Nota: Si está conectado a través de la interfaz cuyo contrato de arrendamiento de DHCP está renovando, puede desconectarse, a menos que esté conectado a través de una interfaz configurada estáticamente o la consola.

Pierz
fuente
Estaba probando esto dhcpdumpescuchando en otra terminal. No parecía funcionar, solo el dhclientcamino.
Pablo A
1

Después de haber actualizado a Maverick Meerkat Beta 1, algo se rompió en mi configuración estándar, vanilla eth0 que aún no he depurado. La solución rápida y sucia ha sido

sudo dhclient

que se da cuenta de que ya había un cliente (posiblemente muerto) y obtiene un nuevo contrato de arrendamiento:

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.

Esto no es una solución, solo un truco. Haré un seguimiento cuando calcule qué salió mal.

msw
fuente
1

Al carecer de esta capacidad específica nmcli, creo que la mejor solución de CLI es liberar y eliminar la instancia de dhclient administrada por NetworkManager, en lugar de comenzar una nueva. NM lo recuperará nuevamente automáticamente, evitando tener que reiniciar toda la infraestructura de NM.

sudo dhclient -v -r -pf /run/sendsigs.omit.d/network-manager.dhclient-eth0.pid
  • -v - hacer detallado
  • -r - suelte y apague
  • -pf - archivo pid de la instancia de NM
Niklas Holm
fuente