Linux-网络配置-网口名字修改、ifconfig、nmcli
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、安装工具
yum install net-tools -y
2.1.2、指定网口查询
ifconfig eth0
2.1.3、查看所有网卡状态信息,包括禁用和启用
ifconfig -a
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命令查看当前地址
ip addr show eth0
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