分享
  • 收藏
    X
    解析CIDR表示的IP段表示的范围
    574
    0

        需求:给定一个ip:172.28.68.0和一个CIDR格式的ip配置项ipConfig="172.28.64.0/22,172.28.72.11;172.16.0.0/12,172.28.80.27",判断该IP是在哪个cidr表示的地址段,并获取cidr格式后面的一个ip地址。 
        首先,要对cidr表示法要有所了解。 
        例如:172.28.64.0/22表示前22位不变,用1表示,后10位表示网络主机范围,相应的掩码表示为:11111111 11111111 11111100 00000000即该CIDR的掩码为:255.255.252.0 

        然后根据公式计算地址范围: 
       


    •     

    • 网络地址 = IP address & Mask

    •     

    • 网络广播地址 = Network address + Mask反码

    •     

    • 地址范围 = { 网络地址, 网络地址 + Mask反码}

    •    


        例如: 
            IP address = 200.6.12.55,Mask = 255.255.248.0 
            网络地址 = 200.6.12.55 &  255.255.248.0 = 200.6.8.0 
            地址范围 = {200.6.8.0,200.6.15.255} 
        确定范围后如何快速判断一个IP是否在该CIDR表示的范围内?这里用的技巧是把ip转换为256进制的数,再看该IP是否在范围内。


    19
    打赏
    收藏
    点击回复
        全部留言
    • 0
    更多回复
        你可能感兴趣的主题
    恢复多功能编辑器
    知识星球
        圈内贴子38
    • 社群成员3
    本圈子内的新贴

    热门分类
    推荐内容
    扫一扫访问手机版