19

This is a simple question in ubuntu server How do I renew a dhcp assigned IP address?

elviejo79
  • 531
  • 2
  • 4
  • 11

3 Answers3

21

This is simple:

$ dhclient -r    #release current address
$ dhclient eth0  #ask for new address
elviejo79
  • 531
  • 2
  • 4
  • 11
  • 1
    `sudo dhclient` always works, it doesn't need an argument but you can give it one. – Rook Mar 11 '10 at 22:20
16

Actually, there are (somewhat unusual) situations in which

$ dhclient -r
$ dhclient

is not sufficient.

If the client thinks it already has a valid lease, it will use it, even if the DHCP server would have given it a different address. This can be confusing.

For instance, if you go from a dynamically allocated IP address to a static (and different) IP address for a given client, then (at least on Ubuntu 10.04, and possibly generally) $dhclient -r and $dhclient isn't sufficient. Because the old lease is still valid, the client will just use that.

This can lead to your DHCP server thinking the IP address for your host should be one thing, and your host thinking a different thing. Chaos reigns.

To fix this, you first have to go and delete any dhclient.leases files from /var/lib/dhcpd/ (or /var/lib/dhcp3), where the client stores its valid leases.

Then

$ dhclient -r
$ rm /var/lib/dhcp/dhclient*    # might be in a different place on your machine
$ dhclient

will fetch you a new, different address.

Aaron McDaid
  • 103
  • 4
liamf
  • 372
  • 4
  • 10
3

dhclient should do it.

Ben Pilbrow
  • 11,995
  • 5
  • 35
  • 57