LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1292|回复: 1

求教高手超网的IP地址块

[复制链接]
发表于 2007-9-27 19:29:38 | 显示全部楼层 |阅读模式
老师布置了个任务让我们把我国到9月5号申请的IPV4的地址,用超网的概念和使用CIDR记法做IP聚合构成地址块,记录有1400多条,据说构成超网后有接近600条,我知道超网怎么构成,但工作量太大了 ,请问高手能否指点下超网IP地址块计算的简便方法,最好给我个算法或者推荐点什么工具,方便完成任务,谢谢了,这周末就是DEADLINE啊!!!
发表于 2007-9-28 08:21:59 | 显示全部楼层
给个思路:
那些地址(1400+),每条的表示方式是
起始地址~终止地址的表示法(如果是 网络/网络号长度,就计算一下,修改成 起始地址~终止地址),最好把IP换算成整数
对其进行排序,并处理一下,如果上一条的终止地址+1=下一条的起始地址的话,那么合并这两条(新的表示法就是第一条的起始地址~第二条的终止地址)

然后对合成后的地址段进行重新分类:
方法
先对起始地址进行处理,看看以起始地址为网络号的网络最多可能有多少个主机,然后将起始地址+(2^n<=主机数 n=1、2、3、4... )与终止地址进行比较,如果 2^n <= 终止地址 < 2^(n+1),那么就分出一个聚合块 起始地址/(32-n),如果此时 起始地址+2^n -1=终止地址,此地址段处理完毕,否则,生成一个新的段(原起始地址+2^n+1~原终止地址),继续处理
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表