當前位置: 首頁>>技術問答>>正文


如何在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條目在重新啟動後重置

在Ubuntu 12.04中更改了/etc/resolv.conf的工作方式。這是因為實施了如此描述的foundations-p-dns-resolving https://blueprints.launchpad.net/ubuntu/+spec/foundations-p-dns-resolving以克服靜態resolv.conf的一些限製。

在這裏您可以獲得更多詳細信息:http://www.stgraber.org/2012/02/24/dns-in-ubuntu-12-04/

您可以通過刪除符號鏈接/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

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/3060.html,未經允許,請勿轉載。