This article was written a long time ago. It should be improved to match the tone of the rest of the website. Update this article with recent work done on secondary IP.
These instructions are for Ubuntu Desktop. Servers by default do not use DHCP.
Assuming your existing install is picking up DHCP correctly and your network is working fine.
First you should be running this from a console. In other words, not via ssh.
ifconfig
This will list your network cards. Usually you will see eth0 as being the network card enabled. Record the highlighted entries,
eth0 Link encap:Ethernet HWaddr 00:0c:29:35:62:69 inet addr:192.168.0.174 Bcast:192.168.0.255 Mask:255.255.255.0
Now I don't know how to get the rest on Ubuntu quite yet (now I do) so I go to a Windows machine on the same network and type,
ipconfig /all
Again, record the Default Gateway, line item 9, for the Ethernet adapter Local Area Connection,
Connection-specific DNS Suffix . : pham Description . . . . . . . . . . . : Broadcom NetLink (TM) Fast Ethernet Physical Address. . . . . . . . . : 00-15-C5-7F-D4-07 Dhcp Enabled. . . . . . . . . . . : Yes Autoconfiguration Enabled . . . . : Yes IP Address. . . . . . . . . . . . : 192.168.0.177 Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . : 192.168.0.1 DHCP Server . . . . . . . . . . . : 192.168.0.1 DNS Servers . . . . . . . . . . . : 192.168.0.1 Lease Obtained. . . . . . . . . . : March 13, 2009 11:25:09 AM Lease Expires . . . . . . . . . . : March 14, 2009 11:25:09 AM
Do a ping to verify that no other device is using the IP address. In this example we want to use 192.168.0.50,
ping 192.168.0.50 -c3 From 192.168.0.183 icmp_seq=1 Destination Host Unreachable From 192.168.0.183 icmp_seq=2 Destination Host Unreachable From 192.168.0.183 icmp_seq=3 Destination Host Unreachable --- 192.168.0.4 ping statistics --- 3 packets transmitted, 0 received, +3 errors, 100% packet loss, time 2025ms
Next on your Ubuntu machine,
sudo ne /etc/network/interfaces # Where ne is your preferred text editor
The file may look like this,
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet dhcp
We modify the file to look like this where I chose 192.168.0.50. Note that this ip address would never be assigned by my router as I modified it's dhcp address range to only be between 192.168.0.100 to 192.168.0.255. My router itself is using the ip address 192.168.0.1.
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.0.50
netmask 255.255.255.0
gateway 192.168.0.1
#
dns-nameservers 192.168.0.1 # Required as of Ubuntu 13.04 (in my testing, but I read 12.04 and up requires this)
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet static address 192.168.0.50 netmask 255.255.255.0 gateway 192.168.0.1 # I believe this entry is only necessary if your /etc/resolv.conf is empty and not working in an internal home network for example. Still need to validate next time I build a home Ubuntu system. My server system does not appear to need this. dns-nameservers 192.168.0.1 # Required as of Ubuntu 13.04 (in my testing, but I read 12.04 and up requires this)
If you have not already, make sure are running from the console for this step. Otherwise you will be disconnected and have to connect again with the new ip address.
Now we restart the network services,
sudo /etc/init.d/networking restart
Verify by pinging your system from another machine.
After you know things are working you may want to uninstall the dhcp package. I have read (but not experienced myself) that after a certain amount of time it will take control and you will end up with a dhcp assigned ip.
sudo apt-get remove isc-dhcp-client dhcp3-client dhcpcd
Notes
If you have more than one dns server use the format, dns-nameservers 208.78.97.155 208.75.87.250
Questions for the You Reader
References