如何在Ubuntu Server 12.04中设置静态IP?

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 

哪里出错了? 我不懒。 我用Google搜索了3天但没有结果。 我尝试了一切。

重启后,/ /etc/resolv.conf文件闪烁到原始状态。

这有两个独立的问题:

重新启动后resolv.conf条目重置

/etc/resolv.conf工作方式已在Ubuntu 12.04中更改。 这是因为实现了foundations-p-dns-resolving ,如https://blueprints.launchpad.net/ubuntu/+spec/foundations-p-dns- foundations-p-dns-resolving ,以克服静态resolv.conf一些限制。

在这里您可以获得更多详细信息: http : //www.stgraber.org/2012/02/24/dns-in-ubuntu-12-04/

您可以通过删除符号链接/etc/resolv.conf来覆盖新function,并/etc/resolv.conf那里创建名为/etc/resolv.conf的文件。 但在此之前,请参考我上面给出的链接,看看为什么强烈劝阻它。

IP地址与网络和网关冲突(设置静态IP)此外,正如pgschk所指出的,您的IP地址与网关和网络条目不匹配。 但这并没有导致/etc/resolv.conf进入原始状态,但我上面提到的原因。

您的网关地址与本地IP地址位于不同的子网中:

地址192.168。 1 .150网关192.168。 2 .1

此外,网络地址也在.2子网中指定:

网络192.168。 2 .0

您使用192.168.1 / 24还是192.168.2 / 24子网?

编辑:关于你的resolv.conf:这个文件主要由不同的包更新(取决于你的设置)。 尝试在/ etc / network / interfaces文件中指定名称服务器:

dns-nameservers 8.8.8.8 8.8.4.4

您可以尝试以下选项:

  • 删除/etc/resolv.conf ,然后创建一个新的resolv.conf

  • sudo nano /etc/resolv.conf之后添加标志:

  • sudo chattr +i /etc/resolv.conf – 用这个+i标志,甚至根也无法触摸这个文件。 但是如果要更改名称服务器,请将标志更改为:

  • sudo chattr -i /etc/resolv.conf然后添加你的新nameserver

然后尝试重新启动,看看会发生什么:)。

我希望这能解决你的问题。