Red Hat Training

A Red Hat training course is available for RHEL 8

第 30 章 使用 NetworkManager 为特定连接禁用 IPv6

这部分论述了如何在使用 NetworkManager 管理网络接口的系统中禁用 IPv6 协议。如果您禁用 IPv6,NetworkManager 会自动在内核中设置对应的 sysctl 值。

注意

如果使用内核 tunables 或内核引导参数禁用 IPv6,则需要考虑系统配置。如需更多信息,请参阅 如何在 RHEL 中禁用或启用 IPv6 协议?

先决条件

  • 系统使用 NetworkManager 管理网络接口,这是 Red Hat Enterprise Linux 8 中的默认设置。
  • 系统运行 Red Hat Enterprise Linux 8.1 或更高版本。

30.1. 使用 nmcli 在连接上禁用 IPv6

这个步骤描述了如何使用 nmcli 工具禁用 IPv6 协议。

流程

  1. 另外,还可显示网络连接列表:

    # nmcli connection show
    NAME    UUID                                  TYPE      DEVICE
    Example 7a7e0151-9c18-4e6f-89ee-65bb2d64d365  ethernet  enp1s0
    ...
  2. 将连接的 ipv6.method 参数设置为 disabled:

    # nmcli connection modify Example ipv6.method "disabled"
  3. 重启网络连接:

    # nmcli connection up Example

验证步骤

  1. 输入 ip address show 命令显示设备的 IP 设置:

    # ip address show enp1s0
    2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
        link/ether 52:54:00:6b:74:be brd ff:ff:ff:ff:ff:ff
        inet 192.0.2.1/24 brd 192.10.2.255 scope global noprefixroute enp1s0
           valid_lft forever preferred_lft forever

    如果没有 inet6 条目,则在该设备中禁用 IPv6

  2. 验证 /proc/sys/net/ipv6/conf/enp1s0/disable_ipv6 文件现在包含 1值:

    # cat /proc/sys/net/ipv6/conf/enp1s0/disable_ipv6
    1

    1 表示该设备禁用了 IPv6