RHEL和CentOS系统默认使用网络管理器来提供网络服务,这是一种动态管理网格配置的守护进程,能够让网络设备保持连接状态。前面讲过,可以使用nmcli命令来管理网络管理器服务。nmcli 是一款基于命令行的网络配置工具,功能丰富,参数众多。它以轻松地查看网络信息或网络状态:
[root@localhost ~]# nmcli connection show
NAME UUID TYPE DEVICE
test2 0c5f6b10-0f01-4d42-9982-d140fc103e35 ethernet ens33
virbr0 fbd47f35-68a9-4f98-a4c8-a432f1fe5fe5 bridge virbr0
ens33 02e2ed42-6363-4ba6-b976-cc1933c10fdb ethernet --
另外,RHEL7和CentOS 7系统支持网络会话功能,允许用户在多个配置文件中快速切换(非常类似于firewalld 防火墙服务中的区域技术)。如果我们在公司网络中使用笔记本电脑时需要手动指定网络的IP地址,而回到家中则是使用DHCP自动分配IP地址。这就需要频繁地修改IP地址,但是使用了网络会话功能后,一切就简单多了——只需在不同的使用环境中激活相应的网络会话,就可以实现网络配置信息的自动切换了。
可以使用nmcli命令并按照“connection add con-name type ifname”的格式来创建网络会话。假设将公司网络中的网络会话称之为company,将家庭网络中的网络会话称之为home,现在依次创建各自的网络会话。
(1)使用con-name参数指定公司所使用的网络会话名称company,然后依次用 ifname参数指定本机的网卡名称(千万要以实际环境为准,不要照抄示例上的ens33)。用 autoconnect no参数设置该网络会话默认不被自动激活,以及用ipv4及gw4参数手动指定网络的IP地址:
[root@localhost ~]# nmcli connection add con-name company ifname ens33 autoconnect no type ethernet ipv4.address 192.168.10.1/24 gw4 192.168.10.2
连接“company”(4d07fe9a-ce23-4b36-a4ce-eb8c60f13e49) 已成功添加。
(2)使用 con-name 参数指定家庭所使用的网络会话名称home。我们想从外部DHCP服务器自动获得IP地址,因此这里不需要进行手动指定。
[root@localhost ~]# nmcli connection add con-name home type ethernet ifname ens33
连接“home”(185b4201-c682-4da4-93fb-57b8d4672e43) 已成功添加。
(3)在成功创建网络会话后,可以使用nmcli 命令查看创建的所有网络会话;
[root@localhost ~]# nmcli connection show
NAME UUID TYPE DEVICE
ens33 0c5f6b10-0f01-4d42-9982-d140fc103e35 ethernet ens33
virbr0 fbd47f35-68a9-4f98-a4c8-a432f1fe5fe5 bridge virbr0
company 4d07fe9a-ce23-4b36-a4ce-eb8c60f13e49 ethernet --
home 185b4201-c682-4da4-93fb-57b8d4672e43 ethernet --
(4)使用 nmcli命令配置过的网络会话是永久生效的,这样当我们下班回家后,顺手启用home网络会话,网卡就能自动通过DHCP获取到IP地址了。
[root@localhost ~]# nmcli connection up home
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/11)
[root@localhost ~]# ifconfig
ens33: flags=4163
inet 192.168.44.138 netmask 255.255.255.0 broadcast 192.168.44.255
inet6 fe80::af01:7c23:492c:443 prefixlen 64 scopeid 0x20
ether 00:0c:29:30:a3:4c txqueuelen 1000 (Ethernet)
RX packets 191 bytes 28820 (28.1 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 594 bytes 66129 (64.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
......
(5)如果大家使用的是虚拟机,请把虚拟机系统的网卡(网络适配器)切换成桥接模式,如图所示、然后重启虚拟机系统即可。
(6)如果回到公司,可以停止home会话,启动company会话(连接)。
[root@localhost ~]# nmcli connection down home
成功取消激活连接 'home'(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/11)
[root@localhost ~]# nmcli connection up company
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/13)
[root@localhost ~]# ifconfig
ens33: flags=4163
inet 192.168.44.138 netmask 255.255.255.0 broadcast 192.168.44.255
inet6 fe80::bbcd:979b:5c8f:8c75 prefixlen 64 scopeid 0x20
ether 00:0c:29:30:a3:4c txqueuelen 1000 (Ethernet)
RX packets 209 bytes 30984 (30.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 690 bytes 79692 (77.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
......
(7)如果要删除会话连接,请执行nmtui命令,执行“Edit a connection”命令,然后中要删除的会话,按“<删除>”按钮即可,如图所示
绑定两块网卡
一般来讲,生产环境必须提供7×24小时的网络传输服务。借助于网卡绑定技术,不仅可以提高网络传输速度,更重要的是,还可以确保在其中一块网卡出现故障时,依然可以正常提供网络服务。假设我们对两块网卡实施了绑定,这样在正常工作中它们会共同传输数据,使得网络传输的速度变得更快;而且即使有一块网卡突然出现了故障,另外一块网卡便会立即自动顶替上去,保证数据传输不会中断。