Centos7中网络及设备相关配置


centos7中,不再赞成使用ifconfig工具,取而代之的是nmcli工具,服务管理也是以systemctl工具取代了service,这些之前版本的工具虽然在centos7中还可以继续使用,只是出于版本兼容的目的,
下面,我们就对centos7中网络配置和管理进行介绍和说明。
1.nmcli获取网卡相关信息
# nmcli connection show
--如网卡未启用,也未建立相关配置文件,则在device栏位显示”—”。在配置完成,重启网络服务后就会显示相应的设备名。
--注:
centos7中,对网卡的命名规则有所变更,具体如下。
1)eno1:由主板BIOS內建的网卡;
2)ens1:由主板BIOS內建的PCI-E界面的网卡;
3)enp2s0:PCI-E界面的独立网卡,可能有多个网卡接口,所以,也许会有s0,s1...等的编号;
4)eth0:如上述命名规则都不适用,则回到原来的网卡命名及编号规则;

2.nmcli手工配置网卡
# nmcli connection modify ens1
connection.autoconnect yes
ipv4.method manual
ipv4.address 192.168.1.21/24
ipv4.gateway 192.168.1.1
ipv4.dns 114.114.114.114
--重启网络服务
# systemctl restart network.service

# systemctl restart network

3.nmcli查看确定网卡相关信息
# nmcli connection show ens1
# nmcli device status

centos7中,不再使用ifconfig,以ip addr取而代之。
# ip addr

4.为网卡设置双IP
# cd /etc/sysconfig/network-scripts/
# cp ifcfg-enps1 ifcfg-ens1:1
# vi ifcfg-enps1:1
--修改如下内容,保存并退出。
NAME=ens1:1
DEVICE=ens1:1
IPADDR=192.168.1.22
PREFIX=24

# nmcli connection show ens1
--输出结果中将看到该网卡有两个IP地址。

--查看所有网络设备信息
# ip addr
--输出结果中两个inet部分包含两个IP地址。

5.配置hostname
# hostnamectl set-hostname www.test.com
# cat /etc/hostname

6.nmcli配置网卡自动获取IP地址
# nmcli connection modify eth0
> connection.autoconnect yes
> ipv4.method auto

# systemctl restart network

6.配置bonding网卡
6.1 bonding概念
将多块网卡绑定到同一个IP地址,并对外提供服务,既可以实现高可用,还可以实现负载均衡。因为,不可以将两块网卡设置为同一个IP地址,通过bonding机制,可以虚拟一块网卡对外提供服务,且物理网卡被映射为相同的MAC地址。
6.2 bonding工作模式
1) Mode 0 (balance-rr和Round-robin)
一次轮询在每一个slave 接口上面发送数据包,本模式提供负载均衡和容错的能力。
2) Mode 1 (active-backup)
任何时刻只有一个slave被激活,当且仅当活动的slave接口失败时,才会激活其他slave。为避免交换机发生混乱,该模式绑定的MAC地址只在一个外部端口上可见。
3) Mode 3 (broadcast)
所有slave接口上传送所有报文,提供容错能力。
此外,active-backup、balance-tlb 和 balance-alb 模式无需对交换机进行任何特殊配置,而其他模式为了整合链接,则需对交换机进行相关配置。
6.3 添加bonding步骤
1) 添加bonding接口
#nmcli connection add type bond con-name bond0 ifname bond0 mode active-backup ipv4.method manual ipv4.addresses 192.168.1.66/24 ipv4.dns 114.114.114.114 ipv4.gateway 192.168.1.1
--注
1)nmcli connection add:创建命令必须;
2)type bond:指定配置类型;
3)con-name bond0:指定配置文件名字;
4)ifname bond0:指定接口名字;
5)mode active-backup:指定绑定模式;
6)ipv4.method(manual | auto):指定ip地址模式,manual对应静态地址,auto对应动态地址(ip,dns,gateway都无需指定);
7)ipv4.addresses:指定ipv4静态地址;
8)ipv4.dns:指定dns服务器;
9)ipv4.gateway:指定网关;
10)该命令自动创建配置文件,服务器重启配置不会丢失。

2) 添加slave接口
# nmcli connection add con-name bond-slave0 type bond-slave ifname eth0 master bond0
# nmcli connection add con-name bond-slave1 type bond-slave ifname eth1 master bond0

3) 启动绑定
--须先启动slave接口
# nmcli connection up bond-slave0
# nmcli connection up bond-slave1
# nmcli connection up bond0

4) 查看binding网卡信息
cd /etc/sysconfig/network-scripts/
#cat /proc/net/bonding/bond0

6.4 删除bonding步骤
1) down掉bonding设备
# nmcli connection down bond0
# nmcli connection down bond-slave0
# nmcli connection down bond-slave1
2) 卸载bonding驱动模块
# lsmod | grep bonding
# modprobe -r bonding
3)删除bonding相关配置文件
# nmcli connection delete bond0
# nmcli connection delete bond-slave0
# nmcli connection delete bond-slave1
4)查看启动网卡设备
# nmcli device status
# nmcli device show
# nmcli d c eth0
# nmcli d c eth1