网络配置(一)

本文介绍了网卡命名的两种主要方式:BIOSdevname和systemd,以及它们在不同操作系统(如CentOS)下的应用。还详细讲解了network.service和NetworkManager的管理策略,以及使用nmcli进行网络配置的方法,包括查看、修改和删除网络连接和设备信息。
摘要由CSDN通过智能技术生成

网卡命名

两种命名规范

biosdevname(过时)

通过读取BIOS中的信息来确定网卡的物理位置,然后借此生成设备名称。这种方式并不一定能够准确对应网卡的物理顺序。

使用需安装 yum -y install biosdevname 软件包

命名规律

eth0、eth1、eth2...

systemd(主流)

使用设备的类型、位置、数字来生成设备名称。

守护进程 systemd-udevd.service ,默认开机自启

命名规律
类型
en以太网(Ethernet)
ib无限带宽(InfiniBand)
sl串列线路互联网协议(slip:Serial line IP)
wl无线局域网(WLAN,Wireless local area network)
ww无线广域网(WWAN,Wireless wide area network)
位置
o<index>板载设备索引号
s<slot>热插拔插槽索引号
x<MAC>MAC 地址
p<bus>s<slot>[f<function>][d<dev_id>]PCI 地理位置
p<bus>s<slot>[f<function>][u<port>][..][c<config>][i<interface>]USB 端口链
命名策略

Scheme 1(方案 1):如果从BIOS中能够取到可用的,板载网卡的索引号,则使用这个索引号命名,例如: eno1,如不能则尝试Scheme 2
Scheme 2(方案 2):如果从BIOS中能够取到可以用的,网卡所在的PCI-E热插拔插槽的索引号,则使用这个索引号命名,例如: ens1,如不能则尝试Scheme 3
Scheme 3(方案 3):如果能拿到设备所连接的物理位置信息,则使用这个信息命名,例如:enp2s0,如不能则尝试Scheme 5
Scheme 4(方案 4):使用网卡的MAC地址来命名,这个方法一般不使用。
Scheme 5(方案 5):传统的kernel命名方法,例如: eth0,这种命名方法的结果不可预知的,即可能第二块网卡对应eth0,第一块网卡对应eth1。

管理方式

network.service

network.service是系统提供的服务之一,以兼容遗留的网络功能。该服务的运行也被纳入SystemD的管理。

相关命令

service network start 和 chkconfig network on 系列命令

systemctl start network 系列命令

NetworkManager.service

它是守护进程NetworkManager提供的服务。centos7及之后版本默认的网络管理工具

相关命令

systemctl status NetworkManager.service 系列命令

两者不能同时使用

CentOS6

网卡名字

常见的 eth0、eth1、eth2...

管理方式

network.service

相关命令

启动网络服务:service network start

关闭网络服务:service network stop

查看网络服务状态:service network status

设为开机自启:chkconfig network on

取消开机自启:chkconfig network off

配置网络

修改完网卡配置文件后重启网络服务。

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
HWADDR="00:0C:29:E5:8D:44"
TYPE="Ethernet"
UUID="8d0680d1-36ff-4a3f-ac93-5ca2b335094d"
ONBOOT="yes"
BOOTPROTO="static"
IPADDR=192.168.28.163
PREFIX=24
GATEWAY=192.168.28.2
DNS1=223.5.5.5
DNS2=119.29.29.29

[root@localhost ~]# service network restart

CentOS7

网卡名字

常见的 ens33

管理方式

network.service 和 NetworkManager(默认) 同时存在,但不能同时启用。

系统启动时,/etc/init.d/network会读取ifcfg文件,并检测NetworkManager是否已启动该设备。如果NetworkManager已经启动该设备,则/etc/init.d/network不生效,NetworkManager.service管理网络;否则/etc/init.d/network会启动该设备,network.service管理网络。

相关命令

启动网络服务:systemctl start network.service 或 systemctl start NetworkManager.service

关闭网络服务:systemctl stop network.service 或 systemctl stop NetworkManager.service

查看网络服务状态:systemctl status network.service 或 systemctl status NetworkManager.service

设为开机自启:systemctl enable network.service 或 systemctl enable NetworkManager.service

取消开机自启:systemctl disable network.service 或 systemctl disable NetworkManager.service

配置网络

network.service方式

修改完网卡配置文件后重启网络服务。

将 NetworkManager 停止并取消开机自启
[root@wenzi ~]# systemctl stop NetworkManager.service
[root@wenzi ~]# systemctl disable NetworkManager.service
Removed symlink /etc/systemd/system/multi-user.target.wants/NetworkManager.service.
Removed symlink /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service.
Removed symlink /etc/systemd/system/network-online.target.wants/NetworkManager-wait-online.service.

启动network.service并设置为开机自启
[root@wenzi ~]# systemctl start network.service
会出现提示,应使用 chkconfig network on 
[root@wenzi ~]# systemctl enable network.service
network.service is not a native service, redirecting to /sbin/chkconfig.
Executing /sbin/chkconfig network on
[root@wenzi ~]# chkconfig network on

[root@wenzi ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
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=ens33
UUID="039c247d-11cc-4cee-8562-01f309f0332a"
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.28.162
PREFIX=24
GATEWAY=192.168.28.2
DNS1=223.5.5.5
DNS2=119.29.29.29

[root@wenzi ~]# systemctl restart network.service
NetworkManager方式

见下方CentOS8

CentOS8

网卡名字

常见的 ens160

管理方式

NetworkManager

相关命令

启动网络服务:systemctl start NetworkManager.service

关闭网络服务:systemctl stop NetworkManager.service

查看网络服务状态:systemctl status NetworkManager.service

设为开机自启:systemctl enable NetworkManager.service

取消开机自启:systemctl disable NetworkManager.service

配置网络

nmcli

是一个命令行工具,用于控制NetworkManager,它是CentOS 7和Red Hat Enterprise Linux 7等系统中默认的网络管理工具。

语法

nmcli [options] object {command | help}

object 常用的是 connection 和 device。

Device(设备)是指网络接口,是物理设备,例如网卡、无线网卡等。NetworkManager可以自动检测和配置这些设备。

Connection(连接)是逻辑设置,用于描述如何配置Device(设备)。一个Connection可以应用到多个Device上,但同一时间只能启用其中一个Connection。Connection包含了诸如IP地址、子网掩码、网关等网络参数的配置。

一、查看网卡信息
查看所有网络连接
[root@wenzi ~]# nmcli con show
NAME           UUID                                  TYPE      DEVICE
System ens160  96649f5b-1c86-4cea-aa1e-366223abaea8  ethernet  ens160

查看活跃的网络连接
[root@wenzi ~]# nmcli con show --active
NAME           UUID                                  TYPE      DEVICE
System ens160  96649f5b-1c86-4cea-aa1e-366223abaea8  ethernet  ens160

查看指定网络连接的详细信息
[root@wenzi ~]# nmcli con show "System ens160"
connection.id:                          System ens160
connection.uuid:                        96649f5b-1c86-4cea-aa1e-366223abaea8
connection.stable-id:                   --
connection.type:                        802-3-etherne
...

查看所有网络设备
[root@wenzi ~]# nmcli dev show
GENERAL.DEVICE:                         ens160
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         00:0C:29:1B:12:DA
...

GENERAL.DEVICE:                         lo
GENERAL.TYPE:                           loopback
GENERAL.HWADDR:                         00:00:00:00:00:00
GENERAL.MTU:                            65536

查看指定网络设备的详细信息
[root@wenzi ~]# nmcli dev show ens160
GENERAL.DEVICE:                         ens160
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         00:0C:29:1B:12:DA
GENERAL.MTU:                            1500
...
二、改变网卡状态
停用指定的网络连接
[root@wenzi ~]# nmcli con down "System ens160"

启用指定的网络连接
[root@wenzi ~]# nmcli con up "System ens160"

删除指定的网络连接
[root@wenzi ~]# nmcli con delete "System ens160"

停用指定网络设备
[root@wenzi ~]# nmcli device disconnect ens160

启用指定网络设备
[root@wenzi ~]# nmcli device connect ens160

删除指定的网络设备
[root@wenzi ~]# nmcli device delete ens160


重新加载网络配置
[root@wenzi ~]# nmcli con reload
三、新增网卡配置文件

nmcli con add ...会自动生成新的网卡配置文件,名字为ifcfg-[con-name],即下面的ifcfg-ens00

[root@wenzi ~]# nmcli con add type ethernet con-name ens00 ifname ens00 ipv4.method manual connection.autoconnect yes ipv4.addresses 192.168.28.165/24 ipv4.gateway 192.168.28.2 ipv4.dns 223.5.5.5 +ipv4.dns 119.29.29.29

[root@wenzi ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens00
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
IPADDR=192.168.28.165
PREFIX=24
GATEWAY=192.168.28.2
DNS1=223.5.5.5
DNS2=119.29.29.29
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=ens00
UUID=e4b5bd14-e321-4a9a-a8a9-13226a209c5e
DEVICE=ens00
ONBOOT=yes
type ethernetTYPE=Ethernet
con-name ens00NAME=ens00
ifname ens00DEVICE=ens00
ipv4.method manual 或 autoBOOTPROTO=none 或 dhcp
connection.autoconnect yesONBOOT=yes
ipv4.addresses 192.168.28.165/24

IPADDR=192.168.28.165
PREFIX=24

ipv4.gateway 192.168.28.2GATEWAY=192.168.28.2
ipv4.dns 223.5.5.5DNS1=223.5.5.5
+ipv4.dns 119.29.29.29DNS2=119.29.29.29

三、修改网卡配置文件

一、通过nmcli命令 nmcli con mod ens00 .... ,修改后需要执行 nmcli con up ens00 使配置生效。

二、手动修改ifcfg-ens00配置文件,修改后需要执行 nmcli con reload && nmcli con up ens00 使配置生效

添加第二个IP
[root@wenzi ~]# nmcli con mod ens00 +ipv4.addresses 192.168.28.166/24

删除第二个IP
[root@wenzi ~]# nmcli con mod ens00 -ipv4.addresses 192.168.28.166/24

添加第二个DNS
[root@wenzi ~]# nmcli con mod ens00 +ipv4.dns 223.5.5.5

删除第二个DNS
[root@wenzi ~]# nmcli con mod ens00 -ipv4.dns 223.5.5.5

其余的选项同上方表格。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值