如何在 Linux 上 ping IPv6 地址
从 Linux 系统 Ping 网络设备是一个非常常见的故障排除步骤,用于测试互联网连接或与特定设备的连接。如果您花过时间摆弄计算机,尤其是 Linux 命令行,您可能已经对 ping
命令有些熟悉了。
您可能不太熟悉 IPv6 地址。 IPv6 旨在取代 IPv4 网络地址标准——这是一个持续多年的过程。尽管 IPv4 目前还没有消失的迹象,但 IPv6 网络地址正变得越来越普遍。
在本指南中,我们将向您展示如何从 Linux 系统 ping IPv6 地址。这是最基本的故障排除步骤之一,随着新标准的普及,它正在发生一些变化。不同的 Linux 发行版可能会以不同的方式处理地址,因此让我们看一下如何从一些最流行的发行版中 ping IPv6 地址。
在本教程中您将学习:
如何在 Linux 上 ping IPv6 地址
如何从 Linux ping IPv6 地址
Ping IPv6 地址
首先,您需要在自己的系统上拥有 IPv6 地址,以便通过 IPv6 与其他设备进行通信(包括 ping)。您可以使用我们有关检查本地和公共 IP 地址的文章来查看您的 IP 地址。不过,您的 ISP 很可能确实为您提供了公共 IPv6 地址。
许多系统(例如 Web 服务器)将同时运行 IPv4 和 IPv6 地址。这可能会使测试变得更加困难,因为我们要确保我们正在 ping IPv6 地址而不是 IPv4。 Google 通过托管两个服务器 ipv4.google.com
和 ipv6.google.com
为我们提供了便利。
显然,IPv6 服务器可用于测试您的系统与他们的系统之间的 IPv6 连接。从您自己的终端尝试以下 ping
示例:
$ ping ipv6.google.com
PING ipv6.google.com(mia07s54-in-x0e.1e100.net (2607:f8b0:4008:80e::200e)) 56 data bytes
64 bytes from mia07s54-in-x0e.1e100.net (2607:f8b0:4008:80e::200e): icmp_seq=1 ttl=119 time=538 ms
Ping IPv6 主机名
如果没有主机名,您还可以指定完整的 IPv6 地址。以下是我们对我们设置的测试服务器执行 ping 操作时的结果。
$ ping 2001:19f0:5:2ce9:5400:03ff:fe12:9809
PING 2001:19f0:5:2ce9:5400:03ff:fe12:9809(2001:19f0:5:2ce9:5400:3ff:fe12:9809) 56 data bytes
64 bytes from 2001:19f0:5:2ce9:5400:3ff:fe12:9809: icmp_seq=1 ttl=56 time=1293 ms
Ping IPv6 地址
另一方面,假设远程系统和您的系统都有 IPv4 地址,则对另一个主机名执行 ping 操作可能会导致 IPv4 ping。
$ ping google.com
PING google.com (172.217.4.46) 56(84) bytes of data.
64 bytes from lga15s46-in-f46.1e100.net (172.217.4.46)...
在基于 Debian 的 Linux 发行版(包括 Ubuntu)上,您可以使用 ping6
命令强制 ping 使用 IPv6 而不是 IPv4。
$ ping6 google.com
在基于 Red Hat 的发行版(例如 CentOS)和基于 Arch Linux 的发行版(例如 Manjaro)上,使用 -6
选项和 ping
命令强制使用 IPv6。
$ ping -6 google.com
结论
在本指南中,我们学习了如何从各种 Linux 发行版 ping IPv6 网络地址。棘手的部分是许多系统同时具有 IPv4 和 IPv6 地址,因此了解如何强制 Linux 使用 IPv6 连接非常重要。本指南中的方法向您展示了两种执行此操作的方法:一种是 ping 由 Google 托管的纯 IPv6 服务器,另一种是使用 ping6
或 ping -6
来自终端的命令。