How to setup static IP in Ubuntu Server 12.04?

  • sudo apt-get update 
    sudo apt-get upgrade
    
    1. ifconfig

    2. sudo nano /etc/network/interfaces

      auto eth0
      iface eth0 inet static
      address 192.168.1.150
      netmask 255.255.255.0
      network 192.168.2.0
      broadcast 192.168.1.255
      gateway 192.168.2.1
      safe
      
    3. sudo nano /etc/resolv.conf

      Do not edit this file by hand --your changes will be overwritten
      # I add this 
      nameserver 8.8.8.8
      nameserver 8.8.4.4
      
    4. sudo apt-get remove dhcp-client

    5. sudo /etc/init.d/networking restart

      *Running /etc/init.d/networking restart is deprecated because it may 
      not enable again some interfaces
      *Reconfiguring network interfaces...
      ssh stop/waiting
      ssh start/running,process 1438
      

    Where is the mistake? I'm not lazy. I Googled it for 3 days but without results. I tried everything.

    After reboot the /etc/resolv.conf file is flashing to the original state.

    Hmm any idea why you don't just do everything within the /etc/network/interfaces configuration folder like here: http://draalin.com/setting-up-a-static-ip-address-in-ubuntu/ Or does it make more sense to actually split things up like you did within the resolv.conf and interfaces configuration folder?

    I did it by directly going to the networks tab and editing it manually

  • This has two independent questions:

    resolv.conf entries getting reset after a reboot

    The way /etc/resolv.conf working has been changed in Ubuntu 12.04. This is because of implementation of foundations-p-dns-resolving as described here https://blueprints.launchpad.net/ubuntu/+spec/foundations-p-dns-resolving to overcome some limitations of static resolv.conf.

    Here you can get more details: http://www.stgraber.org/2012/02/24/dns-in-ubuntu-12-04/

    You can override the new feature by removing the symbolic link /etc/resolv.conf and create a file named /etc/resolv.conf there. But before doing that refer the link I given above and see why it is strongly discouraged.

    IP Address Vs Network and Gateway Conflict (Setting up a static IP) Also, As pgschk pointed out, your IP address is not matching gateway and network entries. But that is not causing the /etc/resolv.conf to go to original state, but the reason I mentioned above.

    pardon me error when writing I have 2 servers ,detail as possible removing the symbolic link /etc/resolv.conf and create a file named /etc/resolv.conf there. I've never done this before.PLEASE

    I would suggest to review if any other work around listed in stgraber.org link other than removing symbolic link works for you first. But if you still like to remove the link, you can use, usual commands like 'mv /etc/resolv.conf /etc/resolv.conf.ori' or 'rm /etc/resolv.conf' and then create a new /etc/resolv.conf using your favourite text editor(like vi or nano).

    I hope you intended /etc/resolv.conf, not /etc/resolv.config in the above question

    I'm online,it's just a bug.thank you,and about remove the link>resolvconfig :Error /etc/resolv.conf isn't a symlink,not doing anything.

  • Your gateway address is in a different subnet than your local IP address:

    address 192.168.1.150 gateway 192.168.2.1

    Also, the network address was specified in the .2 subnet also:

    network 192.168.2.0

    Do you use the 192.168.1/24 or the 192.168.2/24 subnet?

    Edit: About your resolv.conf: This file is mainly updated by different packages (depending on your setup). Try specifying the nameservers in your /etc/network/interfaces file:

    dns-nameservers 8.8.8.8 8.8.4.4

    sudo nano /etc/network/interfaces # The primary network interface auto eth0 address 192.168.1.13 netmask 255.255.255.255 gateway 192.168.1.1 network 192.168.1.0 broadcast 192.168.1.225 dns-nameservers 8.8.8.8 8.8.4.4 dns-search mydomaine google.com

    same problem *Running /etc/init.d/networking resrtart is deprecated because it may not enable again some interfaces *Reconfiguring network interfaces...

    *Running /etc/init.d/networking resrtart is deprecated because it may not enable again some interfaces *Reconfiguring network interfaces...

  • You can try this option :

    • Remove the /etc/resolv.conf and then creat a new resolv.conf.

    • sudo nano /etc/resolv.conf after that add the flag:

    • sudo chattr +i /etc/resolv.conf - with this +i flag, even root can't touch this file. But if you want to change the nameserver, change the flag to be:

    • sudo chattr -i /etc/resolv.conf then add your new nameserver.

    Then try to reboot and see what happens :).

    I hope this solves your problem.

License under CC-BY-SA with attribution


Content dated before 6/26/2020 9:53 AM