linux系統中建立網路會話
阿新 • • 發佈:2020-11-02
什麼是網路會話?
網路會話,可以看作是一種網路模板。可以讓我們在不同的工作場景中快速的切換網路環境,以適應不同的工作地點(類似於firewalld防火牆服務中的區域技術,允許使用者在多個配置檔案中快速切換)。
在RHEL和CentOS系統預設使用NetworkManager來提供網路服務,這是一種動態管理網路配置的守護程序,能夠讓網路裝置保持連線狀態。(https://blog.csdn.net/weixin_36522099/article/details/104770911)
可以使用nmcli命令來管理NetwoekManager服務。它可以輕鬆地檢視網路資訊和網路狀態:
用法及引數(https://blog.csdn.net/weixin_36522099/article/details/104770911)
1、使用nmcli檢視網路會話
[root@linuxprobe network-scripts]# nmcli connection show
NAME UUID TYPE DEVICE
eno16777728 e72a626f-2946-4285-9edf-2f5a6b172712 802-3-ethernet eno16777728
[root@linuxprobe network-scripts]# nmcli con show ## 效果一樣
NAME UUID TYPE DEVICE
eno16777728 e72a626f -2946-4285-9edf-2f5a6b172712 802-3-ethernet eno16777728
2、顯示指定網絡卡詳細的網路會話
[root@linuxprobe network-scripts]# nmcli connection show eno16777728 | wc -l
61
[root@linuxprobe network-scripts]# nmcli connection show eno16777728 | head
connection.id: eno16777728
connection.uuid: e72a626f -2946-4285-9edf-2f5a6b172712
connection.interface-name: --
connection.type: 802-3-ethernet
connection.autoconnect: yes
connection.timestamp: 1604238903
connection.read-only: no
connection.permissions:
connection.zone: --
connection.master: --
[root@linuxprobe network-scripts]# nmcli connection show eno16777728 | tail
GENERAL.DEFAULT: no
GENERAL.DEFAULT6: no
GENERAL.VPN: no
GENERAL.ZONE: --
GENERAL.DBUS-PATH: /org/freedesktop/NetworkManager/ActiveConnection/0
GENERAL.CON-PATH: /org/freedesktop/NetworkManager/Settings/0
GENERAL.SPEC-OBJECT: --
GENERAL.MASTER-PATH: --
IP4.ADDRESS[1]: ip = 192.168.10.10/24, gw = 0.0.0.0
IP6.ADDRESS[1]: ip = fe80::20c:29ff:fee4:f7b9/64, gw = ::
以公司和家庭為例增加網路會話
3、增加公司網路會話
[root@linuxprobe Desktop]# nmcli con show ## 檢視所有的網路會話
NAME UUID TYPE DEVICE
eno16777728 e72a626f-2946-4285-9edf-2f5a6b172712 802-3-ethernet eno16777728
[root@linuxprobe Desktop]# ifconfig | head -n 5 ## 檢視網絡卡名稱
eno16777728: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.10.10 netmask 255.255.255.0 broadcast 192.168.10.255
inet6 fe80::20c:29ff:fee4:f7b9 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:e4:f7:b9 txqueuelen 1000 (Ethernet)
RX packets 2 bytes 120 (120.0 B)
[root@linuxprobe Desktop]# nmcli con add con-name company ifname eno16777728 autoconnect no type ethernet ip4 192.168.10.10/24 gw4 192.168.10.1 ## 增加公司網路會話
## add 表示新增網路會話,ifname指定本機的網絡卡名稱,autoconnect 設定是否自動連線,這裡手動指定IP地址, type指定網路型別
Connection 'company' (f3824b94-5bdf-4c1d-97d1-18721b010016) successfully added.
[root@linuxprobe Desktop]# nmcli con show ## 列出所有的網路會話
NAME UUID TYPE DEVICE
company f3824b94-5bdf-4c1d-97d1-18721b010016 802-3-ethernet --
eno16777728 e72a626f-2946-4285-9edf-2f5a6b172712 802-3-ethernet eno16777728
4、增加家庭網路會話
[root@linuxprobe Desktop]# nmcli con add con-name home ifname eno16777728 autoconnect yes type ethernet ## 增加家庭網路會話
## add表示增加網路會話,con-name指定增加網路會話的名字,ifname指定本機網絡卡名稱,autoconnect指定是否自動連線(這裡使用DHCP伺服器自動獲取IP地址),type指定網路型別
Connection 'home' (86494d2a-8971-4c28-829e-1619d66d2bc4) successfully added.
[root@linuxprobe Desktop]# nmcli con show
NAME UUID TYPE DEVICE
home 86494d2a-8971-4c28-829e-1619d66d2bc4 802-3-ethernet --
company f3824b94-5bdf-4c1d-97d1-18721b010016 802-3-ethernet --
eno16777728 e72a626f-2946-4285-9edf-2f5a6b172712 802-3-ethernet eno16777728
5、測試效果,切換至家庭網路會話和公司網路會話
[root@linuxprobe Desktop]# ifconfig | head -n 5 ## 檢視當前IP
eno16777728: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.10.10 netmask 255.255.255.0 broadcast 192.168.10.255
inet6 fe80::20c:29ff:fee4:f7b9 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:e4:f7:b9 txqueuelen 1000 (Ethernet)
RX packets 21 bytes 2240 (2.1 KiB)
[root@linuxprobe Desktop]# nmcli con up home ## 切換至家庭網路會話
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/1)
[root@linuxprobe Desktop]# ifconfig | head -n 5 ## 檢視IP
eno16777728: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.3.7 netmask 255.255.255.0 broadcast 192.168.3.255
inet6 fe80::20c:29ff:fee4:f7b9 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:e4:f7:b9 txqueuelen 1000 (Ethernet)
RX packets 46 bytes 5353 (5.2 KiB)
[root@linuxprobe Desktop]# systemctl restart network ## 重置網絡卡
[root@linuxprobe Desktop]# ifconfig | head -n 5 ## 檢視IP
eno16777728: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.10.10 netmask 255.255.255.0 broadcast 192.168.10.255
inet6 fe80::20c:29ff:fee4:f7b9 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:e4:f7:b9 txqueuelen 1000 (Ethernet)
RX packets 52 bytes 5803 (5.6 KiB)
切換公司網路會話:
[root@linuxprobe Desktop]# ifconfig | head -n 5 ## 檢視當前IP
eno16777728: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.10.10 netmask 255.255.255.0 broadcast 192.168.10.255
inet6 fe80::20c:29ff:fee4:f7b9 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:e4:f7:b9 txqueuelen 1000 (Ethernet)
RX packets 66 bytes 7264 (7.0 KiB)
[root@linuxprobe Desktop]# nmcli con up company ## 切換至公司網路會話
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/7)
[root@linuxprobe Desktop]# ifconfig | head -n 5 ## 檢視IP
eno16777728: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.10.10 netmask 255.255.255.0 broadcast 192.168.10.255
inet6 fe80::20c:29ff:fee4:f7b9 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:e4:f7:b9 txqueuelen 1000 (Ethernet)
RX packets 68 bytes 7384 (7.2 KiB)