1、网口命名
1.1、命名规则
Centos6 网卡命名规则是eth0、eth1...
Centos7 网卡命名规则是ens32、ens33...
由于这种无规则的命名方法给维护带来了困难,所以需要将网卡命名规则修改为eth0、eth1.. .
 
1.2、已安装系统网卡名称修改eth0
1.2.1、修改网卡配置文件
mv /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-eth0
]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
NAME=eth0
DEVICE=eth0
 
1.2.2、修改内核启动参数,禁用预测命名规则方案,将net.ifnames=0 biosdevname=0参数关闭
# 记得在行的最尾增加
]# vi /etc/sysconfig/grub 
...
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet net.ifnames=0 biosdevname=0"
...
# 重新加载生效
grub2-mkconfig -o /boot/grub2/grub.cfg 
 
1.2.3、重启服务器验证是否生效
# 重启服务器
reboot
]# ifconfig 
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
...
 
1.3、新安装系统时指定网卡名称
1.3.1、在安装系统选择Install Centos7按下【Tab】设定kernel内核参数

1.3.2、增加内核参数: net.ifnames=0 biosdevname=0 

1.3.3、检查是否修改成功,成功后可继续安装系统

2、网络接口查询
2.1、ifconfig
2.1.1、安装工具
2.1.2、指定网口查询
2.1.3、查看所有网卡状态信息,包括禁用和启用
2.1.4、显示参数的解析
# UP:网卡处于活动状态
# BROADCAST:支持广播
# RUNNING:网线已接入
# MULTICAST:支持组播
# MTU:最大传输单元(字节),接口一次所能传输的最大包
# inet:显示IPv4地址行
# inet6:显示IPv6地址行
# enther:硬件(MAC)地址 
# txqueuelen:传输缓存区长度大小
# RX packets:接收的数据包
# TX packets:发送的数据包
# errors :总的收包的错误数量
# dropped:拷贝中发生错误被丢弃
# collisions:网络信号冲突情况,值不为0则可能存在网络故障
 
2.2、IP
2.2.1、使用ip命令查看当前地址
2.2.2、使用 ip -s link show eth0命令查看网络性能的统计信息,比如:发送和传送的数据包、错误、丢弃信息
]# ip -s link show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 00:0c:29:7b:2f:b6 brd ff:ff:ff:ff:ff:ff
    RX: bytes  packets  errors  dropped overrun mcast   
    40439      445      0       0       0       0       
    TX: bytes  packets  errors  dropped carrier collsns 
    29426      167      0       0       0       0   
 
3、nmcli 
3.1、基础介绍
1、CentoS7系统默认采用NetworkManager来提供网络服务,这是一种动态管理网络配置的守护进程,能够让网络设备保持连接状态。NetworkManager提供的命令行和图形配置工具对网络进行设定,
设定保存的配置文件在/etc/sysconfig/network-scripts目录下,工具有nmcli、nmtui
2、NetworkManager有如下概念需要了解︰
2.1、device物理设备,例如:enp2s0,virbr0,team0
2.2、connection连接设置,具体网络配置方案
2.3、一个物理设备device可以有多套逻辑连接配置,但同一时刻只能使用一个connection连接配置
 
3.2、常用的命令
3.2.1、使用nmcli device命令查看设备情况
]# nmcli device
DEVICE  TYPE      STATE      CONNECTION 
eth0    ethernet  connected  eth0       
lo      loopback  unmanaged  -- 
 
3.2.2、使用nmcli connection命令查看连接状态
]# nmcli connection
NAME  UUID                                  TYPE      DEVICE 
eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0 
 
3.2.3、查看所有活动连接的状态
]# nmcli con show --active
NAME  UUID                                  TYPE      DEVICE 
eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0   
]# nmcli con show "eth0"
 
3.2.4、取消eth0-static 连接开机自动激活网络
nmcli conn modify eth0-static autoconnect no
 
3.2.5、修改eth0-static连接的dns配置
# 通过+/-可以增加或则移除设定
nmcli connection modify eth0-static ipv4.dns 8.8.8.8
 
3.2.6、替换连接的静态IP和默认网关
nmcli conn modify eht0-static ipv4.address 192.168.10.199 ipv4.gateway 192.168.10.2
 
3.2.7、让配置生效
nmcli conn down eth0-static && nmcli conn up eth0-static
 
3.2.8、删除自建的connection
nmcli  conn delete eth0-static
 
3.3、示例1-nmcli创建dhcp连接
3.3.1、使用nmcli创建一个dhcp的连接
# 实质是添加/etc/sysconfig/network-scripts/ifcfg-ens33-dhcp配置文件
nmcli connection add \
con-name eth0-dhcp ifname eth0 autoconnect yes \
type ethernet ipv4.method auto
]# ll /etc/sysconfig/network-scripts/ifcfg-*
-rw-r--r--  1 root root 236 Apr 24 15:08 /etc/sysconfig/network-scripts/ifcfg-eth0
-rw-r--r--  1 root root 283 Apr 25 18:59 /etc/sysconfig/network-scripts/ifcfg-eth0-dhcp
-rw-r--r--. 1 root root 254 May 22  2020 /etc/sysconfig/network-scripts/ifcfg-lo
]# nmcli connection
NAME       UUID                                  TYPE      DEVICE 
eth0       5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0   
eth0-dhcp  f873f3e2-a6c4-4318-993c-d72d082423a1  ethernet  --  
 
3.4、示例2-nmcli创建static连接
3.4.1、配置流程
使用nmcli创建一个static 的连接,配置IP、掩码、网关等
1)添加一个连接配置,并指定连接配置名称
2)将连接配置绑定物理网卡设备
3)配置网卡的类型,网卡是否开机启动
4)网卡使用什么模式配置IP地址(静态、dhcp)
5)配置网卡的IP地址、掩码、网关、DNS等*
 
3.4.2、手动配置IP地址
# 手动配置IP地址
nmcli connection add con-name eth0-static ifname eth0 \
type ethernet autoconnect yes \
ipv4.method manual \
ipv4.addresses 192.168.10.200/24 \
ipv4.gateway 192.168.10.2 \
ipv4.dns 192.168.10.2 \
+ipv4.dns 8.8.8.8
 
3.4.3、激活connect
#激活eht0-static的连接,注意启动可能会导致网口IP地址更换,ssh会断开修改IP地址才可以访问,本地测试好,生产再去配置
nmcli connection up eth0-static
]# nmcli conn show
NAME         UUID                                  TYPE      DEVICE 
eth0         5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0   
eht0-static  bf83edb9-f5ba-4004-82e8-18909a259c4c  ethernet  --     
eth0-dhcp    f873f3e2-a6c4-4318-993c-d72d082423a1  ethernet  -- 
 
3.4、示例3-增加多一个网卡配置
3.4.1、配置流程
使用nmcli管理/etc/sysconfig/network-scripts/配置文件,其实就是自定义一个网卡的配置文件,然后加入至NetworkManager服务进行管理;
1)、新增物理网卡
2)、拷贝配置文件(可以和设备名称一致)
3)、修改配置,UUID、连接名称、设备名称、IP地址
4)、重新加载网络配置
5)、启用连接,并检查
 
2.4.2、添加一个物理设备,进入/etc/sysconfig/network-script/目录拷贝一份网卡配置文件
cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth1
 
2.4.3、修改网卡配置文件
]# cat /etc/sysconfig/network-scripts/ifcfg-eth1
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth1
DEVICE=eth1
ONBOOT=yes
IPADDR=192.168.0.30
PREFIX=24
 
2.4.4、重新加载conn
]# nmcli conn reload
]# nmcli conn
NAME                UUID                                  TYPE      DEVICE 
eth0                5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0   
eth1                9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04  ethernet  eth1 
 
2.4.5、eth1连接配置已经关联,修改IP地址方法
可以用如下两种方式;
方法1:nmcli modify方式修改然后重载配置
nmcli conn modify eth1 ipv4.address 192.168.0.80/24
nmcli conn down eth1 && nmcli conn up eth1
方法2:vim修改,先reload,然后重新激活加载
]# vi /etc/sysconfig/network-scripts/ifcfg-eth1
...
IPADDR=192.168.0.90
...
nmcli conn reload
nmcli conn down eth1 && nmcli conn up eth1