下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

NULL0接口是什么?其作用是什么?

作者:课课家教育     来源: http://www.kokojia.com点击数:19825发布时间: 2019-02-21 09:31:57

标签: NULL0接口路由器网络地址

  对于路由接口大家认识哪些? NULL0接口究竟是怎能样的呢?它在路由器当中的作用有哪些呢?阅读本文,我们一起来揭开答案吧。

  NULL0是一个伪接口,不能配地址,也不能在NULL0接口上封装任何链路层协议。这是是属于路由器的逻辑接口,NULL0接口总是处于Up状态,但不转发任何报文。当NULL0接口接收到报文后,会把报文丢弃。

  由此可以推断,如果我们在路由器上配置一条静态路由,该路由的出口就是NULL0,那么该路由会有下列特性:

  1、这个静态路由永远的有效,那是因为接口不会DOWN掉;

  2、使用该路由转发数据帧消耗的系统资源很少,因为路由器只是丢弃接收的数据报;

  3、路由器根据配置的参数要不然向数据源发一个丢弃通知(ICMP通知消息),要不就不做任何反应。

  NULL0接口的作用

  NULL0接口主要有以下两方面的作用。

  1.防止路由环

      NULL0接口最典型的使用是用来防止路由环。在聚合一组路由时,总是创建一条到NULL0接口的路由。

防止路由环 

  如上图所示,由于10.1.4.0/22、10.1.8.0/22、10.1.12.0/22可以聚合为10.1.0.0/16, 路由器RouterA接收到目的地址是10.1.0.0/16网段内的报文,则RouterA会把该报文转发到RouterB。

  如果该报文的目的地址不是RouterC、RouterD和RouterE所连网段的网络地址,RouterB查找路由表后,会找到缺省路由,然后把该报文发给RouterA。

  因此这些目的地址不是RouterC、RouterD和RouterE所连网段的网络地址,但是10.1.0.0/16网段的网络地址的报文,会在RouterA和RouterB之间如此反复被传输,形成路由环。

  在实际应用中,一般会在RouterB上配置一条到NULL0接口的静态路由。

  ip rout 10.1.0.0 255.255.0.0 NULL0

  这样,当RouterA收到目的网段不是本地三个子网的报文后,RouterA会根据精确匹配原则,找到出接口是NULL0接口的路由,然后把该报文丢弃。

  2.用于过滤通信

  NULL0接口提供了过滤通信量的一个可选的方法。可以通过将不想要的报文发送到NULL0接口,避免过分涉及访问控制列表的使用。

  NULL0接口和访问控制列表都可以用于过滤通信量,这两种用法各有裨益。下面对NULL0接口和访问控制列表进行简单比较。

  (1)NULL0接口的优点

  NULL0接口的配置简单,只需将不想要的报文的出接口指定为NULL0接口。当路由器收到报文时,直接查找转发表,发现出接口是NULL0接口,则路由器不对报文做任何处理,直接丢弃。

  如果使用访问控制列表,首先要配置ACL规则,然后将它应用到接口。当路由器收到报文时,要首先查找访问控制列表:

  如果是拒绝,就直接扔掉。如果是接受,还要查找转发表,再对报文进行转发或丢弃。

  所以对比起来,应用NULL0接口效率高,速度快。比如某路由器不希望收到目的地址是131.1.0.0/16的报文:

  用NULL0接口实现,只需配置路由。如果用访问控制列表实现,需要先配置一条ACL规则,然后再将这条规则在路由器的相应接口上应用。

  (2)NULL0接口的缺点

  NULL0接口不能细化通信量,它面向的对象是整个路由器。访问控制列表是可以面向接口的。如果细致到面向接口的通信量,NULL0接口就不能满足要求了。

  比如某路由器不希望在本地接口Serial1/0/0上收到目的地址是131.1.0.0/16的通信量。用NULL0接口是不能实现的,只能通过配置ACL规则,然后将其应用到接口Serial1/0/0。

  NULL0的应用

  1 作为备用路由使用

  一般,如果一台路由器接收了一个数据包,而在自己的路由表里又没有查询到要转发的路由,该路由器就会把数据报丢弃,并向数据源发送一个目的地不可达的ICMP消息。当然,这是一种正确的行为,但有些情况下就可能不符合人的愿望,比如,我们在路由器上配置了一条静态路由,使这个路由指向一个物理串口,这个串口正常时,该静态路由就可用,但这个串口DOWN掉时候,该静态路由就会被删除,这样如果再收到这样一个数据报(该数据报需要配置的静态路由进行转发),则丢弃,并给源发送一个ICMP目的地不可达消息,接收到ICMP不可达消息的主机就有可能修改自己的路由表(尤其是在一些Unix主机),而这是我们所不希望的。

  这时候我们可以配置一条指向NULL0接口的备用路由,但是把优先级降低,假设我们在路由器上做如下配置:

  (router-config)#ip route 0.0.0.0 0.0.0.0 Serial 0 preference 60

  (router-config)#ip route 0.0.0.0 0.0.0.0 NULL0 preference 20

  即使SERIAL0接口断掉了,路由器也就会不断使用下条路由地进行转发(转发的结果当然就是丢弃数据报),而不再给源目的地发送ICMP不可达消息。这在路由摆动比较频繁的情况下也可以使用,不至于影响到其它路由器,而仅仅只是把摆动限制在自己身上。

  2.IP策略中的使用

  某些情况,我们也可能采取某些IP转发的策略,像,进行源地址的路由等。在这些情况下,我们可能需要转发一些符合条件数据,而丢弃一些不符合条件的数据。有些情况下,比如源地址的路由等,可以通过访问列表解决,但有些特殊情况下,用访问列表是解决不了的,比如,我们在以太网接口上过滤1500字节的数据,即如果数据报的长度超过了1500,我们可以丢弃。该需求可以通过IP策略解决,如下:

  1配置一个路由影像(ROUTE-MAP),如下:

  (router-config)#route-map Deny_1500 permit 100

  (router-route-map)#match length 1500

  (router-route-map)#set interface NULL0

  (router-route-map)#exit

  2到接口的模式下,实施IP的策略,如下:

  (router-config-if)#ip policy route-map Deny_1500

  完成这样配置后,所有以太网接口上都将收到的1500字节的数据帧过滤掉。

  RIPv2中的使用

  路由器会提示如下信息:

  “Summary mask must be greater or equal to major net”

  显示的提示信息表明汇总后的掩码升序必须要大于或等主类网络的掩码长度,因为”22<24”,所以不能汇总。

  所以,RIPv2不支持CIDR汇总,但是可以传递CIDR汇总。

  对于以上的内容,不知道大家有什么疑问呢?如果有,可以给小编留言提出来哦。也希望大家阅读本文之后对于NULL0接口有更深一步的理解,这样这篇文章也算是对大家有那么一些帮助了。欢迎到课课家教育与其他的伙伴们一起玩耍学习哦,小编也等着您的到来哟。

赞(7)
踩(1)
分享到:
华为认证网络工程师 HCIE直播课视频教程