Linux 网络配置的多种方案|centos/红帽 Redhat Enerprise 9
why*** 2024-06-10 16:07:04 阅读 94
目录
前言
一、网络连接配置三种方法
1、基本项目
2、方法
配置子网IP、子网掩码和网关
(一)直接编辑网络相关配置文件
(二)在图形界面配置网络
(三)使用nmcli命令配置网络
1、配置管理网络接口(设备)
2、配置管理连接
3、配置DNS名称解析
4、远程连接
二、网络连接配置进阶
1、网络连接进阶-连接多个网络接口
(网络接口绑定和组合的区别)
2、配置网络接口的绑定
3、配置网络接口组合
4、网桥的创建与管理
前言
进行网络配置是为了确保Linux系统能够接入网络、提高网络通信的可靠性、安全性和性能,以便与其他设备或服务器进行通信,部署网络服务,以及实现远程管理等。
一、网络连接配置三种方法
1、基本项目
1、网络接口配置:Linux支持多种网络接口设备类型,一般情况下,Linux均能自动检测和识别网络接口设备(如网卡)。在实际应用中主要是网卡配置,包括IP地址、子网掩码、默认网关等。设置地址和子网掩码后,主机就可与同网段的其他主机进行通信,但是要与不同网段的主机进行通信,还必须设置默认网关地址。默认网关地址是一个本地路由器地址,用于与本网段之外的主机进行通信。
2、主机名配置:主机名是用于标识一台主机的名称,在网络中主机名具有唯一性。
3、DNS 服务器配置:主机作为DNS客户端,访问DNS服务器来进行域名解析,使用目标主机的域名与目标主机进行通信。
2、方法
在Linux中,网络配置有以下三种方法:
1、直接编辑网络相关配置文件
2、在图形界面使用网络配置工具进行配置
3、使用命令行工具进行配置
无论是图形界面配置工具还是命令行配置工具,实际上都是通过修改相关的配置文件来实现的
配置子网IP、子网掩码和网关
进入wmware 编辑-虚拟网络编辑器
配置子网IP 子网掩码
NET设置 配置网关
(一)直接编辑网络相关配置文件
(1)在终端输入ifconfig,查看到你的网卡名称
查看UUID
blkid
(2)该配置文件在/etc/sysconfig/network-scripts目录中,配置文件名格式为ifcfg-<接口名>,
如下:
vim /etc/sysconfig/network-scripts/ifcfg-ens160
以上已将ONBOOT=no
改为ONBOOT=yes
将BOOTPROTO=dhcp
改为BOOTPROTO=static
并增加如下几行字符IPADDR=10.0.0.213NETMASK=225.225.225.0
GATEWAY=10.0.0.2
DNS1=8.8.8.8
DNS2=114.114.114.114
(2) 重新装载NetworkManager配置
systemctl restart NetworkManager.service
(3)使用命令ip a查看并ping通外网
(二)在图形界面配置网络
(1)输入 nmtui 命令,进入配置界面
(2)添加 IP、网关、dns 等配置
(3)重启网络,然后保存退出
(4)使用命令ip a查看并ping通外网
(三)使用nmcli命令配置网络
nmcli 是NetworkManager command line interface的缩写,是一个功能非常丰富和灵活的命令行工具。设备(device)代表网络接口的物理实体,而连接(connection)则是针对这些设备配置的逻辑设置。一个设备可以有多个连接配置,但同一时间只有一个连接是活动的。这使得用户能够为同一网络接口配置不同的设置(如静态和动态IP),并根据需要激活它们。nmcli 命令用于直接管理这些网卡配置,包括添加、删除和修改,所有更改都是持久的。
1、配置管理网络接口(设备)
(1)列出NetworkManager识别出的设备列表及状态
nmcli device status
(2)显示某一网络接口(设备)属性,以ens160为例
nmcli dev show ens160
(3)启用与禁用网络接口
启用(与ifup相同):nmcli device connect ens160禁用(与ifdown相同):nmcli device disconnect ens160
2、配置管理连接
(1)查看连接信息
ps:(如果要显示具体网络连接的配置信息,在该命令后面加上一个网卡名称参数就可)
nmcli connection show
(2)创建连接(以default为例)
ps:(con-name定义连接名称;type定义连接类型;ifname指定网络接口;ip4参数指定IPv4地址;gw4指定默认网关。可以同时设置多个IP地址,用逗号隔开)
nmcli connection add con-name default autoconnect no type ethernet ifname ens160 ip4 10.0.0.110/24 gw4 10.0.0.2
以下创建了多个连接,NET01和NET02IP分别为10.0.0.111和10.0.0.112,网关不变
(3)重启网络
systemctl restart NetworkManager
(4)激活与禁用连接
激活:nmcli connection up default禁用:nmcli connection down default
删除连接
nmcli connection delete
(5)修改连接
修改连接IP地址:nmcli connection modify default ipv4.addr 10.0.0.110/24增加连接IP地址:nmcli connection modify default +ipv4.addresses 10.0.0.110/24为连接配置网关:nmcli connection modify default ipv4.gateway 10.0.0.2关闭开机自动连接:nmcli connection modify default connection.autoconnect no为连接配置自动获取IP地址:nmcli connection modify default ipv4.method auto
(6)修改后重启或重载网络服务
重启:systemctl restart network重载:systemctl connection reload
3、配置DNS名称解析
(1)配置dns
ps:(通过属性ipv4.dns来设置DNS服务器的IP地址,通过属性dns-search来设置搜索域名)
nmcli con mod default ipv4.dns "114.114.114.114,8.8.8.8"
(2)重新装载NetworkManager配置
systemctl restart NetworkManager.service
(3)ping通外网
ping www.baidu.com
4、远程连接
(1)查看ip地址 ip a
(2)远程连接
(6) 删除连接
nmcli connection delete ens160 default NET01 NET02
二、网络连接配置进阶
1、网络连接进阶-连接多个网络接口
(1)新建三个网络适配器
在vmware中点击 虚拟机-可移动设备-网络适配器-设置
点击 添加-网络适配器-完成
(2)ip link查看网络设备信息
(3)添加四个网卡:ens160 ens161 ens224 ens256
ip地址分别为:10.0.0.99 10.0.0.109 10.0.0.119 10.0.0.219
nmcli connection add con-name ens160 autoconnect no type ethernet ifname ens160 ip4 10.0.0.99/24 gw4 10.0.0.2nmcli connection add con-name ens161 autoconnect no type ethernet ifname ens161 ip4 10.0.0.109/24 gw4 10.0.0.2nmcli connection add con-name ens224 autoconnect no type ethernet ifname ens224 ip4 10.0.0.119/24 gw4 10.0.0.2nmcli connection add con-name ens256 autoconnect no type ethernet ifname ens256 ip4 10.0.0.219/24 gw4 10.0.0.2
查看连接信息
nmcli conn show
(4)配置DNS名称解析
nmcli con mod ens160 ipv4.dns "114.114.114.114,8.8.8.8"nmcli con mod ens161 ipv4.dns "114.114.114.114,8.8.8.8"nmcli con mod ens224 ipv4.dns "114.114.114.114,8.8.8.8"nmcli con mod ens256 ipv4.dns "114.114.114.114,8.8.8.8"
(5)网络重载
systemctl restart NetworkManager.service
再次查看连接信息(绿色表示已启动)
nmcli conn show
(6)远程连接
(7)ping通外网即成功
(网络接口绑定和组合的区别)
网络接口绑定主要用于提高带宽、提供冗余和负载均衡,通常是在物理网卡级别进行配置的。网络接口组合可能涉及更广泛的概念,包括将不同类型的网络接口(物理的或虚拟的)组合在一起以实现特定功能或优化性能。具体的实现方式和用途可能因不同的上下文而异。2、配置网络接口的绑定
网络接口绑定(捆绑)是将多个网络接口逻辑地连接到一起。这样做有两个目的,一是通过冗余、弹性实现故障转移,避免网络接口的单点故障,提高服务器网络可用性;二是提高带宽以提高吞吐率。
IP地址并不是在物理网卡上设置的,而是将两个或多个物理网卡聚合成一个虚拟的网卡,在虚拟网卡上设置地址,而外部网络访问本机时,访问的就是这个虚拟网卡的地址。虚拟网卡接收到数据后,再经过两个网卡的负载交给服务器处理。
NetworkManger 的绑定实现方法非常简单,就是先创建一个bond类型的虚拟连接作为主连接,再基于要加入绑定的若干接口创建它的从连接,每个从连接关联各自的网络接口。
(1)查看网络接口
ip link
(2)添加一个类型为bond的连接
nmcli conn add type bond con-name bond_test ifname bond_test mode active-backup
(3)为连接bond_test添加四个类为bond-slave的从连接
bond_test-slave-1 bond_test-slave-2 bond_test-slave-3 bond_test-slave-4分别关联网卡ens160 ens161 ens224 ens256
nmcli con add type bond-slave con-name bond_test-slave-1 ifname ens160 master bond_testnmcli con add type bond-slave con-name bond_test-slave-2 ifname ens161 master bond_testnmcli con add type bond-slave con-name bond_test-slave-3 ifname ens224 master bond_testnmcli con add type bond-slave con-name bond_test-slave-4 ifname ens256 master bond_testnmcli conn show
(4)为连接bond_test配置IP、网关、DNS和开机启动方式
nmcli conn modify bond_test ipv4.addresses "10.0.0.168/24"nmcli conn modify bond_test ipv4.dns "114.114.114.114 8.8.8.8"nmcli conn modify bond_test ipv4.gateway 10.0.0.2nmcli conn modify bond_test ipv4.method manual
(5)启用四个从连接和一个主连接
nmcli conn up bond_test-slave-1nmcli conn up bond_test-slave-2nmcli conn up bond_test-slave-3nmcli conn up bond_test-slave-4nmcli conn up bond_test
(6)查看当前的绑定状态和信息
cat /proc/net/bonding/bond_test
ps:(图片中bond-test打错了)
(7)测试
远程连接bond_test,并ping通外网
3、配置网络接口组合
NIC组合又称链路聚合,可以将其理解成绑定bond的增强版,将两个或多个网络接口聚
合在一起成为一个组。在CentOS7中,组合是由teamd守护进程来提供服务的。
下面示范将两块网卡绑定的操作过程。为方便实验,采用不依赖于交换机支持的冗余备份模式 active-backup将一个网卡配置为另一个网卡的备用网卡。
(1)查看网络接口
ip link
(2)创建两个类型为team的连接
ps:(连接名为team test,关联的设备(网卡)是team_test,runner指定所使用的处理器,组合方法是activebackup。由于team_test 设备不存在,系统将同时创建一个名为teamtest的虚拟设备。与其他类型的连接一样,默认会设置连接开机自动启用)
nmcli con add type team con-name team_test1 ifname team_test1 config '{"runner":{"name":"activebackup"}}'nmcli con add type team con-name team_test2 ifname team_test2 config '{"runner":{"name":"activebackup"}}'
(3)将 team_test1 添加两个类型为 team-slave 的从连接 team_test-port1 和
team_test-port2,分别关联网卡 ens160 和 ens161
nmcli con add type team-slave con-name team_test-port1 ifname ens160 master team_test1nmcli con add type team-slave con-name team_test-port2 ifname ens161 master team_test1
将 team_test2 添加两个类型为 team-slave 的从连接 team_test-port3 和
team_test-port4,分别关联网卡 ens224 和 ens256
ps:(这相当于将从设备添加到主设备,形成一个网卡聚合)
nmcli con add type team-slave con-name team_test-port3 ifname ens224 master team_test2nmcli con add type team-slave con-name team_test-port4 ifname ens256 master team_test2
nmcli conn show
(4)为主连接team_test配置IP、网关、DNS和开机启动
ps:(不要为从连接设置IP等,因为他们属于主连接,是主连接的逻辑组成部分)
nmcli conn modify team_test1 ipv4.addresses "10.0.0.210/24"nmcli conn modify team_test1 ipv4.dns "114.114.114.114,8.8.8.8"nmcli conn modify team_test1 ipv4.gateway "10.0.0.2"nmcli conn modify team_test1 ipv4.method manualnmcli conn modify team_test2 ipv4.addresses "10.0.0.211/24"nmcli conn modify team_test2 ipv4.dns "114.114.114.114,8.8.8.8"nmcli conn modify team_test2 ipv4.gateway "10.0.0.2"nmcli conn modify team_test2 ipv4.method manual
(5)启用四个从连接和两个主连接
ps:(启用从连接时系统会关联相应的网卡,并自动断开这些网卡上原有的连接)
nmcli connection up team_test-port1nmcli connection up team_test-port2nmcli connection up team_test-port3nmcli connection up team_test-port4nmcli connection up team_test1nmcli connection up team_test2
(6)验证网卡组合的IP地址信息
ip add show team_test1ip add show team_test2
(7)测试网卡组合
使用teamdctl命令查看网卡组合的配置功能(记得root用户)
teamdctl team_test1 stateteamdctl team_test2 state
查看组合各端口信息
teamnl team_test2 portsteamnl team_test2 ports
查询当前的活动端口
teamnl team_test1 getoption activeportteamnl team_test2 getoption activeport
尝试断开活动端口连接,再次执行teamnl team_test1 ports命令,可以发现端口列表已不再包括ens160,再次查询当前活动端口
nmcli dev dis ens160nmcli dev conn ens160
(8)ping通外网
4、网桥的创建与管理
Linux网桥(Linux Bridge)是一个软件层面的网络设备,用于在Linux系统中创建和管理网络桥接。它允许将多个物理或虚拟网络接口连接在一起,以创建一个共享相同网络段的网络。
NetworkManager的桥接实现与绑定和组合类似,先创建一个bridge类型的虚拟连接作为主连接,再基于要连接网桥的若干个网络接口创建它的从连接,每个从连接关联各自的网络接口,每个网络接口作为网桥的一个端口。
(1)准备可用的网络接口,这里分别为eno1和eno2
nmcli connection add con-name eno1 autoconnect no type ethernet ifname eno1 ip4 10.0.0.33/24 gw4 10.0.0.2nmcli connection add con-name eno2 autoconnect no type ethernet ifname eno2 ip4 10.1.0.44/24 gw4 10.0.0.2nmcli con mod eno1 ipv4.dns "114.114.114.114,8.8.8.8"nmcli con mod eno2 ipv4.dns "114.114.114.114,8.8.8.8"systemctl restart NetworkManager.service
(2)创建一个类型为bridge的连接
ps:(此处连接名为br_test,关联的网卡是br_test
nmcli con add type bridge con-name br_test ifname br_test
(3)为连接br_test添加两个类型为bridge-slave的从连接br_test-slave-1和br_test-slave-2,分别关联网卡ens160和ens161
ps:(以下命令会在/etc/sysconfig/network-scrips/目录下创建相应的ifcfg配置文件
nmcli con add type bridge-slave con-name br_test-slave-1 ifname eno1 master br_testnmcli con add type bridge-slave con-name br_test-slave-2 ifname eno2 master br_test
(4)执行以下命令关闭该网桥的STP(生成树协议)
nmcli con modify br_test bridge.stp no
(5)为网桥配置IP、网关、DNS和开机自动启动
ps:(默认方式创建的网桥设置是通过DHCP获取TCP/IP配置,开机自动启动,原来两个网卡变成网桥上的逻辑端口)
nmcli conn modify br_test ipv4.addresses "10.0.0.55/24"nmcli conn modify br_test ipv4.dns "114.114.114.114,8.8.8.8"nmcli conn modify br_test ipv4.gateway "10.0.0.2"nmcli conn modify br_test ipv4.method manual
(6)激活两个从连接,和一个主连接
nmcli con up br_test-slave-1nmcli con up br_test-slave-2nmcli con up br_test
(7)查看当前处于活动状态的连接
nmcli con show -a
以上就本期的全部类容了,有问题可以后台私信联系作者~喜欢的话就点个关注o~
Linux 网络配置的多种方案 | centos/红帽Redhat Enerprise
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。