在 Linux 中如何显示 IPv6 NDISC 缓存?

Ger*_*mbs 15 linux ipv6 iproute2 ndp

假设您已经在其中一个 Linux 系统上配置了 IPv6 代理 NDP,如下所示:

ip -6 neighbor add proxy 2001:db8:1234::5 dev eth1
Run Code Online (Sandbox Code Playgroud)

您如何验证配置是否生效?ip -6 neighbor show似乎不显示代理条目,ip -6 neighbor show proxy也不是受支持的命令。

小智 1

我认为 ip 工具只是不打印 NTF_PROXY 标志。在 ip/ipneigh.c 中,在 NTF_ROUTER 块之后,尝试添加

   if (r->ndm_flags & NTF_PROXY) {
            fprintf(fp, " proxy");
    }
Run Code Online (Sandbox Code Playgroud)

我没有安装 NDP 代理,因此无法对其进行测试。然而,从阅读内核源代码来看,这些条目似乎都会被返回,并且应该为代理条目设置标志。