netplan配置ipv4 ipv6双栈静态地址,无法同时ping通网关

Ubuntu22.04使用netplan配置接口,ipv4 ipv6同时使用静态地址,ping不通网关。使用ifconfig能够看到地址配置成功,但是要么只能ping通ipv4网关,要么只能ping通ipv6网关(我有两台服务器,一样的配置方法,出的错不同)
ip neigh显示邻居failed


# This is the network config written by 'subiquity'
network:
  ethernets:
    enp176s0f0:
      dhcp4: false
      dhcp6: false
    enp176s0f1:
      dhcp4: false
      dhcp6: false
  bonds:
    bond0:
      addresses: 
        - ipv4地址/30
        - ipv6地址/64
      routes:
        - to: default
          via: ipv4网关
        - to: ipv6网关/128
          scope: link
        - on-link: true
          to: ::/0
          via: ipv6网关
      nameservers:
        addresses: 
          - DNS服务器地址
      interfaces:
        - enp176s0f0
        - enp176s0f1
      parameters:
        mode: balance-alb
        mii-monitor-interval: 100
  version: 2

根据你提供的配置文件,我看到你正在使用bonding(绑定)接口配置你的网络。根据你提供的信息,你有两个接口:enp176s0f0和enp176s0f1,并且使用了balance-alb模式。此模式将以轮询方式将数据包分布在可用接口上。该模式通常用于提高网络吞吐量和可用性。

看起来你的配置文件没有问题,但是你需要检查以下几个方面:

  1. 检查ipv4网关是否正确:请确认ipv4网关与你的路由器或交换机配置一致。
  2. 检查ipv6网关是否正确:请确认ipv6网关与你的路由器或交换机配置一致。
  3. 检查ipv6地址是否已正确配置:如果你无法ping通ipv6网关,则可能是因为ipv6地址没有正确配置。你可以使用“ip addr show”命令来检查ipv6地址是否正确配置。
  4. 检查网络连接是否畅通:你需要确保你的网络连接没有故障。你可以使用“ping”命令来测试网络连接是否正常。

这个问题可能是由于路由表配置不正确导致的。可以通过以下步骤来解决:

确认网关地址是否正确,并且确保可以通过该网关访问互联网。可以尝试使用ping命令测试网关地址是否可达。

确认路由表是否正确配置。可以使用route命令查看路由表信息,确保路由表中包含正确的默认路由和子网路由。

确认防火墙是否正确配置。可以尝试关闭防火墙,然后再次测试网络连接是否正常。

确认网络接口是否正确配置。可以使用ifconfig命令查看网络接口信息,确认接口配置是否正确。

如果仍然无法解决问题,可以尝试使用其他工具进行故障排除,例如tcpdump等。

您可以尝试以下步骤来解决问题:

  1. 检查是否正确配置了ip地址、子网掩码、网关和DNS服务器,确认每一项都正确。
  2. 确认ipv6网关是否正确,可通过“ip -6 route”命令来查看ipv6路由表,检查ipv6网关是否正确。
  3. 查看是否存在防火墙或安全策略限制了ipv4或ipv6访问。您可以暂时关闭防火墙,测试是否能够联通。
  4. 如果您的网络环境中使用了IPv6隧道技术,如Teredo或6to4等,可能会导致IPv6无法正常工作,建议禁用这些IPv6隧道技术。
  5. 检查您的网络设备是否支持IPv6,如果不支持IPv6,可能需要禁用IPv6或使用其他设备。

如果以上步骤都不能解决问题,建议您参考Ubuntu22.04的官方文档,或者咨询相关技术支持人员获取帮助。