Debian、ubuntu系統的網路管理分析
1.Network-Manager
傳統上使用/etc/network/interfaces(networking)來進行網路的管理,這個在Linux的所有發行版都是可用的。但是在Ubuntu Desktop下出現了新的情況,就是Network Manager,它可以直接在圖形介面中進行網路配置,即會在桌面右上角提示欄中出現網路配置圖示。Ubuntu的desktop版本才會使用NetworkManager,server版本仍然使用/etc/network/interfaces的方式進行配置。
特別說明,兩者不能同時使用,只能使用一種方式進行網路配置管理。
那麼network-manager是如何管理的呢
檢視配置檔案cat /etc/NetworkManager/NetworkManager.conf,其關鍵值managed預設是false,即說明當在/etc/network/interfaces有對網口進行網路配置的時候,不參與管理。若沒有內容,則接管網路。
檢視cat /etc/network/interfaces :source-directory /etc/network/interfaces.d : /etc/network/interfaces.d下沒有內容
如果將eth0和wlan0都配置在/etc/network/interfaces中,在managed=false的情況下,桌面右上角網路圖示變成灰色,很明顯,此時不再掃描出網絡卡資訊,已經失效;對於另外一種情況,當managed=true時,NetworkManager將接管本地的所有網路埠,相當於/etc/network/interfaces的配置失效。
2.wpa_supplicant
無意間在其他linux發行版中發現,存在wpa_supplicant來接管無線網路,仔細看了一下,其優勢在於,可以通過wpa_supplicant配置檔案隨意更改或者新增無線網路。確實是強大的無線網路管理工具
只需要新增如下格式的欄位
network={
ssid="apple"
psk="12345678"
key_mgmt=WPA-PSK
priority=81
}
ssid:賬號 psk:密碼 key_mgmt: 認證金鑰管理協議,priority:網路連線優先順序,數越小,優先順序越小,連線越靠後
這種方式方便我們遠端更改賬號密碼。
因此,在1方案失效或者不使用的前提下,我們可以用此時預設networking管理來驅動wpa_supplicant,
#/etc/networking/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
allow-hotplug wlan0
auto wlan0
iface wlan0 inet dhcp
pre-up wpa_supplicant -Dwext -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf -B
#/etc/wpa_supplicant/wpa_supplicant.conf
country=CN
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network{
ssid="iphone"
key_mgmt=WPA_PSK
psk="12345678"
}
2.networking
這個不用多少,即/etc/networking/interfaces,靜態、動態、選擇配置即可
常出現網路問題及解決辦法
1.無法連線AP
使用iwlist wlan0 scanning命令來判斷,確保無線連線可支援
2.連線上後無法動態分配IP
確保核心已經有DHCP支援
3.無法訪問外網
檢查DNS和路由