Linux change ip address

by on April 15, 2007 · 78 comments· LAST UPDATED September 25, 2007

in , ,

Q. How do I change ip address in Linux?

A. There are different ways to change IP address in Linux
(a) Command Line tools

(b) Modify configuration files

(c) Use GUI tools

Task: Display current IP address and setting for network interface called eth0

Use ifconfig command:
# ifconfig eth0
Output:

eth0      Link encap:Ethernet  HWaddr 00:30:48:5A:BF:46
          inet addr:10.5.123.2  Bcast:10.5.123.63  Mask:255.255.255.192
          inet6 addr: fe80::230:48ff:fe5a:bf46/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:728204 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1097451 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:62774749 (59.8 MiB)  TX bytes:1584343634 (1.4 GiB)
          Interrupt:177

Task: Change IP address

You can change ip address using ifconfig command itself. To set IP address 192.168.1.5, enter command:
# ifconfig eth0 192.168.1.5 netmask 255.255.255.0 up
# ifconfig eth0

To make permanent changes to IP address you need to edit configuration file according to your Linux distribution.

Change IP address under RedHat / CentOS / Fedora core Linux

=> Please read - Howto change and setup IP address in Redhat Linux

Change IP address under Debian / Ubuntu Linux

=> Please read - Howto change and setup IP address in Ubuntu / Debian based Linux distros

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 78 comments… read them below or add one }

1 Mike May 1, 2008 at 5:15 pm

Great. Very helpful.

Reply

2 Patrick September 25, 2008 at 9:14 pm

Thanx for giving Valuable suggestion !!!

Reply

3 selva December 10, 2008 at 11:17 am

Thanks its working

Reply

4 Mutturaj February 12, 2009 at 6:51 am

great excellent

Reply

5 JediTech February 18, 2009 at 6:28 am

Excellent, helped me out of a jam

Reply

6 anthony February 26, 2009 at 1:22 am

Excellent !!!

Reply

7 kamal February 26, 2009 at 7:21 am

thanks it was helpful

Reply

8 peteopp April 30, 2009 at 5:18 am

EXCELLENT!!!!

Reply

9 mahendra patil May 5, 2009 at 12:26 pm

Dear
linux support
Pls Give me More Command Ex. vmware esx server and Fedora server edition

Regards
mahendra patil

Reply

10 al prince nofl May 27, 2009 at 11:34 pm

good idea

i have know my ip

but i cant change it, this is what i write:

alprincenofl@alprincenofl-laptop:~$ ifconfig eth0 192.168.1.5 netmask 255.255.255.0 up
SIOCSIFADDR: Permission denied
SIOCSIFFLAGS: Permission denied
SIOCSIFNETMASK: Permission denied
SIOCSIFFLAGS: Permission denied

Reply

11 nixCraft May 28, 2009 at 12:04 am

You must be root user to change IP address.

Reply

12 narender August 2, 2010 at 8:02 am

u has to type the command before u are in root
then the ip will change.,

Reply

13 tawab December 27, 2011 at 6:45 am

write word ‘sudo’ at first as the following:
sudo ifconfig eth0 192.168.1.5 netmask 255.255.255.0 up

Reply

14 ameer June 4, 2009 at 1:14 pm

how to upgrade firefox in fedora

Reply

15 tutu June 17, 2009 at 10:51 pm

it doesn’t work. I don’t have the ifconfig!!
what about the config files?

Reply

16 nixCraft June 17, 2009 at 10:58 pm

@tutu

You must login as root and use full path /sbin/ifconfig

Reply

17 tutu June 18, 2009 at 3:27 am

Thanks. It worked. I thought I tried that already… Anyway, in order to make it permanent now, I saw the other link but when I launched the command sudo… it asks for a password and there I’m lost as the superuser password is not accepted. The user’s password also… Is that a different password?

Reply

18 Win June 29, 2009 at 4:59 pm

thanks
it’s working !

Reply

19 sidhu July 22, 2009 at 7:47 pm

Hi
This is sidhu, Thanks for your post.
I want to learn linux, I completed my MCSE.
But i dnt hve any idea on linux.
I want ot learn CentOS – ViciDialNow.
so i am searching linux commands.
Please send me any tips or tutorial to my mail.
sidhu_sir2@yahoo.co.in
Once again Thanks, Bye
Have a nice day

Reply

20 nithin mk October 22, 2009 at 6:52 am

please try to post more tips than this

Reply

21 saki December 10, 2009 at 6:29 am

ifconfig eth1 10.0.0.1 netmask 255.255.255.0 up
SIOCSIFFLAGS: Cannot allocate memory
SIOCSIFFLAGS: Cannot allocate memory

Reply

22 Pankaj Pal August 28, 2010 at 7:21 am

It seems that your vserver does not allow you to allocate enough memory to compile PHP. You have to talk with your hosting provider if they can set your memory limit to a higher value.
You can also try to stop all daemons except the ssh (so you can administrate your server) and then try….hope it works…

Reply

23 Isuru December 26, 2009 at 5:27 pm

Thanks — good solid basics

Reply

24 cocu February 1, 2010 at 6:06 am

thank you so much. my computer always login in root user. and it so simple thing to change the ip address as i like. cuz my computer through a network

Reply

25 Rovshan February 5, 2010 at 9:38 am

Hi,
i have to change my ip address in suse linux 192.168.0.77 but any restarts give default ip 10.0.2.15

P.S i’m use Sun Virtualbox

Reply

26 Pankaj Pal August 28, 2010 at 7:13 am

I give a simple solution to your query :
add one line in /etc/rc.local of your system
ifconfig eth0 192.168.0.77 netmask 255.255.255.0 up

Reply

27 Chris Keil August 31, 2010 at 3:46 pm

Actually, OpenSuse does not have a file called rc.local in the /etc directory.

Try editing /etc/sysconfig/network/ifcfg-ethX – where the X value is the ethernet port you want to change.

Reply

28 Unknown May 12, 2010 at 4:19 am

I tried changing my IP address and it worked, but when i tried accessing the internet it did not work.
Can anyone help me?

Reply

29 Pankaj Pal August 28, 2010 at 7:27 am

If you successfully changed your IP address than try to ping your gateway(your LAN’s address)
If the step went good. try to resolve some DNS name with ‘dig’ or with ‘nslookup’
if the step went bad try to configure DNS info with some X app of your distro or check manually (if you are sure what you are doing) /etc/named.cof, /etc/resolve.conf and etc/sysconfig/network-scripts/ifcfg- files as a root.

If that does not help let me know

Reply

30 oumaKarate May 24, 2010 at 1:14 pm

@Vivek Gite

(Linux Nooby)

I installed Ubuntu 9.10 (the Karmic Koala), and have not specified a root password
and cannot log in as root because of this…is there a standard password?

Reply

31 naveen March 20, 2012 at 12:19 pm

wonderful………………..

Reply

32 oumaKarate May 24, 2010 at 1:21 pm

App : @Vivek Gite

(Linux Nooby)

I installed Ubuntu 9.10 (the Karmic Koala), and have not specified a root password
and cannot log in as root because of this…is there a standard password?

I fixed :)
sudo bash

Reply

33 levi August 20, 2010 at 10:11 am

i want to log on to the linux machine remotely using windows xp, please help me on this one.
thank you

Reply

34 Pankaj Pal August 28, 2010 at 7:01 am

If you want to log on to the linux machine remotely using windows xp, you just installed Putty. In Host Name type the address of the remote machine and load it…
If not able to take remote than check that openssh service is running on the remote machine.

Reply

35 Strike September 29, 2010 at 6:17 am

How do you remove it, i put in the wrong ip and want to take it out, cheers.

Reply

36 Abhilash October 7, 2010 at 10:29 am

Dear Sir,

I have installed fedora 10 on my machine. it contains two ethernet port.
i installed cable with eth1 and give a static ip address xxx.xxx.xxx.xxx through Gnome. its working fine. but when i restart the machine it again need to configure. how do i save it permanently.
please help.

Reply

37 gggg November 14, 2010 at 7:59 am

I get an error saying no such device.

Reply

38 Nandakishore November 14, 2010 at 1:19 pm

Many thanks. It was very helpful and I would otherwise have had to go through Richard Stevens book on TCP/IP without much of a chance of finding this information.

Excellent show.

Reply

39 siva 9791991185 November 27, 2010 at 7:37 am

thanks……………

Reply

40 Rahul December 3, 2010 at 8:26 am

Hi

Other way of changing ip address is to edit a file ” /etc/sysconfig/network-scripts/ifcfg-eth0 ” and change the settings.

Reply

41 SirshaK Das February 18, 2011 at 4:54 am

how to change the dns server in command prompt

Reply

42 Aca February 28, 2011 at 9:58 am

install and use webmin for change ip addres!!!!

Reply

43 soundarapandian March 30, 2011 at 10:12 am

echo ‘Thanks’

Reply

44 Maat May 12, 2011 at 9:46 pm

Not working on opensuse 11.2
Which is the best linux to use
Thanks

Reply

45 hans June 29, 2011 at 2:07 pm

Excellent!! Thank you!

Reply

46 SPEK HITAM July 6, 2011 at 4:34 am

nice! thanks!

Reply

47 indra July 28, 2011 at 10:15 am

nicely done :)
Thanks !!!

Reply

48 ramulu ponnam July 28, 2011 at 11:33 am

how can i add the same for ipv6?
can u send the command for related to that?i am looking for add ipv6 address to linux.
any reply is appreciable,thanks in advance.

Reply

49 rajesh August 15, 2011 at 9:23 am

i m using ubuntu 10.10 it s giving me error as below…..

raja@ubuntu:~$ ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:19:d1:a7:28:49
inet6 addr: fe80::219:d1ff:fea7:2849/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1817829 errors:0 dropped:0 overruns:0 frame:0
TX packets:89850 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:345456581 (345.4 MB) TX bytes:11011030 (11.0 MB)
Interrupt:44

raja@ubuntu:~$ ifconfig DSL
DSL: error fetching interface information: Device not found
raja@ubuntu:~$ ifconfig eth0 172.100.127.93 netmask 255.255.0.0 up
SIOCSIFADDR: Permission denied
SIOCSIFFLAGS: Permission denied
SIOCSIFNETMASK: Permission denied
SIOCSIFFLAGS: Permission denied
raja@ubuntu:~$

Reply

50 BALAJI August 30, 2011 at 8:22 am

Mr Rajesh
First You will login root or supervisor user.
how to login root or su?
just type in your prompt #su password
you don’t known password means
type #sudo passwd enter
type new password
and again type su
type password
and after change the command using ip addres

Reply

51 leapkh September 12, 2011 at 7:23 am

Thanks!

Reply

52 FAROUK October 13, 2011 at 3:02 pm

HOW CAN I CHANGE DEFAULT GETWAY AND DNS ADDRESS

Reply

53 Naresh October 27, 2011 at 1:30 pm

You can add gateway at path —> /etc/sysconfig
Ex:
NETWORKING=yes
HOSTNAME=xyz.youname.com
GATEWAY=10.100.100.1
you can add DNS information at —-> /etc/resolv.conf
Ex:
search yourname.com
nameserver 10.100.100.5
nameserver 10.100.100.6

Reply

54 Belal April 22, 2012 at 8:56 pm

Thank u

Reply

55 Zatnaktel November 23, 2011 at 6:37 pm

When I change IP, access on internet is denied. Why?

Reply

56 meliron November 30, 2011 at 9:13 am

Thanks…it is very helpful

Reply

57 will551 March 6, 2012 at 4:28 am

great! this helped me on the road to getting my windows box hooked up to the wireless internet using a (ethernet) cable… :-)

Reply

58 alex March 28, 2012 at 4:59 pm

To make permanent changes to IP address you need to edit configuration file according to your Linux distribution.

Wow that is totally not helpful

Reply

59 shammi May 15, 2012 at 7:52 am

we are university student in developing country that is Sri Lanka
. so we are poor in knowledge. your effort for helping us is grateful. thanx a lot.

Reply

60 Jason May 15, 2012 at 8:43 pm

You know, if a user uses the terminal method listed, and they are changing IP ranges (example: from 192.168.1.3 to 192.168.2.3), and they are doing so remotely, this method will BREAK connectivity completely, until the person goes to the physical location of the computer and fixes it… Why? Because you don’t even touch on changing the gateway.

Also, the terminal method you use is NOT a permanent change. It only changes it until the next time the computer is restarted. The smarter way is to edit the config files…

Reply

61 AADI May 21, 2012 at 8:18 pm

Thanks for command.

Reply

62 Ivans Muhasa Enock June 21, 2012 at 11:35 am

Was so helpful thank you guys

Reply

63 vinod August 6, 2012 at 6:27 am

thanks guys was helpful.

Reply

64 murugan August 10, 2012 at 4:11 am

very very useful to us.thanks you. very good job

Reply

65 slJedi October 11, 2012 at 6:55 pm

Out put of # ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:23:8b:48:34:21
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:44 Base address:0x8000

So how can I change IP.

Reply

66 Jason October 12, 2012 at 11:21 pm

Try reading the full article

Reply

67 Confused December 26, 2012 at 10:11 am

didn’t work I entered what if said, needs to be exactly clear.

Reply

68 Praveen January 13, 2013 at 7:54 pm

in /etc/sysconfig/network/scripts directory “ifcfg-eth0″ file is missing, why it is missing? what shud i do to get that file?

Reply

69 vynz February 5, 2013 at 5:28 pm

i already change my ip address on my linux server i follow the instruction but when restart my server no effect the ip is not change

Reply

70 Sagubar sathik March 2, 2013 at 3:55 pm

Hi All,

It is not working for me.

without throwing any message, the server goes to unreachable state.

#ifconfig eth0 A.B.C.D netmask A.B.C.D up.

when i ping old server ip as well as new server IP. it is not reachable

Please any one send the workaround to my mail id “sathikhaja@gmail.com.

Reply

71 hasan March 29, 2013 at 7:31 am

thanks helful command

Reply

72 Anonymous July 4, 2013 at 7:09 pm

This s not working in backtrack
it change ip but after change ip i cant access internet
plz help me to solve this problem,,

Reply

73 Abdelkader August 22, 2013 at 7:29 pm

thank you

Reply

74 bheem January 22, 2014 at 6:16 pm

thanks

Reply

75 jan April 28, 2014 at 7:22 am

not working.i got an error that permission denied

Reply

76 jan April 28, 2014 at 7:23 am

SIOCSIFADDR: Permission denied
SIOCSIFFLAGS: Permission denied
SIOCSIFNETMASK: Permission denied
SIOCSIFBROADCAST: Permission denied
SIOCSIFFLAGS: Permission denied
……………..this is the error what i got

Reply

77 Raj June 19, 2014 at 10:30 am

Thanks its working and very helpful

Reply

78 Nadeem November 11, 2014 at 5:10 am

Hi friends
Can anybody explain and help me find output of the following command

IP=192.168.100.1 echo${IP:0:4}

Reply

Leave a Comment

Tagged as: , , , , , ,

Previous Faq:

Next Faq: