如何以编程方式通过Windows为IPv6网络ping所有地址。
我的地址是fe80 :: 1881:1fc2:a153:71f0%3(首选)。
我通过IPv4完成了这项工作,没有任何问题,但很难理解如何为IPv6构建我的ARP表。
答案 0 :(得分:2)
如何以编程方式[sic] ping所有地址 用于IPv6网络的Windows。 [原文如此]
如果您尝试在标准18,446,744,073,709,551,616
IPv6网络上对每个可能的/64
地址执行ping操作,每秒1,000,000
个地址,则会超过584,542
年份。您根本无法尝试ping IPv6网络上的每个主机。
...很难理解如何构建我的ARP表 对于IPv6。
IPv6不使用ARP。 IPv6使用ND。 IPv6 ND维护了一些表,其中包括邻居缓存和目标缓存。
RFC 4861, Neighbor Discovery for IP version 6 (IPv6),解释了IPv6 ND的主机数据结构。
5.1。概念数据结构
主持人需要维护以下信息 每个界面:
邻居缓存
- 关于最近已向其发送流量的各个邻居的一组条目。条目以邻居的在线链接为关键字 单播IP地址,包含链路层等信息 address,指示邻居是路由器还是路由器的标志 host(在本文档中称为IsRouter),指向任何排队的指针 等待地址解析完成的数据包等 Neighbor Cache条目还包含Neighbor使用的信息 不可达性检测算法,包括可达性 state,未应答探测器的数量,以及下一次探测的时间 计划发生邻居不可达检测事件。
目标缓存
- 关于目的地的一组条目 最近发送了流量。目的地 缓存包括on-link和off-link 目的地并提供一定程度的间接 进入邻居缓存;目标缓存映射 目标IP地址到的IP地址 下一跳邻居。此缓存已更新 从重定向消息中学习的信息。 实现可能会发现存储方便 与...无直接关系的其他信息 目标缓存条目中的邻居发现, 例如路径MTU(PMTU)和往返定时器 由传输协议维护。
前缀列表
- 定义一组前缀的列表 链接的地址。前缀列表条目 是根据路由器收到的信息创建的 广告。每个条目都有一个关联 失效计时器值(从中提取) 广告)过去曾经过期前缀 失效。一个特殊的“无限”计时器值 指定前缀永远有效, 除非在a中收到新的(有限)值 后续广告。链接本地前缀被认为是在 带有无限失效计时器的前缀列表 无论路由器是否正在做广告 它的前缀。收到路由器广告 不应该修改失效计时器 link-local prefix。
默认路由器列表
- 可以向其发送数据包的路由器列表。 路由器列表条目指向的条目 邻居缓存;选择a的算法 默认路由器支持已知可达的路由器 那些可达性是可疑的。每 条目还有一个相关的失效计时器 使用的值(从路由器公告中提取) 删除不再公布的条目。