歡迎光臨
每天分享高質量文章

Linux 中如何啟用和禁用網卡? | Linux 中國

啟用、禁用網卡有很多種方法。在這篇文章里,我們會介紹我們使用過的最好的 5 種方法。

— Magesh Maruthamuthu

 

你可能會根據你的需要執行以下命令。我會在這裡列舉一些你會用到這些命令的例子。

當你添加一個網卡或者從一個物理網卡創建出一個虛擬網卡的時候,你可能需要使用這些命令將新網卡啟用起來。另外,如果你對網卡做了某些修改或者網卡本身沒有啟用,那麼你也需要使用以下的某個命令將網卡啟用起來。

啟用、禁用網卡有很多種方法。在這篇文章里,我們會介紹我們使用過的最好的 5 種方法。

啟用禁用網卡可以使用以下 5 個方法來完成:

◈ ifconfig 命令:用於配置網卡。它可以提供網卡的很多信息。
◈ ifdown/up 命令:ifdown 命令用於禁用網卡,ifup 命令用於啟用網卡。
◈ ip 命令:用於管理網卡,用於替代老舊的、不推薦使用的 ifconfig 命令。它和 ifconfig 命令很相似,但是提供了很多 ifconfig 命令所不具有的強大的特性。
◈ nmcli 命令:是一個控制 NetworkManager 並報告網絡狀態的命令列工具。
◈ nmtui 命令:是一個與 NetworkManager 交互的、基於 curses 圖形庫的終端 UI 應用。

以下顯示的是我的 Linux 系統中可用網卡的信息。

  1. # ip a
  2. 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
  3. link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  4. inet 127.0.0.1/8 scope host lo
  5. valid_lft forever preferred_lft forever
  6. inet6 ::1/128 scope host
  7. valid_lft forever preferred_lft forever
  8. 2: enp0s3: mtu 1500 qdisc fq_codel state UP group default qlen 1000
  9. link/ether 08:00:27:c2:e4:e8 brd ff:ff:ff:ff:ff:ff
  10. inet 192.168.1.4/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s3
  11. valid_lft 86049sec preferred_lft 86049sec
  12. inet6 fe80::3899:270f:ae38:b433/64 scope link noprefixroute
  13. valid_lft forever preferred_lft forever
  14. 3: enp0s8: mtu 1500 qdisc fq_codel state UP group default qlen 1000
  15. link/ether 08:00:27:30:5d:52 brd ff:ff:ff:ff:ff:ff
  16. inet 192.168.1.3/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s8
  17. valid_lft 86049sec preferred_lft 86049sec
  18. inet6 fe80::32b7:8727:bdf2:2f3/64 scope link noprefixroute
  19. valid_lft forever preferred_lft forever

1、如何使用 ifconfig 命令啟用禁用網卡?

ifconfig 命令用於配置網卡。

在系統啟動過程中如果需要啟用網卡,呼叫的命令就是 ifconfigifconfig 可以提供很多網卡的信息。不管我們想修改網卡的什麼配置,都可以使用該命令。

ifconfig 的常用語法:

  1. # ifconfig [NIC_NAME] Down/Up

執行以下命令禁用 enp0s3 網卡。註意,這裡你需要輸入你自己的網卡名字。

  1. # ifconfig enp0s3 down

從以下輸出結果可以看到網卡已經被禁用了。

  1. # ip a | grep -A 1 "enp0s3:"
  2. 2: enp0s3: mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
  3. link/ether 08:00:27:c2:e4:e8 brd ff:ff:ff:ff:ff:ff

執行以下命令啟用 enp0s3 網卡。

  1. # ifconfig enp0s3 up

從以下輸出結果可以看到網卡已經啟用了。

  1. # ip a | grep -A 5 "enp0s3:"
  2. 2: enp0s3: mtu 1500 qdisc fq_codel state UP group default qlen 1000
  3. link/ether 08:00:27:c2:e4:e8 brd ff:ff:ff:ff:ff:ff
  4. inet 192.168.1.4/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s3
  5. valid_lft 86294sec preferred_lft 86294sec
  6. inet6 fe80::3899:270f:ae38:b433/64 scope link noprefixroute
  7. valid_lft forever preferred_lft forever

2、如何使用 ifdown/up 命令啟用禁用網卡?

ifdown 命令用於禁用網卡,ifup 命令用於啟用網卡。

註意:這兩個命令不支持以 enpXXX 命名的新的網絡設備。

ifdown/ifup 的常用語法:

  1. # ifdown [NIC_NAME]
  2. # ifup [NIC_NAME]

執行以下命令禁用 eth1 網卡。

  1. # ifdown eth1

從以下輸出結果可以看到網卡已經被禁用了。

  1. # ip a | grep -A 3 "eth1:"
  2. 3: eth1: mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
  3. link/ether 08:00:27:d5:a0:18 brd ff:ff:ff:ff:ff:ff

執行以下命令啟用 eth1 網卡。

  1. # ifup eth1

從以下輸出結果可以看到網卡已經啟用了。

  1. # ip a | grep -A 5 "eth1:"
  2. 3: eth1: mtu 1500 qdisc pfifo_fast state UP qlen 1000
  3. link/ether 08:00:27:d5:a0:18 brd ff:ff:ff:ff:ff:ff
  4. inet 192.168.1.7/24 brd 192.168.1.255 scope global eth1
  5. inet6 fe80::a00:27ff:fed5:a018/64 scope link tentative dadfailed
  6. valid_lft forever preferred_lft forever

ifup 和 ifdown 不支持以 enpXXX 命名的網卡。當執行該命令時得到的結果如下:

  1. # ifdown enp0s8
  2. Unknown interface enp0s8

3、如何使用 ip 命令啟用禁用網卡?

ip 命令用於管理網卡,用於替代老舊的、不推薦使用的 ifconfig 命令。

它和 ifconfig 命令很相似,但是提供了很多 ifconfig 命令不具有的強大的特性。

ip 的常用語法:

  1. # ip link set Down/Up

執行以下命令禁用 enp0s3 網卡。

  1. # ip link set enp0s3 down

從以下輸出結果可以看到網卡已經被禁用了。

  1. # ip a | grep -A 1 "enp0s3:"
  2. 2: enp0s3: mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
  3. link/ether 08:00:27:c2:e4:e8 brd ff:ff:ff:ff:ff:ff

執行以下命令啟用 enp0s3 網卡。

  1. # ip link set enp0s3 up

從以下輸出結果可以看到網卡已經啟用了。

  1. # ip a | grep -A 5 "enp0s3:"
  2. 2: enp0s3: mtu 1500 qdisc fq_codel state UP group default qlen 1000
  3. link/ether 08:00:27:c2:e4:e8 brd ff:ff:ff:ff:ff:ff
  4. inet 192.168.1.4/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s3
  5. valid_lft 86294sec preferred_lft 86294sec
  6. inet6 fe80::3899:270f:ae38:b433/64 scope link noprefixroute
  7. valid_lft forever preferred_lft forever

4、如何使用 nmcli 命令啟用禁用網卡?

nmcli 是一個控制 NetworkManager 並報告網絡狀態的命令列工具。

nmcli 可以用做 nm-applet 或者其他圖形化客戶端的替代品。它可以用於展示、創建、修改、刪除、啟用和停用網絡連接。除此之後,它還可以用來管理和展示網絡設備狀態。

nmcli 命令大部分情況下都是使用“配置名稱”工作而不是“設備名稱”。所以,執行以下命令,獲取網卡對應的配置名稱。(LCTT 譯註:在使用 nmtui 或者 nmcli 管理網絡連接的時候,可以為網絡連接配置一個名稱,就是這裡提到的配置名稱Profile name`)

  1. # nmcli con show
  2. NAME UUID TYPE DEVICE
  3. Wired connection 1 3d5afa0a-419a-3d1a-93e6-889ce9c6a18c ethernet enp0s3
  4. Wired connection 2 a22154b7-4cc4-3756-9d8d-da5a4318e146 ethernet enp0s8

nmcli 的常用語法:

  1. # nmcli con Down/Up

執行以下命令禁用 enp0s3 網卡。在禁用網卡的時候,你需要使用配置名稱而不是設備名稱。

  1. # nmcli con down 'Wired connection 1'
  2. Connection 'Wired connection 1' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/6)

從以下輸出結果可以看到網卡已經禁用了。

  1. # nmcli dev status
  2. DEVICE TYPE STATE CONNECTION
  3. enp0s8 ethernet connected Wired connection 2
  4. enp0s3 ethernet disconnected --
  5. lo loopback unmanaged --

執行以下命令啟用 enp0s3 網卡。同樣的,這裡你需要使用配置名稱而不是設備名稱。

  1. # nmcli con up 'Wired connection 1'
  2. Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/7)

從以下輸出結果可以看到網卡已經啟用了。

  1. # nmcli dev status
  2. DEVICE TYPE STATE CONNECTION
  3. enp0s8 ethernet connected Wired connection 2
  4. enp0s3 ethernet connected Wired connection 1
  5. lo loopback unmanaged --

5、如何使用 nmtui 命令啟用禁用網卡?

nmtui 是一個與 NetworkManager 交互的、基於 curses 圖形庫的終端 UI 應用。

在啟用 nmtui 的時候,如果第一個引數沒有特別指定,它會引導用戶選擇對應的操作去執行。

執行以下命令打開 mntui 界面。選擇 “Active a connection” 然後點擊 “OK”。

  1. # nmtui

選擇你要禁用的網卡,然後點擊 “Deactivate” 按鈕,就可以將網卡禁用。

如果要啟用網卡,使用上述同樣的步驟即可。

已同步到看一看
赞(0)

分享創造快樂