路由器的 NULL0 接口是什么?其作用是什么?

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

由此可以推断,如果我们在路由器上配置一条静态路由,该路由的出口就是NULL0,那么该路由会有下列特性:
1、这个静态路由永远的有效,那是因为接口不会DOWN掉;
2、使用该路由转发数据帧消耗的系统资源很少,因为路由器只是丢弃接收的数据包;
3、路由器根据配置的参数要不然向数据源发一个丢弃通知(ICMP通知消息),要不就不做任何反应。

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

1.防止路由环

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

示例:
路由器A-路由器B
路由器B后有路由器C,D,E,分别是10.1.4.0/22、10.1.8.0/22、10.1.12.0/22

由于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。

转载:

http://www.kokojia.com/article/26220.html