首頁 > 軟體

在 RedHat/CentOS 7.x 中使用 nmcli 命令管理網路

2020-06-16 18:00:44

Red Hat Enterprise Linux 7CentOS 7 中預設的網路服務由 NetworkManager 提供,這是動態控制及設定網路的守護行程,它用於保持當前網路裝置及連線處於工作狀態,同時也支援傳統的 ifcfg 型別的組態檔。

NetworkManager 可以用於以下型別的連線:Ethernet,VLANS,Bridges,Bonds,Teams,Wi-Fi,mobile boradband(如移動3G)以及 IP-over-InfiniBand。針對與這些網路型別,NetworkManager 可以設定他們的網路別名,IP 地址,靜態路由,DNS,VPN連線以及很多其它的特殊引數。

可以用命令列工具 nmcli 來控制 NetworkManager。

nmcli 用法

  1. # nmcli [ OPTIONS ] OBJECT { COMMAND | help }

我們可以通過 TAB 鍵補全命令,當你忘記這個命令的語法時只需要按下 TAB 就可以看到選項列表。

使用 nmcli 的一些例子:

  1. # nmcli general status

這條命令將 NetworkManager 的所有狀態都列印出來。

  1. # nmcli connection show

顯示所有連線。

  1. # nmcli connection show -a

僅顯示當前活動的連線。

  1. # nmcli device status

列出 NetworkManager 識別出的裝置列表及他們的狀態。

啟動/停止 網路介面

使用 nmcli 工具啟動或停止網路介面,與 ifconfig 的 up/down 是一樣的。

使用下列命令停止某個介面:

  1. # nmcli device disconnect eno16777736

下列命令用來啟動介面:

  1. # nmcli device connect eno16777736

新增靜態IP的乙太網連線

以下命令可以新增一個靜態IP地址的乙太網連線:

  1. # nmcli connection add type ethernet con-name NAME_OF_CONNECTION ifname interface-name ip4 IP_ADDRESS gw4 GW_ADDRESS

根據你需要的設定更改 NAME_OF_CONNECTION,IP_ADDRESS, GW_ADDRESS 引數(如果不需要閘道器的話可以省略最後一部分)。

  1. # nmcli connection add type ethernet con-name NEW ifname eno16777736 ip4 192.168.1.141 gw4 192.168.1.1

使用下列命令設定DNS伺服器:

  1. # nmcli connection modify NEW ipv4.dns "8.8.8.8 8.8.4.4"

下列命令啟動新的 Ethernet 連線:

  1. # nmcli connection up NEW ifname eno16777736

檢視新連線的設定資訊:

  1. # nmcli -p connection show NEW

增加一個使用 DHCP 的新連線

增加新的連線,使用DHCP自動分配IP地址,閘道器,DNS等,你要做的就是將命令列後 ip/gw 地址部分去掉就行了,DHCP會自動分配這些引數。

例,在 eno 16777736 裝置上設定一個 名為 NEW_DHCP 的 DHCP 連線

  1. # nmcli connection add type ethernet con-name NEW_DHCP ifname eno16777736

IT145.com E-mail:sddin#qq.com