科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道应用软件思科通配符(Cisco Wildcard Mask)

思科通配符(Cisco Wildcard Mask)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

思科通配符(Cisco Wildcard Mask)

作者:ddvip 来源:ddvip 2009年12月30日

关键字: 思科 路由器

  • 评论
  • 分享微博
  • 分享邮件

思科通配符(Cisco Wildcard Mask)

 

注:今天在做EIGRP的时候发现以上内容纯属扯淡,EIGRP不支持不连续的通配符掩码,还未做过ACL和OSPF。等做了之后再来更新。这些内容只是听课后的整理,未经验证就发上来了,正是验了那句话,别相信任何人和任何书籍,唯一能相信的是机器!   

  可能很多人的感觉和我一样,通配符不就是反掩码吗?简单的作法是拿4 个255减去子网掩码就成了。但真的是样吗?

  先来看看思科对通配符的定义:

  wildcard mask A wildcard mask is a 32-bit quantity used in conjunction with an Internet address to determine which bits in an Internet address should be ignored when comparing that address with another Internet address. A wildcard mask is specified when setting up access lists.

  通配符是一个用于决定哪些IP地址位该精确匹配(0代表精确匹配)哪些地址位被忽略的32位数值,通常用于处理访问控制列表(ACL)、OSPF和EIGRP等路由协议的网络通告。

  由于最先接触的是子网掩码(NetMask)而子网掩码是连续的,只能是诸如      

  11111111.00000000.00000000.00000000而不能为11111111.10100000.00000000.00000000,即出现0之后就能再出现1了,这就是为什么子网掩码只能由128、192、224、240、248、252、254、255这8 个数值构成。这导致我想当然的认为通配符也必须连续,即1之后应全为1,而不能再有0的出现。

  注意:通配符中0代表精确匹配而1代表任意匹配,这与子网掩码恬好相反,所以很多人叫它反掩码,并且有一个简单的算法是使用4个255减去子网掩码,这种做法只适合一小部分应用,要将之使用好还得更深入了解。

  在开启此OSPF、EIGRP等路由协议后,均要使用network将网络通告进去,RIP不需要通配符掩码,而它只能通告主类网络,如:三个接口:10.1.1.1/24、10.1.2.1/24、10.1.3.1/24,这三个接口均会被通告进去,因为它们隶属于10.0.0.0这上主类网段。假如我只想通告10.1.1.1/24,只能开启被动接口,或使用访问控制列表进行控制。

  而使用OSPF、EIGRP等需要通配符掩码,通过它可以控制通告路由网段。上面的例子使用OSPF时,可以用network 10.1.1.1 0.0.0.255,呵呵恬好是用4个255来减子网掩码。假如接口数增多,从10.1.1.0网段到10.1.15.0网段,均使用OSPF进行通告,是使用network一条一条发布?非也,只需要一条network 10.1.1.0 0.0.15.255即可,为什么是0.0.15.255?

  我们将ip地址换为二进制:

思科通配符(Cisco Wildcard Mask)

  前20位均一样,都需要精确匹配,所以全为0,只有中间4位不一样,所以任意匹配,即1.最后8位均为0,使用精确匹配。所以通配符掩码为:0000 0000 0000 0000 0000 1111 0000 0000即0.0.15.0,在实际应用中,我们需要通告每个网段中的IP,所以我们任意匹配最后一位IP即用255。假如我们只需要通知网段地址,那就得使用0.0.15.0这个通配符掩码了。

  继续上面的例子,现在我们只通告奇类网段,该怎么做?

  奇数化为二进制时,最末都是1,所以我们精确匹配最后暗绿色区域的最末一位即可,掩码为0000 0000 0000 0000 0000 1110 0000 0000即network 10.1.1.0 0.0.14.255,这个例子也说明了通配符掩码支持不连续!

  再看下面的情形:

  有六个网段:10.1.1.0/24、10.1.2.0/24、10.1.3.0/24、10.1.16.0/24、10.1.17.0/24、10.1.18.0/24.

  怎样使用一条将之全通告进去。步骤与上面相同:

  将之全化为二进制形式:

思科通配符(Cisco Wildcard Mask)

  所以掩码为:

思科通配符(Cisco Wildcard Mask)

  即:0.0.19.0

  那么我们多添加了多少条网段进去?总共通告了2^3=8个网段多添加进8-6=2个网段。

  总结:

  1. 与子网掩码的区别与联系:不是简单的“正与反”的关系,都是使用32位二进制表示,子网掩码用于子网的划分,1代表网络,0代表主机,必须连续。通配符用于对地址的匹配,0代表精确匹配,1代表任意匹配,可以不连续。

  2. 应用:OSPF、EIGRP等网络地址通告、访问控制列表及前缀控制列表中对IP地址的匹配。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章