C#:生成唯一的本地IPv6地址前缀

问题描述

我正在尝试生成唯一的本地IPv6地址前缀(在链接https://tools.ietf.org/html/rfc4193中给出)第3.2.2节。伪随机全局ID算法的示例代码

步骤也在下面给出...

  1. 以64位NTP格式[NTP]获取当天的当前时间。

    1. 从运行此命令的系统获取EUI-64标识符 算法。如果不存在EUI-64,则可以从 [ADDARCH]中指定的48位MAC地址。如果是EUI-64 无法获得或创建,合适的唯一标识符, 应该在节点本地使用(例如,系统序列号)。

    2. 将一天中的时间与系统特定的标识符连接起来 为了创建密钥。

    3. 根据[FIPS,SHA1]中指定的密钥计算SHA-1摘要; 结果值为160位。

    4. 使用最低有效40位作为全局ID。

    5. 连接FC00 :: / 7,将L位设置为1,并将40位全局 创建本地IPv6地址前缀的ID。

此算法将产生合理唯一的全局ID 并可用于创建本地分配的本地IPv6地址 前缀。

我只是想知道是否有任何C#内置方法或可用的nuget软件包,或者如果有人可以为其提供C#代码,这将是有帮助的。

我猜在C#中,它称为IPv6SiteLocal。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)