目录
Nmcli 是NetworkManger软件名的缩写,也是该软件下的一个命令,专门用于管理Linux服务器的网络配置。在centos 7中已经出现该命令, 在centos 8中,官方放弃了network服务,主推Nmcli服务。
具体的介绍和配置案例,可以查看官方的产品文档:
(网络指南 Red Hat Enterprise Linux 7 | Red Hat Customer Portal)
可以在命令行或者互动编译器使用Nmcli创建、显示、编辑、删除、激活和停用网络连接,以及控制和显示网络设备状态。
在Redhat/8(centOS/8)中通常有以下三种方式配置网络
- 通过nmcli connection add命令配置,会自动生成ifcfg文件。
- 手动配置ifcfg文件,通过nmcli connection reload来加载生效。
- 手动配置ifcfg文件,通过传统network.service来加载生效。
一、Nmcli — 静态IP的配置
我们为什么要为Linux系统配置一个静态的IP地址呢?
通常使用linux系统都是需要提供服务的,作为服务器都需要固定的IP地址,就是静态的IP地址。这样,客户端才能正常访问这个Linux服务器。
1.网卡的配置文件
在RHEL 8 中 网卡的配置文件 一般在 /etc/sysconfig/network-scripts/ifcfg
ifcfg后面是自己的网卡名称
以我为例子,我的是 : /etc/sysconfig/network-scripts/ifcfg-ens160
下面是Linux 默认配置网卡的信息
[root@localhost li]# cat /etc/sysconfig/network-scripts/ifcfg-ens160 TYPE=Ethernet # 网卡类型:以太网 PROXY_METHOD=auto # 代理方式:关闭状态BROWSER_ONLY=no # 只是浏览器(yes|no)BOOTPROTO=dhcp # 网卡获得ip地址的方式 (static|dhcp|none|bootp)DEFROUTE=yes # 设置为默认路由(yes|no)IPV4_FAILURE_FATAL=no # 是否开启IPV4致命错误检测(yes|no)IPV6INIT=yes # IPV6是否自动初始化IPV6_AUTOCONF=yes # IPV6是否自动配置IPV6_DEFROUTE=yes # IPV6是否可以为默认路由IPV6_FAILURE_FATAL=no # 是否开启IPV6致命错误检测NAME=ens160 # 网卡物理设备名称UUID=734e5e04-1ffe-4907-96d1-87203246e77c #uuid识别码DEVICE=ens160 # 网卡设备名称ONBOOT=yes # 开机自启(yes|no)PAC_URL=https://sub.100oj.top/api/v1/client/subscribe?token=f0b424080d04772a1ae60575c0197191
2.在命令行输入命令
nmcli connection modify ens160 ipv4.addresses 192.168.84.129/24 ipv4.gateway 192.168.84.1 ipv4.dns 8.8.8.8 ipv4.method manual connection.autoconnect yes
一般是在局域网内的虚拟机上操作,所以IP地址、网关,要根据VMware所给的网段更改(192.168.x.x)我的是192.168.84.X
[root@localhost li]# nmcli connection modify ens160 ipv4.addresses 192.168.84.129/24 ipv4.gateway 192.168.84.1 ipv4.dns 8.8.8.8 ipv4.method manual connection.autoconnect yes # 连接网卡ens160 修改# ipv4.method manual - - - IPv4模式 (aoto=自动 manual=静态)# ipv4. addresses 192.168.84.129/24 - - - IP地址# ipv4.gateway 192.168.84.1 - - - 网关# ipv4.dns 8.8.8.8 - - - dns解析# connection.autoconnect yes - - - 开机自动连接
在我们在命令行输入上面的命令之后,会更改网卡的的配置,这个时候我们需要加载网卡初始化的信息,让更改的配置生效。
[root@localhost li]# nmcli connection up ens160
这个时候,我们再次查看网卡的配置文件: /etc/sysconfig/network-scripts/ifcfg-ens160
相较于默认网卡配置,会多出几行内容,这就是我们刚刚修改添加的内容
IPADDR=192.168.84.129 #IP地址PREFIX=24 #掩码位数GATEWAY=192.168.84.1 #网关DNS1=8.8.8.8 #dns
二 、Team网卡绑定的实验
1.Team网络组的模式,及其配置的示例文件
我们可以把 team 组当作一个设 备。 利用多网卡同时工作来提高网络速度,还可以通过Teaming 实现不同网卡之间的负载均衡 (Load balancing)和网卡冗余(Fault tolerance)。
team网络组的模式有:
broadcast(广播模式):每个网卡都传送数据包。
roundrobin(轮询模式):每个网卡轮询方式传送数据。
activebackup(主备模式):网卡之间有主备,主网卡传送数据包,备网卡不传送,主网卡down了,备网卡才传送数据。
loadbalance(负载均衡):监控流量并使用哈希函数,使得每个网卡传送的数据包达到相等。
lacp:需要借助交换机,实现高级的负载均衡。
一些nmcli的常用命令:
/*查看当前会话: nmcli connection show
/*查看本地网卡情况:nmcli device
/*查看设备状态信息: nmcli device status
/*激活网卡 绑定会话:nmcli device connect ens…
2.实验过程
(1)、创建逻辑接口,名称为team0,且使用主备模式
nmcli connection add type team ifname team0 con-name team0 config '{"runner":{"name":"activebackup"}}'
(最外层单引号)
*** con-name为会话名(自己随意起名)
*** ifname接口名称(也就是网卡名)
*** runner 运行模式
*** name 运行名称
(2)、添加多个从设备(从)
若网卡类型无 team-slave则直接写网卡真实类型
将指定的物理网卡添加到team0组成网络组。
这里要加入team逻辑网卡的物理网卡不可以有IP,所以这里一班选择新加入的网卡进行team网卡绑定。如果想要绑定旧网卡,需要先清空网卡的配置信息
nmcli connection add type team-slave ifname ens224 con-name team0-port1 master team0
连接 "team0-port1" (cb11847e-7229-4203-9a66-e80c127dfe0a) 已成功添加。
nmcli connection add type team-slave ifname ens256 con-name team0-port2 master team0
连接 "team0-poet2" (66a9e7b7-9f5f-43e3-a5e0-2c26bea629b8) 已成功添加
(3)、激活设备
先激活主设备,再激活从设备
nmcli connection up team0-port1
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/32)
nmcli connection up team0-port2
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/33)
(4)、查看网卡的状态
nmcli connection up team0
连接已成功激活(master waiting for slaves)(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/34)
查看当前会话(因为我的失误,从设备的别名本应该是team0-port2 ,手误打成了team0-poet2 )
注:显示team工作状态(测试实验状态) teamdctl team0 stat
如果我们要删除删除team0
[root@localhost ~]# nmcli connection delete tem0-port1
[root@localhost ~]# nmcli connection delete team0-port2
[root@localhost ~]# nmcli connectiion delete team0
三 、桥接
桥接 - - - 将一台机器上的若干个接口连接起来,其中一个网卡收到的报文会被复制给其他网卡发送出去,使得网口之间的报文可以互相转发。
1.实验过程
(1)、创建一个桥接设备和会话
nmcli connection add type bridge ifname br1 con-name br1
连接 "br1" (6c6d6859-bfb5-4f5e-abf8-271b456bc595) 已成功添加。
(2)、配置软件桥接网卡的IP地址 网关和地址获取方式
nmcli connection modify br1 ipv4.addresses
nmcli connection modify br1 ipv4.gateway
nmcli connection modify br1 ipv4.method
(3)、添加设备到桥接设备
nmcli connection add type bridge-slave ifname ens160 con-name br1-slave master br1
连接 "br1-slave" (eb09aec7-86a3-4661-9da5-855cca02845f) 已成功添加。
(4)、启用设备 ,先启动从设备
nmcli connection up br1
连接已成功激活(master waiting for slaves)
(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/42)
nmcli connection up br1
连接已成功激活(master waiting for slaves)
(D-Bus 活动路 径:/org/freedesktop/NetworkManager/ActiveConnection/45
(5)、启用桥接会话
nmcli connection up br1
连接已成功激活(master waiting for slaves)
(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/45)
来源地址:https://blog.csdn.net/m0_63521991/article/details/129964421