How to renew or release a dynamic IP address in Linux
The DHCP (Dynamic Host Configuration Protocol) client in Linux is called dhclient. It requests dynamic IP addresses from the DHCP server, which "leases" addresses to clients for a set time. dhclient can be invoked manually to "release" the client's currently assigned IP address, and get another address from the DHCP server.
Normally, dhclient produces no output, to see what it's doing, we need to give it the -v (verbose) option. We need to run dhclient as root with the sudo command, because changing the system networking configuration requires escalated privileges.
Let's start by running dhclient verbosely, without any other options. It should reach out and say "hello" to our DHCP server, which, in our example is home router.
Command:
sudo dhclient -v
Output:
Internet Systems Consortium DHCP Client 4.2.2 Copyright 2004-2011 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ Listening on LPF/wlan0/68:a3:c4:93:47:46 Sending on LPF/wlan0/68:a3:c4:93:47:46 Sending on Socket/fallback DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 4 DHCPREQUEST on wlan0 to 255.255.255.255 port 67 DHCPOFFER from 192.168.2.1 DHCPACK from 192.168.2.1 RTNETLINK answers: File exists bound to 192.168.2.4 -- renewal in 42516 seconds.
The above output tells us that dhclient requested an address from the DHCP server (DHCPREQUEST). It sent this request from our wireless Internet interface (wlan0). The DHCP server responded with a simple acknowledgement of our request (DHCPACK). That's because we already had an IP address assigned to us, so the DHCP server didn't have anything to do. Note that the DHCP server also told us how long our dynamic IP address will last: 42516 seconds (about 12 hours from now, at which point it will be renewed automatically).
So let's manually release our address with -r. Let's keep the -v option in there so we can see what's going on:
sudo dhclient -v -r
Internet Systems Consortium DHCP Client 4.2.2 Copyright 2004-2011 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ Listening on LPF/wlan0/68:a3:c4:93:47:46 Sending on LPF/wlan0/68:a3:c4:93:47:46 Sending on Socket/fallback DHCPRELEASE on wlan0 to 192.168.2.1 port 67
In the above example, the command tells the DHCP server to release the IP address.
On some variants of Linux or Unix, releasing your IP address this way may also inherently bring down your network interface. In this case, use your network manager to re-connect to your network. This process varies from OS (Operating System) to OS; if you're unsure how to connect to your network, consult the documentation of your specific OS. If you're using the X Window System, you can usually reconnect by clicking the network icon in your system tray, and selecting the Connect option.