4.7. 网络


ARM 上的 RHEL 现在在 RHEL 9.3 中完全支持 wifi 适配器

有了这个增强,您可以启用对 arm64 平台的多个卡的 wifi 适配器的访问。

有关配置 wifi 连接的详情,请参阅 管理 wifi 连接

Bugzilla:2208365[1]

NetworkManager 现在支持 resolv.conf 中的 no-aaaa 选项

NetworkManager 现在支持在 resolv.conf 文件中添加 no-aaaa DNS 选项。通过在 DNS 选项设置中使用 no-aaaa 值,您可以禁用 IPv6 DNS 解析。

Bugzilla:2176137

nmstate 现在支持混合静态 DNS 搜索和动态 DNS 名称服务器

nmstate 框架现在支持静态域名系统(DNS)搜索域和动态 DNS 名称服务器,这些服务器是 nmstate 从动态主机配置协议(DHCP)或 autoconf 机制获得的。在以前的版本中,静态 DNS 搜索域无法与动态 DNS 名称服务器共存,因为动态配置被 nmstate 丢弃了。这通常导致网络设置和管理中不必要的复杂性和限制。此功能增强旨在在管理 DNS 配置方面带来更多的灵活性。因此,nmstate 会尝试查找网络接口,以按照以下顺序存储 DNS 配置:

  1. 首选接口,当前包含 DNS 配置,仍对 DNS 有效
  2. 自动接口
  3. 启用了 IP 的接口

请注意,这个增强不会删除从 DHCP 中学到的 DNS 名称服务器。

以下是应用此功能的 YAML 文件的一个示例:

---
dns-resolver:
  config:
    search:
      - example.com
      - example.org
interfaces:
  - name: eth1
    type: ethernet
    state: up
    ipv4:
      enabled: true
      dhcp: true
    ipv6:
      enabled: true
      dhcp: true
      autoconf: true

Bugzilla:2179916

nmstate 现在支持 bridge.vlan-default-pvid NetworkManager 配置选项

有了此更新,您可以使用 nmstate 框架来配置 bridge.vlan-default-pvid NetworkManager 配置选项。通过使用这个选项,您可以在使用 Linux 网桥 VLAN 过滤时,为支持 VLAN 的桥接接口上的未标记流量设置默认端口 VLAN 标识符(PVID)。为此,请使用以下 YAML 配置:

interfaces:
  - name: linux-br0
    type: linux-bridge
    state: up
    bridge:
      options:
        vlan-default-pvid: 5
      port:
        - name: eth1
          stp-hairpin-mode: false
          stp-path-cost: 100
          stp-priority: 32
          vlan:
            mode: access
            tag: 100

请注意,bridge.vlan-default-pvid 的默认值为 1。当设置为 0 启用了 VLAN 过滤时,未标记的流量将被丢弃。

Bugzilla:2180795

NetworkManager 服务在 dbus 服务重启后立即重启

在以前的版本中,由于某些原因重启 dbus 后,NetworkManager 会停止。这个行为不是最佳的,导致了连接丢失。因此,这个增强更新了 NetworkManager,使其更加强大,并使其在 dbus 重启时自动重启。

Bugzilla:2161915

nm-cloud-setup 工具现在支持 IMDSv2 配置

用户可以使用 nm-cloud-setup 工具配置带有实例元数据服务版本 2 (IMDSv2)的 AWS Red Hat Enterprise Linux EC2 实例。为了遵守改进的安全性,其限制对 EC2 元数据和新功能的未经授权的访问,需要 AWS 和红帽服务间的集成来提供高级功能。此功能增强使 nm-cloud-setup 工具能够获取并保存 IMDSv2 令牌,验证 EC2 环境,并使用安全 IMDSv2 令牌检索有关可用接口和 IP 配置的信息。

Bugzilla:2151986

当使用已弃用的 ifcfg 格式时,NetworkManager 会发出通知

ifcfg 格式的连接配置文件已在 RHEL 9 中被弃用(请参阅 ifcfg 格式的 NetworkManager 连接配置文件已弃用)。有了此更新,NetworkManager 会通知用户有关此格式的弃用:

  • 如果 NetworkManager 在 /etc/sysconfig/network-scripts/ 目录中处理ifcfg 格式的连接配置文件,它会在systemd 日志中记录以下警告:

    Warning: the ifcfg-rh plugin is deprecated, please migrate connections to the keyfile format using "nmcli connection migrate"
  • 如果您试图修改一个 ifcfg 格式不支持的属性,nmcli 工具会报告以下错误:

    Error: Failed to modify connection '<name>': failed to update connection: The ifcfg-rh plugin doesn't support setting '<property>'. If you are modifying an existing connection profile saved in ifcfg-rh format, please migrate the connection to keyfile using 'nmcli connection migrate <connection_uuid>' or via the Update2() D-Bus API and try again.

由于这些增强,如果用户仍然使用或修改已弃用的 ifcfg 格式的连接配置文件,NetworkManager 现在会通知用户。

有关将配置文件从 ifcfg 迁移到 keyfile 格式的详情,请参考 将 NetworkManager 配置文件从 ifcfg 迁移到 keyfile 格式

Bugzilla:2190375

NetworkManager 现在在绑定配置中支持 lacp_active 选项

通过使用 NetworkManager,绑定配置中的 lacp_active 选项对链路聚合控制协议数据单元(LACPDU)帧提供精细控制。lacp_active 选项还调整了 LACPDU 帧的行为,并在绑定设置中控制这些帧的定期传输。要自定义网络配置,您可以通过将 lacp_active 设置为 ONOFF 来启用或禁用 LACPDU 帧的定期传输。

Bugzilla:2069001

NetworkManager 现在支持为绑定接口配置 ns_ip6_target 选项

此增强通过在 NetworkManager 中为绑定接口的 ns_i6_target 选项的配置指定最多 16 个 IPv6 地址作为监控对等点,来允许设置 arp_interval 选项。在以前的版本中,无法在 NetworkManager 中指定 IPv6 监控对等点。有了此更新,您可以使用 nmcli 工具在 bond.options 参数中配置 ns_ip6_target 选项。NetworkManager 通过启用最多 16 个 IPv6 地址的规范来将此设置应用到绑定接口。此增强同样适用于 IPv4 和 IPv6 设置。

Bugzilla:2069004

NetworkManager 现在支持同一网络接口上的静态和 DHCP IP 配置

通过使用 nmstate 工具,您现在可以在 DHCP 或启用了 Ad-Hoc Network Autoconfiguration (autoconf)的接口上分配一个带有 dhcp: trueautoconf: true 值的静态 IP 地址。

有了此增强,nmstate 支持 IP 地址的两个属性:

  • valid_lft 表示有效的生命周期(以秒为单位)
  • preferred_lft 表示首选的生命周期(以秒为单位)

两个参数的默认值是 forever 表示静态。

有了上述属性,nmstate 可以忽略基于 DHCP/autoconf 的 IP 地址,以避免在应用查询的状态后将动态 IP 地址转换为静态 IP。如果您的场景需要禁用带有动态 IP 地址的 DHCP/autoconf 设置,则 nmstate 会将这些动态 IP 转换为静态 IP 地址。

Bugzilla:2177733

nmstate 支持 MAC 地址可识别的网络接口

nmstate 工具支持直接到具有 MAC 地址而不是接口名称的网络接口的网络配置。

此增强引入了基本接口的两个属性:

  • identifier : 标识网络上的 namemac-address。默认值为 name
  • profile-name : 字符串

identifier 变量设置为 mac-address 值时,nmstate 使用 interface.mac-address 而不是interface.name来为特定的网络状态选择网络接口。当存储网络配置时,如果没有分配 interface.profile-name 变量,则 nmstate 优先选择 interface.profile-name 而不是 interface.name。如果您检查当前的网络状态,如果 interface.profile-name 等于 interface.name,则 interface.profile-name 会保持隐藏状态。

Bugzilla:2183214

NetworkManager 支持定义在多少次 ARP 检查失败后,绑定驱动程序将端口标记为 down

此增强将arp_missed_max 选项添加到 NetworkManager 中的绑定连接配置文件中。如果您使用地址解析协议(ARP)监控器来检查绑定的端口是否已启动,您可以设置 arp_missed_max 来定义多少次检查失败后,绑定驱动程序将端口标记为 down。

Bugzilla:2148684

NetworkManager 支持指定与链接相关的属性

此增强在 NetworkManager 连接配置文件中添加了以下网络链接属性:

  • link.tx-queue-length - 传输(TX)队列长度的大小,以数据包数为单位。
  • link.gro-max-size - 设备接受的通用接收卸载(GRO)数据包的最大大小,以字节为单位。
  • link.gso-max-segments - 设备接受的通用段卸载(GSO)数据包的最大段数。
  • link.gso-max-size - GSO 数据包的最大大小,以字节为单位。

在以前的版本中,您只能使用 ip 命令,或使用 NetworkManager 分配程序脚本中的此类命令来配置这些内核设置。有了这个增强,您可以直接在连接配置文件中配置这些设置。

请注意,NetworkManager 仅在连接配置文件中支持keyfile 格式的这些属性,而不是已弃用的 ifcfg 格式。

Bugzilla:2158328

nmstate API 支持 dhcp-send-hostnamedhcp-custom-hostname DHCP 选项

有了此增强,nmstate 工具支持在连接文件中以下两个 DHCP 选项的配置:

  • dhcp-send-hostname:truefalse 值。如果 DHCP 请求需要主机名或完全限定域名(FQDN)选项,则会从该选项设置主机名。默认值是 true
  • dhcp-custom-hostname: <string>。使用这个选项在 DHCP 请求中配置主机名或 FQDN 选项,值类型是字符串。

    对于 DHCPv4 网络协议
  • 如果主机名是 FQDN,请参阅 RFC 4702 中的 完全限定域名(FQDN),选项(81)。
  • 如果主机名不是 FQDN,请参阅 RFC 2132 中的 主机名, 选项(12)。

    对于 DHCPv6 网络协议

    支持自定义字符串,空域名,覆盖 DHCP 请求的主机名。请参阅 RFC 4704 中的 完全限定域名(FQDN), 选项(29)。

Bugzilla:2187622

NetworkManager rebase 到版本 1.44.0

NetworkManager 软件包已升级到上游版本 1.44.0,与之前的版本相比,它提供了一些改进和 bug 修复:

  • 与链接相关的属性已添加到 NetworkManager 中
  • arp_missed_maxlacp_activens_ip6_target 属性已添加到绑定连接配置文件中。
  • 现在,您可以在 ipv6.dhcp-pd-hint 连接属性中设置 DHCPv6 前缀委托提示。
  • /etc/NetworkManager/NetworkManager.conf 文件的 [keyfile] 部分中启用新的 rename 参数会导致 NetworkManager 在 /etc/NetworkManager/system-connections/ 中重命名连接配置文件(如果更改了配置文件名称(connection.id))。如果外部应用程序或脚本依赖于文件名,请不要启用此参数。
  • 当您设置包含非公共顶级域(TLD)的主机名时,NetworkManager 现在使用此 TLD 作为 DNS 搜索域,而不是完整主机名。
  • NetworkManager 现在从 /etc/NetworkManager/NetworkManager.conf 文件中的 [global-dns] 部分中应用 DNS 选项。
  • 为了避免与其他依赖服务的竞争条件,NetworkManager 现在仅在填充 D-Bus 树后获取 D-Bus 名称。请注意,这可能会在 NetworkManager 启动时添加一个延迟。
  • NetworkManager 现在向 Update2() D-Bus 调用添加了一个 version-id 参数,以防止并发配置文件修改。
  • NetworkManager 不再使用临时 IPv6 地址从 DNS 解析系统主机名。
  • 为了防止多连接配置文件时的意外行为,NetworkManager 现在跟踪每个设备和连接剩余的自动连接重试次数,而不是每个连接。
  • NetworkManager 使用内核的 netlink 接口而不是 sysfs 文件系统来设置 VLAN 过滤选项。
  • nm-cloud-setup 工具现在在 Amazon EC2 上支持实例元数据服务版本 2 (IDMSv2)。
  • 用户现在可以在 nmtui 应用程序中启用和禁用 wifi 和 Wireless Wide Area Networks (WWAN)。
  • bond、bridge 和 team 连接现在使用 /etc/NetworkManager/NetworkManager.conf 文件的 [main] 部分中的 ignore-carrier=no 设置。

Bugzilla:2180966

SCTP rebase 到 RHEL 9 的内核网络树的最新版本

Stream Control Transport Protocol (SCTP)网络子系统中的显著变化包括:

  • 虚拟路由和转发(VRF)支持复杂网络环境中的段和隔离 SCTP 流量。
  • 新的流调度程序(fair capacityweighted fair queueing)以确保网络中有效的和相等的资源分配。

Bugzilla:2189292

MPTCP rebase 到 RHEL 9 的内核网络树的最新版本

多路径 TCP (MPTCP)协议扩展中的显著变化包括:

  • 支持 TCP fastopen (TFO)扩展,包括客户端支持。此功能为您的网络提供延迟、效率和性能改进。
  • 支持多个混合 IPv4/IPv6 子流,以便在同时使用两个 IP 版本的网络中具有更大的灵活性和适应性。

Bugzilla:2193330[1]

xdp-tools 软件包 rebase 到版本 1.4.0

xdp-tools 软件包已升级到 1.4.0 版本,其提供多个 bug 修复和增强。主要变更包括:

  • xdp-bench 工具获得对多缓冲 eXpress Data Path (XDP)的支持,以及对内核中 xdp_load_bytes () 帮助程序进行基准测试的支持。此功能允许使用大型最大传输单元(MTU)进行网络基准测试。
  • 改进了 xdp-tools 的命令行工具的锁,以便在工具未完全退出时防止过时的锁。
  • libxdp 库包含一个新的 xsk_umem__create_with_fd () API,该 API 接受一个已打开的 AF_XDP 套接字的额外文件描述符。当进程没有 CAP_NET_RAW 特权时,您可以使用此函数替换常规 xsk_umem__create() 函数。

Bugzilla:2218500

iproute rebase 到版本 6.2.0

iproute 软件包已升级到上游版本 6.2.0,与之前的版本相比,它提供了一些改进和 bug 修复。最显著的更改有:

  • 新的 ip stats 命令管理和显示接口统计信息。默认情况下,ip stats show 命令显示所有网络设备(包括网桥和绑定)的统计信息。您可以使用 devgroup 选项过滤输出。详情请查看 ip-stats (8) 手册页。
  • ss 工具现在提供 -T (--threads)选项来显示线程信息,这扩展了 -p (--processes)选项。详情请查看 ss (8) 手册页。
  • 您可以使用新的 bridge fdb flush 命令删除与提供的选项匹配的特定转发数据库(fdb)条目。详情请查看 bridge (8) 手册页。

Jira:RHEL-428[1]

内核支持以特定顺序激活绑定端口

有了这个增强,如果您在 active-backup 中配置了绑定、balance-tlbbalance-alb 模式,则内核的 netlink 接口支持在每个端口上设置优先级。优先级值使用 32 位整数,较高的值表示较高的优先级。现在,您可以按特定顺序激活绑定端口。

要使用这个功能,您可以在创建或修改 NetworkManager 端口连接配置文件时设置 bond-port.prio 属性来配置优先级。

Bugzilla:2092194[1]

firewalld 现在避免不必要的防火墙规则刷新

随着 RHBA-2023:7748 的发布,建议升级 firewalld 服务,如果满足以下条件,则不会从 iptables 配置中删除所有现有的规则:

  • firewalld 使用 nftables 后端。
  • 没有使用 --direct 选项创建的防火墙规则。

这个变化旨在减少不必要的操作(防火墙规则刷新),并改进了与其他软件的集成。

Jira:RHEL-14694[1]

为 VLAN 接口引进新的 nmstate 属性

使用此 nmstate 框架的更新,引进了以下 VLAN 属性:

  • registration-protocol: VLAN 注册协议。有效值为 gvrp (GARP VLAN Registration Protocol), mvrp (Multiple VLAN Registration Protocol)和 none
  • reorder-headers :重新排序输出数据包标头。有效值为 truefalse
  • loose-binding :放松接口到其主设备的操作状态的绑定。有效值为 truefalse

您的 YAML 配置文件类似以下示例:

---
interfaces:
  - name: eth1.101
    type: vlan
    state: up
    vlan:
      base-iface: eth1
      id: 101
      registration-protocol: mvrp
      loose-binding: true
      reorder-headers: true

Jira:RHEL-19142[1]

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.