你可能會根據你的需要執行以下命令。我會在這裡列舉一些你會用到這些命令的例子。
當你新增一個網絡卡或者從一個物理網絡卡建立出一個虛擬網絡卡的時候,你可能需要使用這些命令將新網絡卡啟用起來。另外,如果你對網絡卡做了某些修改或者網絡卡本身沒有啟用,那麼你也需要使用以下的某個命令將網絡卡啟用起來。
啟用、禁用網絡卡有很多種方法。在這篇文章裡,我們會介紹我們使用過的最好的 5 種方法。
啟用禁用網絡卡可以使用以下 5 個方法來完成:
ifconfig
命令:用於設定網絡卡。它可以提供網絡卡的很多資訊。ifdown/up
命令:ifdown
命令用於禁用網絡卡,ifup
命令用於啟用網絡卡。ip
命令:用於管理網絡卡,用於替代老舊的、不推薦使用的 ifconfig
命令。它和 ifconfig
命令很相似,但是提供了很多 ifconfig
命令所不具有的強大的特性。nmcli
命令:是一個控制 NetworkManager 並報告網路狀態的命令列工具。nmtui
命令:是一個與 NetworkManager 互動的、基於 curses 圖形庫的終端 UI 應用。以下顯示的是我的 Linux 系統中可用網絡卡的資訊。
# ip a1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever2: enp0s3: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:c2:e4:e8 brd ff:ff:ff:ff:ff:ff inet 192.168.1.4/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s3 valid_lft 86049sec preferred_lft 86049sec inet6 fe80::3899:270f:ae38:b433/64 scope link noprefixroute valid_lft forever preferred_lft forever3: enp0s8: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:30:5d:52 brd ff:ff:ff:ff:ff:ff inet 192.168.1.3/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s8 valid_lft 86049sec preferred_lft 86049sec inet6 fe80::32b7:8727:bdf2:2f3/64 scope link noprefixroute valid_lft forever preferred_lft forever
ifconfig
命令用於設定網絡卡。
在系統啟動過程中如果需要啟用網絡卡,呼叫的命令就是 ifconfig
。ifconfig
可以提供很多網絡卡的資訊。不管我們想修改網絡卡的什麼設定,都可以使用該命令。
ifconfig
的常用語法:
# ifconfig [NIC_NAME] Down/Up
執行以下命令禁用 enp0s3
網絡卡。注意,這裡你需要輸入你自己的網絡卡名字。
# ifconfig enp0s3 down
從以下輸出結果可以看到網絡卡已經被禁用了。
# ip a | grep -A 1 "enp0s3:"2: enp0s3: mtu 1500 qdisc fq_codel state DOWN group default qlen 1000 link/ether 08:00:27:c2:e4:e8 brd ff:ff:ff:ff:ff:ff
執行以下命令啟用 enp0s3
網絡卡。
# ifconfig enp0s3 up
從以下輸出結果可以看到網絡卡已經啟用了。
# ip a | grep -A 5 "enp0s3:"2: enp0s3: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:c2:e4:e8 brd ff:ff:ff:ff:ff:ff inet 192.168.1.4/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s3 valid_lft 86294sec preferred_lft 86294sec inet6 fe80::3899:270f:ae38:b433/64 scope link noprefixroute valid_lft forever preferred_lft forever
ifdown
命令用於禁用網絡卡,ifup
命令用於啟用網絡卡。
注意:這兩個命令不支援以 enpXXX
命名的新的網路裝置。
ifdown
/ifup
的常用語法:
# ifdown [NIC_NAME]# ifup [NIC_NAME]
執行以下命令禁用 eth1
網絡卡。
# ifdown eth1
從以下輸出結果可以看到網絡卡已經被禁用了。
# ip a | grep -A 3 "eth1:"3: eth1: mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 link/ether 08:00:27:d5:a0:18 brd ff:ff:ff:ff:ff:ff
執行以下命令啟用 eth1
網絡卡。
# ifup eth1
從以下輸出結果可以看到網絡卡已經啟用了。
# ip a | grep -A 5 "eth1:"3: eth1: mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 08:00:27:d5:a0:18 brd ff:ff:ff:ff:ff:ff inet 192.168.1.7/24 brd 192.168.1.255 scope global eth1 inet6 fe80::a00:27ff:fed5:a018/64 scope link tentative dadfailed valid_lft forever preferred_lft forever
ifup
和 ifdown
不支援以 enpXXX
命名的網絡卡。當執行該命令時得到的結果如下:
# ifdown enp0s8Unknown interface enp0s8
ip
命令用於管理網絡卡,用於替代老舊的、不推薦使用的 ifconfig
命令。
它和 ifconfig
命令很相似,但是提供了很多 ifconfig
命令不具有的強大的特性。
ip
的常用語法:
# ip link set Down/Up
執行以下命令禁用 enp0s3
網絡卡。
# ip link set enp0s3 down
從以下輸出結果可以看到網絡卡已經被禁用了。
# ip a | grep -A 1 "enp0s3:"2: enp0s3: mtu 1500 qdisc fq_codel state DOWN group default qlen 1000 link/ether 08:00:27:c2:e4:e8 brd ff:ff:ff:ff:ff:ff
執行以下命令啟用 enp0s3
網絡卡。
# ip link set enp0s3 up
從以下輸出結果可以看到網絡卡已經啟用了。
# ip a | grep -A 5 "enp0s3:"2: enp0s3: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:c2:e4:e8 brd ff:ff:ff:ff:ff:ff inet 192.168.1.4/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s3 valid_lft 86294sec preferred_lft 86294sec inet6 fe80::3899:270f:ae38:b433/64 scope link noprefixroute valid_lft forever preferred_lft forever
nmcli
是一個控制 NetworkManager 並報告網路狀態的命令列工具。
nmcli
可以用做 nm-applet 或者其他圖形化用戶端的替代品。它可以用於展示、建立、修改、刪除、啟用和停用網路連線。除此之後,它還可以用來管理和展示網路裝置狀態。
nmcli
命令大部分情況下都是使用“設定名稱”工作而不是“裝置名稱”。所以,執行以下命令,獲取網絡卡對應的設定名稱。(LCTT 譯註:在使用 nmtui
或者 nmcli
管理網路連線的時候,可以為網路連線設定一個名稱,就是這裡提到的設定名稱`)
# nmcli con showNAME UUID TYPE DEVICEWired connection 1 3d5afa0a-419a-3d1a-93e6-889ce9c6a18c ethernet enp0s3Wired connection 2 a22154b7-4cc4-3756-9d8d-da5a4318e146 ethernet enp0s8
nmcli
的常用語法:
# nmcli con Down/Up
執行以下命令禁用 enp0s3
網絡卡。在禁用網絡卡的時候,你需要使用設定名稱而不是裝置名稱。
# nmcli con down 'Wired connection 1'Connection 'Wired connection 1' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/6)
從以下輸出結果可以看到網絡卡已經禁用了。
# nmcli dev statusDEVICE TYPE STATE CONNECTIONenp0s8 ethernet connected Wired connection 2enp0s3 ethernet disconnected --lo loopback unmanaged --
執行以下命令啟用 enp0s3
網絡卡。同樣的,這裡你需要使用設定名稱而不是裝置名稱。
# nmcli con up 'Wired connection 1'Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/7)
從以下輸出結果可以看到網絡卡已經啟用了。
# nmcli dev statusDEVICE TYPE STATE CONNECTIONenp0s8 ethernet connected Wired connection 2enp0s3 ethernet connected Wired connection 1lo loopback unmanaged --
nmtui
是一個與 NetworkManager 互動的、基於 curses 圖形庫的終端 UI 應用。
在啟用 nmtui
的時候,如果第一個引數沒有特別指定,它會引導使用者選擇對應的操作去執行。
執行以下命令開啟 mntui
介面。選擇 “Active a connection” 然後點選 “OK”。
# nmtui
選擇你要禁用的網絡卡,然後點選 “Deactivate” 按鈕,就可以將網絡卡禁用。
如果要啟用網絡卡,使用上述同樣的步驟即可。