Linux NetworkManager 備忘錄
· 4 分鐘閱讀
這篇備忘錄記錄了 Linux 上的 NetworkManager。
資訊
NetworkManager 是一個動態網絡配置和管理守護程式,主要用於 Linux 系統。它旨在簡化網絡配置過程,特別是對於那些經常在不同網絡環境之間切換的筆記本電腦用戶,或需要圖形界面管理網絡連接的桌面用戶。
NetworkManager 會監測網絡設備的狀態,並自動配置它們,包括有線、無線、移動寬帶等連接。
1. NetworkManager 的核心組件
NetworkManager守護程式:主要的後台服務,負責管理網絡連接。nmcli(NetworkManager Command Line Interface):命令行工具,用於配置和顯示 NetworkManager 的狀態。nmtui(NetworkManager Text User Interface):基於文本的用戶界面工具,提供一個互動式的菜單來管理連接。- 圖形化前端:如 GNOME Shell 的網絡設置、KDE Plasma 的網絡管理小程式等。
2. nmcli 基本用法
nmcli 是與 NetworkManager 交互最常用的命令行工具。
A. 顯示網絡設備狀態
nmcli device status
輸出會列出所有網絡設備及其狀態(例如 ethernet wifi connected disconnected)。
B. 顯示連接信息
nmcli connection show
這會列出所有已配置的網絡連接。
C. 啟用/禁用網絡設備
nmcli device disconnect eth0 # 斷開 eth0
nmcli device connect eth0 # 連接 eth0
nmcli radio wifi off # 禁用 Wi-Fi
nmcli radio wifi on # 啟用 Wi-Fi
D. 創建新連接
創建有線連接
nmcli connection add type ethernet con-name "MyWiredConnection" ifname eth0 ip4 192.168.1.100/24 gw4 192.168.1.1 dns "8.1.1.1 8.8.4.4"
nmcli connection up "MyWiredConnection"
con-name:連接名稱。ifname:接口名稱 (例如eth0)。ip4:IPv4 地址和子網掩碼。gw4:IPv4 網關。dns:DNS 服務器。
創建 Wi-Fi 連接
nmcli device wifi rescan # 掃描 Wi-Fi 網絡
nmcli device wifi list # 列出可用 Wi-Fi 網絡
nmcli connection add type wifi con-name "MyWiFi" ifname wlan0 ssid "Your_SSID"
wifi-sec.key-mgmt wpa-psk wifi-sec.psk "Your_WiFi_Password"
nmcli connection up "MyWiFi"
ssid:Wi-Fi 網絡名稱。wifi-sec.key-mgmt wpa-psk:指定 WPA-PSK 密碼管理。wifi-sec.psk:Wi-Fi 密碼。
E. 修改現有連接
nmcli connection modify "MyWiredConnection" ipv4.addresses 192.168.1.101/24
nmcli connection modify "MyWiredConnection" ipv4.gateway 192.168.1.2
nmcli connection modify "MyWiredConnection" ipv4.dns "8.8.8.8 8.8.4.4"
nmcli connection modify "MyWiredConnection" ipv4.method manual # 靜態 IP
nmcli connection modify "MyWiredConnection" ipv4.method auto # DHCP
nmcli connection up "MyWiredConnection" # 應用更改
F. 刪除連接
nmcli connection delete "MyWiredConnection"
3. nmtui 用法
nmtui 是一個基於文本的互動式工具,對於不習慣 nmcli 複雜語法的用戶來說非常方便。
sudo nmtui
它會打開一個菜單,允許你:
- 編輯連接
- 激活連接
- 設置主機名
4. NetworkManager 和 systemd-networkd / netplan
在現代 Linux 發行版中,網絡配置有多種方法。
- NetworkManager:主要針對桌面和筆記本用戶,提供豐富的自動配置和圖形界面。
systemd-networkd:Systemd 的網絡配置服務,更輕量,常用於伺服器環境。- Netplan (Ubuntu 專用):一個抽象層,用於統一管理網絡配置,底層可以是 NetworkManager 或
systemd-networkd。
通常,在桌面 Ubuntu 系統中,NetworkManager 是預設的網絡管理工具。
5. 常見問題和故障排除
- 連接失敗:檢查日誌 (
journalctl -u NetworkManager) 以獲取錯誤信息。 - 沒有網絡連接:確保
NetworkManager服務正在運行 (sudo systemctl status NetworkManager)。 - DNS 問題:檢查
/etc/resolv.conf文件,它通常由 NetworkManager 管理。
總結
NetworkManager 是 Linux 系統中一個功能強大且靈活的網絡管理工具。無論是通過 nmcli 進行命令行配置,還是通過 nmtui 進行互動式配置,它都極大地簡化了網絡連接的管理,對於從普通用戶到系統管理員來說都是一個寶貴的工具。
読み込み中...