Linux 創建網絡會話


 

  RHEL7系統支持網絡會話功能,允許用戶在多個配置文件中快速切換(非常類似於firewalld防火牆服務中的區域技術)。如果我們在公司網絡中使用筆記本電腦時需要手動指定網絡的IP地址,而回到家中則是使用DHCP自動分配IP地址。這就需要麻煩地頻繁修改IP地址,但是使用了網絡會話功能后一切就簡單多了—只需在不同的使用環境中激活相應的網絡會話,就可以實現網絡配置信息的自動切換了。

  可以使用nmcli命令並按照“connection add con-name type ifname”的格式來創建網絡會話。假設將公司網絡中的網絡會話稱之為company,將家庭網絡中的網絡會話稱之為house,現在依次創建各自的網絡會話。

  使用con-name參數指定公司所使用的網絡會話名稱company,然后依次用ifname參數指定本機的網卡名稱(千萬要以實際環境為准,不要照抄書上的eno16777728),用autoconnect no參數設置該網絡會話默認不被自動激活,以及用ip4及gw4參數手動指定網絡的IP地址:

[root@linuxprobe ~]# nmcli connection add con-name company ifname eno16777728 autoconnect no type ethernet ip4 192.168.10.10/24 gw4 192.168.10.1 
Connection 'company' (cead2896-8b12-4f4c-9f27-91948d99f40f) successfully added.

使用con-name參數指定家庭所使用的網絡會話名稱house。因為我們想從外部DHCP服務器自動獲得IP地址,因此這里不需要進行手動指定。

[root@linuxprobe ~]# nmcli connection add con-name house type ethernet ifname eno16777728 
Connection 'house' (254ddbd4-f30c-48fd-b047-2cd7a3d9dd76) successfully added.

在成功創建網絡會話后,可以使用nmcli命令查看創建的所有網絡會話:

[root@linuxprobe ~]# nmcli connection show
NAME         UUID                                  TYPE            DEVICE      
company      cead2896-8b12-4f4c-9f27-91948d99f40f  802-3-ethernet  --          
house        254ddbd4-f30c-48fd-b047-2cd7a3d9dd76  802-3-ethernet  --  
eno16777728  36644a00-01b9-4fcb-a765-748bc7b42672  802-3-ethernet  eno16777728 

使用nmcli命令配置過的網絡會話是永久生效的,這樣當我們在公司時,啟用company網絡會話。

[root@localhost ~]# nmcli connection  up company 
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2)
[root@localhost ~]# ifconfig
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:fe1d:8469  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:1d:84:69  txqueuelen 1000  (Ethernet)
        RX packets 128  bytes 13774 (13.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 74  bytes 10602 (10.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 1162  bytes 98900 (96.5 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1162  bytes 98900 (96.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

如果大家使用的是虛擬機,請把虛擬機系統的網卡(網絡適配器)切換成僅主機模式。


這樣當我們下班回家后,順手啟用house網絡會話,網卡就能自動通過DHCP獲取到IP地址了。

[root@localhost ~]# nmcli connection up house 
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/1)
[root@localhost ~]# ifconfig 
eno16777728: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.180  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::20c:29ff:fe1d:8469  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:1d:84:69  txqueuelen 1000  (Ethernet)
        RX packets 3849  bytes 233486 (228.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 83  bytes 10952 (10.6 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 397  bytes 33948 (33.1 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 397  bytes 33948 (33.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[root@localhost ~]# ping www.baidu.com
PING www.a.shifen.com (61.135.169.125) 56(84) bytes of data.
64 bytes from 61.135.169.125: icmp_seq=1 ttl=55 time=17.6 ms
64 bytes from 61.135.169.125: icmp_seq=2 ttl=55 time=17.5 ms
64 bytes from 61.135.169.125: icmp_seq=3 ttl=55 time=15.9 ms

如果大家使用的是虛擬機,請把虛擬機系統的網卡(網絡適配器)切換成橋接模式,然后重啟虛擬機系統即可。

如何如果大家使用的是虛擬機,這樣設置“虛擬網絡配置”,將達不到效果。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM