Linux change ip address

Posted on in Categories , , , , , , last updated September 25, 2007

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

82 comment

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

    Regards
    mahendra patil

  2. good idea

    i have know my ip

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

    [email protected]:~$ ifconfig eth0 192.168.1.5 netmask 255.255.255.0 up
    SIOCSIFADDR: Permission denied
    SIOCSIFFLAGS: Permission denied
    SIOCSIFNETMASK: Permission denied
    SIOCSIFFLAGS: Permission denied

  3. 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?

    1. 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…

  4. 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

  5. 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

    1. 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

      1. 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.

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

    1. 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

  7. @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?

  8. 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

    1. 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.

  9. 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.

  10. 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.

  11. Hi

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

  12. 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.

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

    [email protected]:~$ 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

    [email protected]:~$ ifconfig DSL
    DSL: error fetching interface information: Device not found
    [email protected]:~$ ifconfig eth0 172.100.127.93 netmask 255.255.0.0 up
    SIOCSIFADDR: Permission denied
    SIOCSIFFLAGS: Permission denied
    SIOCSIFNETMASK: Permission denied
    SIOCSIFFLAGS: Permission denied
    [email protected]:~$

    1. 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

    1. 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

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

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

    Wow that is totally not helpful

  16. 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.

  17. 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…

  18. 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.

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

  20. 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

  21. 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 “[email protected]

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

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

    1. IP=192.168.100.1 will save 192.168.100.1 in a temporary variable named IP.

      echo${IP:0:4} will print that temporary variable starting from character 0, over a length of 4 characters.

      Output: 192.

Leave a Comment