Wifi 中继器和 Ipv6 邻居发现

Wifi 中继器和 Ipv6 邻居发现

我正在使用 wifi 中继器 (AVM FRITZ!WLAN 中继器 310) 来扩展我家里的 wifi。我注意到,当我连接到我的主要接入点/dsl 调制解调器/路由器 (Speedport W 724V) 的 wifi(我们称之为 wifi A)时,我可以毫无问题地使用 ipv6。当我使用中继器的 wifi(wifi B)时,我的计算机会获取 ipv6 地址,但当我在互联网上 ping 我的服务器时,我没有得到任何响应。此外,wifi A 中的设备无法通过 ipv6 访问 wifi B 中的设备。

通过使用 wireshark,我发现从 wifi A 发送到 wifi B 中设备的请求节点多播地址的邻居请求消息不会通过中继器。但是,如果两个设备都在 wifi B 中,这些多播地址确实有效。

现在我的问题是:

  • 在返回 ping 请求或其他 tcp/udp 数据包的答复时,ipv6 路由器是否需要使用带有请求节点多播地址的邻居请求?
  • 如果中继器在其 WiFi 中存在给定的多播组,它是否应该转发此类消息?
  • 我是否忘记了 ipv6 中的其他概念,而这些概念可能会导致我遇到问题?

答案1

在返回 ping 请求或其他 tcp/udp 数据包的答复时,ipv6 路由器是否需要使用带有请求节点多播地址的邻居请求?

通常情况下是的,但兼容 IPv6 的接入点可能会执行 ND 代理,以避免不必要地唤醒客户端。(许多 AP 已经针对 IPv4 ARP 执行了同样的操作。)

此外,如果 AP将 NS 数据包传送到客户端,如果它支持“多播到单播”(更可靠,但有时会使接收设备感到困惑)与使用实际的 Wi-Fi 多​​播相比,您可能会得到不同的结果。

答案2

这看起来可能有点草率,但您可以强制两端都使用 iPv6 NDP 条目,以便它们可以通信。(这类似于手动添加永久 ARP 表条目,以便两个 IPv4 主机在 ARP 失败时可以通信。)这就是我解决使用有线<-->无线<-->有线桥接时没有 IPv6 连接的问题的方法。

在 Linux 上,你可以这样做:“ip -6 neigh add(远程 ipv6 地址)lladdr(远程 mac 地址)dev(接口)”

在 Windows 上,您可以类似地使用“netsh interface ipv6 add neighbours (arguments)”命令。

Ed Thubert 在此处发布了 IETF 针对此问题提出的解决方案:https://tools.ietf.org/id/draft-thubert-6man-ipv6-over-wireless-00.html

杰夫

相关内容