无法ping通ECS实例IPv6地址的排查方法

无法pingECS实例IPv6地址的原因较多,您可以参考本文进行排查。

问题现象

ECS实例开通IPv6地址之后,无法使用ping -6命令连通ECS实例的IPv6地址。

问题原因

导致无法pingECS实例IPv6地址的原因可能有以下几点:

  • ECS实例开通IPv6地址后未正确配置。

  • ECS实例的安全组配置错误。

  • IPv6未开通公网带宽,没有公网通信能力。

步骤一:检查ECS实例的IPv6地址相关配置是否正确

  1. 通过VNC远程登录Linux实例。关于如何远程登录,请参见通过VNC远程连接登录Linux实例

  2. 执行以下命令,查看并记录ECS服务器的MAC地址。

    curl http://100.100.100.200/latest/meta-data/mac && echo
  3. 执行以下命令,获取ECS服务器的IPv6地址、IPv6网关、IPv6地址段的元数据信息。

    说明

    [$MAC_ID]为上一步获取的ECS服务器的MAC地址。

    curl http://100.100.100.200/latest/meta-data/network/interfaces/macs/[$MAC_ID]/ipv6s && echo \n && curl http://100.100.100.200/latest/meta-data/network/interfaces/macs/[$MAC_ID]/ipv6-gateway && echo \n && curl http://100.100.100.200/latest/meta-data/network/interfaces/macs/[$MAC_ID]/vswitch-ipv6-cidr-block && echo \n

    系统显示类似如下。 image.png

  4. 执行以下命令,查看ECS服务器的IPv6地址与元数据的IPv6地址是否存在不一致的情况。

    说明

    本文中网卡信息以eth0网卡为例,现场以实际环境为准。

    ifconfig eth0

    系统显示类似如下,确认不存在显示不一致的情况,若存在显示不一致的情况,请参见配置IPv6地址进行修复。 image (1).png

  5. 执行以下命令,查看ECS服务器的IPv6网关与元数据的IPv6网关是否存在不一致的情况

    route -6 -ne | grep ::/0

    系统显示类似如下,确认不存在显示不一致的情况,若存在显示不一致的情况,请参见配置IPv6地址进行修复。 Dingtalk_20201015114016.jpg

  6. 执行以下命令,查看ECS服务器的IPv6地址段与元数据的IPv6地址段是否存在不一致的情况

     route -6 -ne | grep eth0

    系统显示类似如下,确认不存在显示不一致的情况,若存在显示不一致的情况,请参见配置IPv6地址进行修复。 Dingtalk_20201015141202.jpg

步骤二:检查安全组相关配置

  1. 登录ECS管理控制台

  2. 在左侧导航栏,选择网络与安全 > 安全组

  3. 在页面左侧顶部,选择目标资源所在的资源组和地域。地域

  4. 找到目标安全组,在操作列中,单击管理规则

  5. 在安全组详情页,找到访问规则区域,选择入方向出方向

    查看有关IPv6地址访问规则的授权对象是否为::/0,若访问规则的授权对象不是::/0,请参见添加安全组规则进行修改。

步骤三:检查IPv6网关是否开通了公网带宽

  1. 登录专有网络管理控制台

  2. 在左侧导航栏,选择公网访问 > IPv6网关

  3. 在顶部菜单栏处,选择IPv6网关的地域。
  4. IPv6网关页面,根据实例的专有网络ID找到对应IPv6网关,然后单击IPv6网关ID。

  5. IPv6网关的详情页面,单击IPv6公网带宽页签,找到目标IPv6地址。

    确认IPv6网关是否开通了公网带宽,若IPv6网关没有开通公网带宽,请参见开通IPv6公网带宽

步骤四:确认IPv6地址的连通性是否正常

测试公网连通性

ping -6 aliyun.com

系统返回信息如下图所示,表示网络连接正常。ping -6

测试私网连通性

ECS01实例中执行ping6 <ECS02 IPv6私网地址>命令,ping6ECS02实例的IPv6地址,测试私网通信是否正常。

如果能接收到回复报文,表示通信正常。经测试,ECS01实例到ECS02实例的IPv6私网通信正常。pingecs02

ECS02实例中执行ping6命令,ping6ECS01实例的IPv6地址,测试私网通信是否正常。

如果能接收到回复报文,表示通信正常。经测试,ECS02实例到ECS01实例的IPv6私网通信正常。pingecs01

相关文档