ipv6 子网掩码计算

jianzhibeihang 2012-07-02 10:44:35
对于ipv4,我们可以如下计算地址范围:
uint32_t addr_mask = ~((1 << (32 - policy_info.dst_prefixlen)) - 1); //dst_prefixlen is network prefix.
uint32_t dst_addr_min = policy_info.dst_subnet & addr_mask;
uint32_t dst_addr_max = policy_info.dst_subnet | ~addr_mask;
我们知道子网的长度是dst_prefixlen,和子网的ip地址 dst_subnet

现在对于ipv6,我们也只是知道子网的长度dst_prefixlen_v6和子网的地址dst_subnet_v6,该如何计算得到子网掩码的ip地址和地址上下限的值。多谢大家指教了!!!
uint32_t addr_mask_v6[4];
uint32_t dst_addr_min_v6[4];
uint32_t dst_addr_max_v6[4];
...全文
1580 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
jianzhibeihang 2012-07-03
  • 打赏
  • 举报
回复
没人帮顶吗?

23,120

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧