反掩码<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

问题:
  某公司男性网管认为 38 妇女节只让女同事放假十分不爽,于是他在 3 9 日添加了 1 ACL 策略。让所有的女同事无法上网。
该公司的 IP 规则如下:
男同事 IP 为单号,例如: 192.168.0.1 192.168.0.3..................
女同事 IP 为双号,例如: 192.168.0.2 192.168.0.4..................
请问 ACL 如何写?

回答:
限制男生上网: deny ip 192.168.0.1 0.0.0.254 any
限制女生上网: deny ip 192.168.0.0 0.0.0.254 any
——————————————————————————————————————————————————————
解释:
  所有的奇数转换成 2 进制后最后一位一定是 1 ,所有的偶数转换成 2 进制后最后一位一定是 0

反掩码又称通配符,规则如下:
奇数:
192.168.0.1=11000000.10101000.00000000.0000000
1
0.0.0.254    = 00000000.00000000.00000000.1111111
0
----------------------------------------------------------
                          192          .168           .0                .xxxxxxx
1
0
就照抄, x 代表任意,即 0 1 都可以。 最后一位一定要是 1


偶数:
192.168.0.1=11000000.10101000.00000000.0000000
0
0.0.0.254    = 00000000.00000000.00000000.1111111
0
----------------------------------------------------------
                          192          .168           .0                .xxxxxxx
0
0 就照抄, x 代表任意,即 0 1 都可以。 最后一位一定要是 0

ACLs 的一小段中文文档
一、导言
   
本篇文档介绍了访问控制列表( ACLs )是如何过滤网络流量的。它也大致介绍了 IP 访问控制列表的类型,用途和它应用到网络上的具体实例。
二、前提
   
阅读和使用本文档并没有什么特别的前提。只是要求你的 Cisco IOS 版本至少要是 8.3 或者更高。并请注意不同版本中 IP 访问控制列表的不同特点。
三、硬件和软件版本
   
这篇文档中所讨论的访问控制列表的类型,是从 Cisco IOS 版本 8.3 至今的,请注意不同版本之间的差别。
四、了解访问控制列表( ACL )的概念
   
这一部分讲述访问控制列表的概念
(一)使用掩码
   
在访问控制列表中,掩码和 IP 地址配合使用来指定什么样的流量可以通过( permitted )或者禁止( denied )。要在接口上才能配置访问控制列表。它与子网掩码不同的是,子网掩码是由左端的 255 开始的(比如, IP 地址: 209.165.202.129 ,掩码: 255.255.255.224 )而访问控制列表的掩码与子网掩码是相反的(比如,访问控制列表的掩码: 0.0.0.255 )这种掩码通常被叫做反转掩码( inverse mask )或通配符掩码( wildcard mask )。当这些十进制的掩码被转换为二进制的时候(表现为一些 0 1 ),就可以被用来决定什么样的流量应该被禁止,什么样的流量应该被通过。一个 0 表示它说对应的 IP 地址位一定要被精确匹配;一个 1 表示所对应的 IP 地址位应该被忽略,下面的表格用来说明访问控制列表的概念。
  掩码示例:
网络地址: 10.1.1.0 (流量)
掩码: 0.0.0.255
网络地址(二进制): 00001010.00000001.00000001.00000000
掩码(二进制): 00000000.00000000.00000000.11111111
   
根据二进制的掩码,你可以看到,前三个八位数组必须被精确的匹配给网络地址( 00001010.00000001.00000001 )。最后的一个八位数组是 应该被忽略 的( .11111111 )所以,所有的流量以 10.1.1 开始,直到最后八个 应该被忽略 的。所以,根据这个掩码,网络地址 10.1.1.1 直到 10.1.1.255 10.1.1.x )都会被处理。
   
访问控制列表的反转掩码同样也可以通过与默认掩码( normal mask 255.255.255.255 做减法来得出。例如:求一个网络地址为 172.16.1.0 ,标准掩码 255.255.255.0 的反转掩码方法为: 255.255.255.255-255.255.255.0 (默认掩码) =0.0.0.255 (反转掩码)
请注意访问控制列表一些等价的表示:
1
、源地址 / 源通配符 0.0.0.0/255.255.255.255 意义等于 “any”
2
、源地址 / 通配符 10.1.1.2/0.0.0.0 意义等于 “host 10.1.1.2”
小结访问控制列表
注意:子网掩码同样可以表示成一个固定长度的符号。比如, 192.168.10.0/24 也可以被表示成 192.168.10.0 255.255.255.0
(二)下面来讲述如何才能够将不同的网络地址进行总结。想一想如果有下面一些网络地址: 192.168.32.0/24
192.168.33.0/24

192.168.34.0/24

192.168.35.0/24

192.168.36.0/24

192.168.37.0/24

192.168.38.0/24

192.168.39.0/24
   
前两个八位数组和最后一个八位数组对于以上的每个网络地址都是相同的。下面是对如何将它们写成一个单独网络地址的解释。
   
上面几个网络地址中的第三个八位数组可以根据这个八位数组的位置和数值写成如下的形式:

十进制

128       

64       

32       

16       

8       

4       

2       

1

32       

0       

0       

1       

0       

0       

0       

0       

0

33       

0       

0       

1       

0       

0       

0       

0       

1

34       

0       

0       

1       

0       

0       

0       

1       

0

35       

0       

0       

1       

0       

0       

0       

1       

1

36       

0       

0       

1       

0       

0       

1       

0       

0

37       

0       

0       

1       

0       

0       

1       

0       

1

38       

0       

0       

1       

0       

0       

1       

1       

0

39       

0       

0       

1       

0       

0       

1       

1       

1

       

M       

M       

M       

M       

M       

D       

D       

D

    当前五比特被路由器察看的时候,以上的八个网络地址就可以被总结成一个网络地址( 192.168.32/21 或者 192.168.32.0 255.255.248.0 ),后三比特所有可能的排列形式也都被与这一个网络地址联系起来。(因为这个被总结好的网络地址后三彼特的全排列就分别是这八个网络地址)下面的命令用来定义一个访问控制列表来允许这个网络流量。从 255.255.255.255 减去 255.255.248.0 (标准掩码)得 0.0.7.255
access-list acl_permit permit ip 192.168.32.0 0.0.7.255
进一步的解释如何对网络地址进行总结,看一看下面的网络地址。
192.168.146.0/24
192.168.147.0/24
192.168.148.0/24
192.168.149.0/24
   
前两个八位数组和最后一个八位数组对于以上四个网络地址都是一样的。以下是解释如何将它们进行总结。以上四个网络地址的第三个八位数组根据八位数组的位置和数值可以被写成如下的形式:

十进制

128

64

32

16

8

4

2

1

146

1

0

0

1

0

0

1

0

147

1

0

0

1

0

0

1

1

148

1

0

0

1

0

1

0

0

149

1

0

0

1

0

1

0

1

    不像第一个例子一样,你不可能将这组网络地址总结成为一个单一的网络地址 —— 你至少(也应该)将它们总结成为两个网络地址。上面的例子可以被总结成为如下两个网络地址。
1.
对于网络地址 192.168.146.x 192.168.147.x ,除了最后一个以外的所有比特都是应该不被察看的。这样就可以写成: 192.168.146.0/23 (或者 192.168.146.0 255.255.254.0
2.
对于网络 192.168.148.x 192.168.149.x ,除去最后一个比特以外的所有比特都应该是不被察看的。这样就可以写成: 192.168.148.