搁浅v 发表于 2012-3-28 09:35:31

反掩码的计算?求理解

看遍了百度的收索,答案五花八门!求高手帮忙解答
反掩码的有关计算过程、最主要是精华,方法--
希望楼主可以根据例子详!解感激不尽--

1.只允许192.168.1.0-192.168.1.255,
2.只允许192.168.1.0-192.168.1.7
3.只允许192.168.1.80-192.168.1.95
4.只允许192.168.1.0- 192.168.1.255的所有奇数
5.只允许192.168.1.0 - 192.168.1.255的所有偶数。
6.只允许192.168.1.160-192.168.1.167的所有奇数。
7.只允许192.168.1.208-192.168.1.223的所有偶数。
8.只允许192.168.1.163,,192.168.1.167,,192.168.1.171,,,192.168.1.175
9.只允许192.168.1.224-192.168.1.240.

linda.! 发表于 2012-3-28 09:51:29

1.只允许192.168.1.0-192.168.1.255,          192.168.1.0 0.0.0.255
2.只允许192.168.1.0-192.168.1.7                192.168.1.00.0.0.7
3.只允许192.168.1.80-192.168.1.95             192.168.1.80 0.0.0.15
4.只允许192.168.1.0- 192.168.1.255的所有奇数    192.168.1.1 0.0.0.254
5.只允许192.168.1.0 - 192.168.1.255的所有偶数。 192.168.1.0 0.0.0.254
6.只允许192.168.1.160-192.168.1.167的所有奇数。192.168.1.161 0.0.0.6
7.只允许192.168.1.208-192.168.1.223的所有偶数。192.168.1.208 0.0.0.14
8.只允许192.168.1.163,,192.168.1.167,,192.168.1.171,,,192.168.1.175      192.168.1.163 0.0.0.12
9.只允许192.168.1.224-192.168.1.240.                  192.168.1.224 0.0.0.15

linda.! 发表于 2012-3-28 09:55:17

只要掌握,反掩码0表示精确匹配,1表示任意匹配
比如192.168.1.163第四个八位组二进制是:10100011
      192.168.1.167第四个八位组二进制是:10100111
      192.168.1.171第四个八位组二进制是:10101011
      192.168.1.175第四个八位组二进制是:10101111
红色部分是可变的,那么反掩码值为1,不变的值为0

victor_huang 发表于 2012-3-28 09:56:12

首先,这么去理解,ACL是用来控制的用户数据的,表示的是一个控制的范围。
正掩码用来表示的是一个路由。反掩码强调的是范围,即能表示用户数据的范围,也能表示路由的范围
1,标准ACL
access-list 1 per ip 1.1.1.0 0.0.0.255
标准ACL针对的是路由的网络号部分。
也就是1.1.1.0 0.0.0.255是针对的网络号部分,它的范围是1.1.1.0-1.1.1.255。
如果过来一个路由 1.1.1.128/25,因为1.1.1.128这个网络部分的数据落在上面的这个范围之内,所以MATCH上了;
如果过来的一个路由1.1.2.0/24,因为1.1.2.0这个数据没有落在上面的这个范围之内,所以没有match上;

2,扩展ACL
access-list 100 per ip 1.1.1.0    0.0.0.0    255.255.0.0   0.0.255.255
扩展ACL的前面部分(1.1.1.0 0.0.0.0)针对的是网络号部分,范围是从1.1.1.0-1.1.1.0,
而ACL的后面部分(255.255.0.0 0.0.255.255)针对的是掩码部分,从255.255.0.0-255.255.255.255;
如果过来一个路由1.1.1.0/28的,那么,1.1.1.0命中了网络号的范围,而255.255.255.240命中了掩码部分,所以这个路由MATCH上了;
如果过来一个路由1.1.1.128/25,那么,1.1.1.128没有命中网络号的范围,而255.255.255.128命中了掩码部分,所以这个路由没有match上。

我这里上传一份资料,楼主可以去看一下。

ufd_苜 发表于 2012-3-28 10:13:24

反掩码与掩码之间有一个规律,即每八位为一组,每组“反掩码+掩码=255”
而反掩码,即为每个地址块的大小。
所以:
问题1:其地址块大小为 255,反掩码即为0.0.0.255
问题2:0.0.0.7
问题3:0.0.0.15
问题4:只允许奇数,经过计算,可发现,所有奇数的地址二进制表示的最后一位都为1,其他位一次递增,反掩码的规律是“不改变(即精确匹配位)为0,改变(即不需匹配位)为1”,故本题反掩码为:0.0.0.254
问题5:与问题4同理
问题6:160~167,表示为二进制,规律为”0000 0001" "0000 00011" "0000 0101" "0000 0111",这样可以知道,前面5位不变,最后一位也不变。所以其反掩码为:0.0.0.6
问题7:与问题6同理
问题8:把163、167、171、175,转换为二进制可得:10100011、10100111、10101011、10101111,按照“不改变(即精确匹配位)为0,改变(即不需匹配位)为1”的规律,其反掩码的二进制表示为:00001100,十进制表示为:0.0.0.12
问题9:这里的地址块为16,故192.168.1.224~192.168.1.239为一个地址块,192.168.1.240为单独的地址,须另外匹配。所以其反掩码为:(1)对于192.168.1.224~192.168.1.239,使用“0.0.0.15”;(2)对于192.168.1.240,使用“0.0.0.0”

tea 发表于 2012-3-28 11:04:31

大家的回复都好详尽啊--

王晓强 发表于 2012-3-28 11:56:34

这是个展示交流的好平台~几位辛苦了~

NSTcisco 发表于 2012-3-28 14:29:54

victor_huang 发表于 2012-3-28 09:56 static/image/common/back.gif
首先,这么去理解,ACL是用来控制的用户数据的,表示的是一个控制的范围。
正掩码用来表示的是一个路由。反 ...

楼主,一直有个疑问,正好你的帖子里提到了,还请指教:
access-list 100 per ip 1.1.1.0    0.0.0.0    255.255.0.0   0.0.255.255
这是一个扩展访问控制列表,在命令行模式下,连接敲?后看到:access-list 100 permit ip ,和你说的[网络号][网络号通配符][掩码][掩码通配符]不符啊?

搁浅v 发表于 2012-3-28 23:52:36

victor_huang 发表于 2012-3-28 09:56 static/image/common/back.gif
首先,这么去理解,ACL是用来控制的用户数据的,表示的是一个控制的范围。
正掩码用来表示的是一个路由。反 ...

thankyou 我现在理解了!--

搁浅v 发表于 2012-3-28 23:55:30

ufd_苜 发表于 2012-3-28 10:13 static/image/common/back.gif
反掩码与掩码之间有一个规律,即每八位为一组,每组“反掩码+掩码=255”
而反掩码,即为每个地址块的大小。 ...

--明白了!谢谢!还得继续努力
页: [1] 2
查看完整版本: 反掩码的计算?求理解