4.7. 网络
NetworkManager rebase 到版本 1.42.2
					NetworkManager 软件包已升级到上游版本 1.42.2,与以前的版本相比,它提供很多改进和 bug 修复:
				
- 以太网绑定支持源负载均衡。
- 
						NetworkManager 可以管理 loopback设备上的连接。
- 添加了对 IPv4 equal-cost multi-path(ECMP)路由的支持。
- 
						添加了对 Virtual Local Area Networks (VLAN)连接中 802.1ad标记的支持。
- 
						nmtui应用程序支持 Wi-Fi WPA-Enterprise、具有 802.1X 身份验证的以太网,以及 MACsec 连接配置文件。
- 如果所有地址的 IPv6 重复地址检测(DAD)都失败,则 NetworkManager 会拒绝 DHCPv6 租期。
有关显著变化的更多信息,请参阅 上游发行注记。
使用 NetworkManager ,在 ECMP 路由中引入了 weight 属性
					有了这个更新,在定义 IPv4 Equal-Cost Multi-Path (ECMP)路由时,RHEL 9 支持一个新的属性 weight。您可以使用 NetworkManager 配置多路径路由来负载均衡和稳定网络流量。这允许对两个节点之间的数据传输使用多路径,这提高了网络效率,并在链接失败时提供冗余。使用 weight 属性的条件包括:
				
- 有效值为 1-256。
- 
						使用 weight属性将多个下一跳路由定义为单跳路由。
- 
						如果没有设置 weight,NetworkManager 无法将路由合并到 ECMP 路由中。
NetworkManager 更新为跨多个网络的 DNS 配置提高了灵活性
					有了这个更新,您可以使用 /etc/Networkmanager/NetworkManager.conf 文件中现有的 [global-dns] 部分来配置 DNS 选项,而无需在 [global-dns-domain-*] 部分中指定 nameserver 值。这使您能够在 /etc/resolv.conf 文件中配置 DNS 选项,同时仍依赖于网络连接为实际 DNS 解析提供的 DNS 服务器。因此,这个功能可在使用不同的 DNS 服务器连接到不同的网络时更轻松更灵活地管理 DNS 设置。特别是当您使用 /etc/resolv.conf 文件来配置 DNS 选项时。
				
NetworkManager 现在支持一个新的 vlan.protocol 属性
					有了这个更新,vlan 接口类型接受一个新的 protocol 属性。属性类型是字符串。接受的值是 802.1Q(默认)或 802.1ad。新属性指定哪个 VLAN 协议控制封装的标签标识符。
				
NetworkManager 现在允许通过非受管接口的 VLAN 配置
					有了这个增强,在使用 NetworkManager 配置虚拟 LAN (VLAN)时,您可以使用非受管网络接口作为基本接口。因此,VLAN 基础接口保持不变,除非通过 nmcli device set enp1s0 managed true 命令明确更改,或者通过 NetworkManager 的其他 API。
				
现在完全支持使用 NetworkManager 配置多路径 TCP
					在这个版本中,NetworkManager 工具为您提供了多路径 TCP (MPTCP) 功能。您可以使用 nmcli 命令控制 MPTCP,并使其设置持久。
				
如需更多信息,请参阅:
NetworkManager 工具现在支持激活 loopback 接口上的连接
					管理员可以管理 loopback ,来:
				
- 
						向 loopback接口添加额外的 IP 地址
- 定义 DNS 配置
- 定义一个不绑定到接口的特殊路由
- 定义一条路由规则,其不与接口相关
- 
						更改 loopback接口的最大传输单元(MTU)大小
现在支持 balance-slb 绑定模式
					新的 balance-slb 绑定模式源负载均衡不需要交换机配置。balance-slb 使用 xmit_hash_policy=vlan+srcmac划分源以太网地址上的流量,NetworkManager 为流量过滤添加必要的 nftables 规则。现在,您可以使用 NetworkManager 启用的 balance-slb 选项创建绑定配置文件。
				
firewalld rebase 到版本 1.2
					firewalld 软件包已升级到版本 1.2,该版本提供了多个改进。主要变更包括:
				
- 对新服务(如 netdata、IPFS)的支持
- 
						fail-safe 模式,以确保系统保持保护状态,如果 firewalld服务在启动过程中遇到错误,则不会破坏网络通信
- 
						一些 firewalld策略命令的命令行(CLI)中的 tab 补全
firewalld 现在支持启动 failsafe 机制
					有了这个增强,firewalld 会在启动失败时回到 failsafe 默认值。此功能在出现无效配置或其他启动问题时保护主机。因此,即使用户配置无效,运行 firewalld 的主机也会启动 failsafe。
				
conntrack-tools rebase 到版本 1.4.7
					conntrack-tools 软件包已升级至版本 1.4.7,它提供多个 bug 修复和增强。主要变更包括:
				
- 
						添加 IPS_HW_OFFLOAD标志,其将conntrack条目的卸载指定到硬件
- 
						添加了 clash_resolve和chaintoolong统计计数器
- 支持按 IP 地址系列过滤事件
- 
						在 conntrackd.conf文件中接受 yes 或 no 作为 on 或 off 的同义词
- 
						支持用户空间帮助程序在守护进程启动时自动加载。用户不必手动运行 nfct add helper命令
- 
						删除了 -o userspace命令选项,并且始终对用户空间触发的事件进行标记
- 仅将外部注入问题作为记录为警告
- 在查找缓存条目时忽略 conntrack ID,以允许替换卡住的旧条目
- 
						修复了 ssdp cthelper模块中的 IPv6M-SEARCH的解析中断问题
- 
						消除了 nfct库中对延迟绑定技术的需求
- 清理协议值解析,捕获无效的值
nmstate API 现在支持 IPv6 本地链接地址作为 DNS 服务器
					有了这个增强,您可以使用 nmstate API 将 IPv6 本地链接地址设置为 DNS 服务器。使用 <link-local_address>%<interface> 格式,例如:
				
dns-resolver:
  config:
    server:
    - fe80::deef:1%enp1s0
dns-resolver:
  config:
    server:
    - fe80::deef:1%enp1s0nmstate API 现在支持 MPTCP 标记
					这个更新增强了支持 MultiPath TCP (MPTCP)标记的 nmstate API。因此,您可以使用 nmstate 来对具有静态或动态 IP 地址的接口设置 MPTCP 地址标记。
				
min-mtu 和 max-mtu 属性已添加到所有接口上的 MTU
					在以前的版本中,异常信息不够清晰,不足以了解支持的 MTU 范围。此更新为所有接口引入了 min-mtu 和 max-mtu 属性。因此,当所需的 MTU 超出范围时,nmstate 将指示支持的 MTU 范围。
				
NetworkManager 现在允许通过非受管接口的 VLAN 配置
					有了这个增强,在使用 NetworkManager 配置虚拟 LAN (VLAN)时,您可以使用非受管网络接口作为基本接口。因此,VLAN 基础接口保持不变,除非通过 nmcli device set enp1s0 managed true 命令明确更改,或者通过 NetworkManager 的其他 API。
				
现在支持 balance-slb 绑定模式
					新的 balance-slb 绑定模式源负载均衡不需要交换机配置。balance-slb 使用 xmit_hash_policy=vlan+srcmac划分源以太网地址上的流量,NetworkManager 为流量过滤添加必要的 nftables 规则。现在,您可以使用 NetworkManager 启用的 balance-slb 选项创建绑定配置文件。
				
Nmstate 中的新 weight 属性
					此更新在 Nmstate API 和工具套件中引入了 weight 属性。您可以使用 weight 来指定 Equal Cost Multi-Path 路由(ECMP)组中每个路径的相对权重。权重是 1 到 256 之间的数字。因此,Nmstate 中的 weight 属性对 ECMP 组中流量分布提供了更大的灵活性和控制。
				
xdp-tools rebase 到版本 1.3.1
					xdp-tools 软件包已升级到上游版本 1.3.1,与之前的版本相比,其提供了很多改进和 bug 修复:
				
- 添加了以下工具: - 
								xdp-bench:在接收端执行 XDP 基准。
- 
								xdp-monitor:使用内核跟踪点监控 XDP 错误和统计信息。
- 
								xdp-trafficgen:通过 XDP 驱动程序钩子生成并发送流量。
 
- 
								
- 在 - libxdp库中添加了以下功能:- 
								添加了 xdp_multiprog__xdp_frags_support()、xdp_program__set_xdp_frags_support()和xdp_program__xdp_frags_support()函数,以支持具有 XDPfrags支持的加载程序,这是一个称为multibuffer XDP的功能。
- 
								在将程序附加到 AF_XDP套接字时,库会执行合适的引用计数。因此,在使用套接字时,应用程序不再需要手动与 XDP 程序分离。现在,当程序不再使用时,libxdp库会自动与程序分离。
- 在库中添加了以下函数: - 
										用于创建 xdp_program对象的xdp_program__create()
- 
										用于克隆 xdp_program引用的xdp_program__clone()
- 
										用于通过 BPF_PROG_TEST_RUN内核 API 运行 XDP 程序的xdp_program__test_run()
 
- 
										用于创建 
- 
								当设置了 LIBXDP_BPFFS_AUTOMOUNT环境变量时,如果什么都没有找到,libxdp库现在支持自动挂载bpffs虚拟文件系统。现在,当没有挂载bpffs时,库功能的子集也可以正常工作。
 
- 
								添加了 
				请注意,此版本还会更改正在网络设备上加载的 XDP 分配程序的版本号。这意味着您不能同时使用之前和新版本的 libxdp 和 xdp-tools。libxdp 1.3 库将显示分配程序的旧版本,但不会自动升级它们。另外,在使用 libxdp 1.3 加载程序后,旧版本不会与新版本进行交互。
			
iproute rebase 到版本 6.1.0
					iproute 软件包已升级至版本 6.1.0,其提供多个 bug 修复和增强。主要变更包括:
				
- 支持读取 - vdpa设备统计信息- 显示在索引 1 处读取 - virtqueue数据结构的统计信息:- vdpa dev vstats show vdpa-a qidx 1 - # vdpa dev vstats show vdpa-a qidx 1 vdpa-a: vdpa-a: queue_type tx received_desc 321812 completed_desc 321812- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 演示在索引 16 处读取 - virtqueue 数据结构的统计信息:- vdpa dev vstats show vdpa-a qidx 16 - # vdpa dev vstats show vdpa-a qidx 16 vdpa-a: queue_type control_vq received_desc 17 completed_desc 17- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
 
- 更新对应的手册页
现在,内核会在 SYN 洪水信息中记录侦听地址
此增强将侦听的 IP 地址添加到 SYN 洪水信息中:
Possible SYN flooding on port <ip_address>:<port>.
Possible SYN flooding on port <ip_address>:<port>.因此,如果很多进程绑定到不同 IP 地址上的同一端口,则管理员现在可以明确地识别受影响的套接字。
Bugzilla:2143850
为 VLAN 接口引进新的 nmstate 属性
					使用此 nmstate 框架的更新,引进了以下 VLAN 属性:
				
- 
						registration-protocol: VLAN 注册协议。有效值为gvrp(GARP VLAN Registration Protocol),mvrp(Multiple VLAN Registration Protocol)和none。
- 
						reorder-headers:重新排序输出数据包标头。有效值为true和false。
- 
						loose-binding:放松接口到其主设备的操作状态的绑定。有效值为true和false。
您的 YAML 配置文件类似以下示例:
Jira:RHEL-19142