Linux 的網路架構雖然複雜,但基本的用戶空間網路配置其實並不困難。當你的 Linux 系統無法上網或連線異常時,跟著本指南逐步排查與設定,通常都能解決問題。本文以 CentOS 6.5 純終端機環境為例,詳細說明內網、外網及虛擬機網路的完整配置流程。
輸入 ifconfig 可列出所有已啟動的網卡裝置(含虛擬網卡、橋接介面等)。對應 Windows 的指令為 ipconfig /all。正常情況下你會看到 eth0(實體網卡)與 lo(回環介面,用於本機測試)。
若 ifconfig 看不到 eth0,請執行 ifconfig -a 查看所有存在的介面(含未啟動者)。發現目標網卡後,用 ifconfig eth0 up 手動啟動(關閉指令為 ifconfig eth0 down)。指令無輸出即代表成功,再執行一次 ifconfig 確認。
常見原因與對策:
/etc/rc.local(echo 'ifconfig eth0 up' >> /etc/rc.local)。進入 /etc/sysconfig/network-scripts 目錄,編輯 ifcfg-eth0:
DEVICE=eth0 TYPE=Ethernet ONBOOT=yes BOOTPROTO=static IPADDR=192.168.10.150 NETMASK=255.255.255.0 GATEWAY=192.168.10.1
依需求調整 IP、網關等參數。儲存後執行 service network restart 重啟網路服務,再用 ping 測試內網連通性(可輔助 arp -a 查看鄰居)。若需新增 eth1,複製 ifcfg-eth0 修改即可,前提是硬體或虛擬機已新增對應網卡。
內網通後,測試 ping www.baidu.com。若顯示「無法識別主機」,請編輯 /etc/resolv.conf 加入 DNS:
nameserver 192.168.10.1 nameserver 8.8.8.8
第一行使用閘道作為 DNS,第二行使用 Google 公開 DNS。
DNS 設定後仍無法上網,請用 route -n 查看路由表。確認 Gateway 欄有預設閘道(旗標 UG)。若無,手動新增:
route add default gw 192.168.10.1
重啟網路服務後再測試外網連通性。實體機通常到此即完成;虛擬機則需進一步調整宿主機連線模式。
虛擬機配置步驟大同小異,關鍵在於「宿主機與客體機的網路交換模式」。常見模式:
排查清單:
eth1),導致設定檔失效。若已發生,需刪除 /etc/udev/rules.d/70-persistent-net.rules 等規則檔並重開機。