記一次在Ubuntu環境下分配靜態IP的經歷

機房環境

有若干臺機器,通過交換機連接網絡,其中有一臺服務器。機房除服務器以外的其他機器都更換過。
服務器系統環境是Ubuntu12.04LTS

出現的問題

其他機器不能通過局域網訪問服務器,其他機器可以訪問外網,但是服務器不能訪問外網。

解決的流程

其實一開始做了很多無用功。確定服務器上localhost的資源可以在本機通過瀏覽器訪問。檢查網線是不是接上。ifconfig確認是否有分配IP。然后就陷入了不知道該怎么檢查的情況。然后查了一下Ubuntu環境下的網絡故障排查方法。
流程如下:

  1. $sudo ip link ls eth0 確認網卡狀態
  2. $sudo ifconfig eth0 查看網卡是否已經分配了IP
  3. ping 網關,看能否ping通
  4. $nslookup server 檢查DNS服務器地址,如果出現問題需要對/etc/resolv.conf文件進行修改,設置正確的DNS
  5. 最后將配置寫入/etc/network/interfaces文件

對于etc/network/interfaces文件的修改,DHCP動態IP的配置:

#The primary network interface
auto eth0 # 設置網卡開機啟動
iface eth0 inet dhcp # 設置網卡動態獲取IP

靜態IP:

auto eth0
iface eth0 inet static # 設為靜態獲取ip
address 192.168.1.101 # 配置ip地址
netmask 255.255.255.0 # 設置子網掩碼
gateway 192.168.1.1 # 設置網關
dns-nameservers 8.8.8.8 114.114.114.114 # 設置DNS服務器,多個地址空格隔開

這次的情況

在ping網關的時候沒有ping通,但是其他機器可以訪問外網,所以否定了交換機的問題。然后我們檢查了外面機器的IP設置,和服務器上的進行比對,發現外面分配的IP和服務器分配的IP不在同一網段。了解這個情況之后就按照其他機器的IP設置情況把服務器上的IP重新分配,進行靜態分配IP,然后將設置情況寫入/etc/network/interfaces和/etc/resolv.conf。之后嘗試使用/etc/init.d/networking restart使配置有效化,但是失敗了。抱著試一試的心態重啟了一次服務器,再次使用ifconfig查看網卡情況的時候發現eth0分配的IP更改過來了。然后經測試發現服務器可以訪問外網了,然后其他機器也能通過局域網訪問到服務器上的資源了。

?

感謝 http://www.lxweimin.com/p/21ee97c0aa38 這篇博文,在這篇文章的引導下,我解決了這次問題。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Ubuntu的發音 Ubuntu,源于非洲祖魯人和科薩人的語言,發作 oo-boon-too 的音。了解發音是有意...
    螢火蟲de夢閱讀 99,558評論 9 467
  • 1.這篇文章不是本人原創的,只是個人為了對這部分知識做一個整理和系統的輸出而編輯成的,在此鄭重地向本文所引用文章的...
    SOMCENT閱讀 13,133評論 6 174
  • 個人認為,Goodboy1881先生的TCP /IP 協議詳解學習博客系列博客是一部非常精彩的學習筆記,這雖然只是...
    貳零壹柒_fc10閱讀 5,091評論 0 8
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,923評論 18 139
  • hexdump -C 查看二進制文件 xxd:查看二進制文件 whatis 簡單描述命令的用途whatis c...
    JevonWei閱讀 832評論 0 0