1. 程式人生 > >nmcli 命令:Linux 系統的命令列網路管理器

nmcli 命令:Linux 系統的命令列網路管理器

要想在 Linux 命令下對網路進行相關設定,總的來說不外乎兩類方法:其一乃寫配置檔案,如 /etc/network/interfaces 進行網路介面配置,其二直接在終端呼叫 Linux 網路管理命令,在終端間接同文件打交道。

首先為大家所熟知的,ifconfig 命令和 iwconfig 命令自不必多言。它們作為基礎命令預裝在絕大部分的 Linux 發行版中。相比之下,iwconfig 更偏向於 “網路元素” (如 essid、wep key 等),而 ifconfig 命令則更偏向於 “網絡卡”,你可以使用該命令對針對網絡卡的大部分屬性進行設定。順便一提,ifconfig,可以拆為 “interface configurations”,而 iwconfig 則可以被拆成 “wireless interface configurations”。方便你的理解。

$ ifconfig eth1 10.0.0.1 netmask 255.0.0.0 hw ether 10:10:10:10:10:10

這裡我還要介紹兩個工具,分別名為 nmclinmtui,它們被預裝在 RHEL(Red Hat Enterprise Linux)和 CentOS7+ 發行版中。在嘗試後,發現基於 Debian 的 Kali Linux 也同樣可以直接呼叫該命令。看名字,“nmcli” 即 “network manager command line interface”(網路管理器命令列介面),而 “nmtui” 即 “network manager text user interface”(網路管理器使用者文字介面)。二者不過是從不同角度實現對網路管理的演繹罷了。簡單起見,下面我只講 nmcli

這款基於命令列的 Linux 網路管理器。你可以在這裡得到一些幫助。事實上,相對於經典的 ifconfig 命令,nmcli 命令更為強大,從某種意義來說。

$ nmcli [ OPTIONS ] OBJECT { COMMAND | help }

nmcli 的命令引數有很多,下面我挑幾條代表性的來講。

0x01:啟用網路

nmcli networking on

0x02:檢查 Network Manager 的狀態

nmcli general status

0x03:檢查裝置和連線之間的連線狀態

nmcli device status

0x04:連線裝置

nmcli device connect DEVICENAME

0x05:更改主機名

nmcli general hostname HOSTNAME

0x06:確認連線

nmcli connection show

0x07:啟用連線

nmcli connection up CONNECTIONNAME

0x08:更改連線的 IP 地址

nmcli connection modify CONNECTIONNAME ipv4.addresses IPADDRESS

0x09:刪除裝置的連線

nmcli connection delete CONNECTIONNAME

如此一來,我們的網路備用庫又多了一款工具。下次遇到問題也不會至於乾著急。