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

 

posted @ 2023-04-25 11:48  小粉优化大师  阅读(3163)  评论(0编辑  收藏  举报