CCNP - Route: Rules for, and use of NULL0?

Node ManNode Man Member Posts: 668 ■■■□□□□□□□
Hi Everybody,
I hope you are having a nice day. Can anyone give a framework for the purpose of, and rules for using NULL0? The book mentions its use and I understand it can be used as a dumping ground. But I dont understand the benefits or reasons behind it. Searching the internet for NULL0 isnt very helpful. Like can I chose to config a NULL0?

Here is what Cisco says, but again, it doesn't really provide a context :

"The Null interface is typically used for preventing routing loops. Enhanced Interior Gateway Routing Protocol (EIGRP), for instance, always creates a route to the Null0 interface when it summarizes a group of routes. Whenever a routing protocol summarizes, this means that the router might receive traffic for any IP address within that summary. Because not all IP addresses are always in use, there is a risk of looping packets in case default routes are used on the router which receives the traffic for the summary."


Maybe I am overthinking it.
Thanks for any advise.

Comments

  • OfWolfAndManOfWolfAndMan Member Posts: 923 ■■■■□□□□□□
    Hello Node Man. Firstly, this is some good stuff to know for the CCNP ROUTE, so let me see if I can explain to you the purpose of a NULL route.

    Before I begin, remember the method of route selection in this order:
    1. Most specific prefix (10.10.10.0/24 preferred over 10.10.0.0/16)
    2. Lowest Administrative Distance
    3. Best metric (Lowest)
    4. Lowest ASN

    By default, as you mentioned, EIGRP auto-creates a null0 route whenever a summary address is created on a router. The purpose of this is always the same: To prevent a potential loop as you described. Think of it this way: You have summarized an address 10.10.8.0/22 (Range 10.10.8.1 - 10.10.11.254). The addresses you are summarizing are 10.10.8.0/24, 10.10.9.0/24, and 10.10.10.0/24. You cannot omit 10.10.11.0/24 from the summary address, so therefore you are stuck with adding it in. What happens when a client sees this summary address, and they're looking for host 10.10.11.5? Well, if it is the most specific prefix in the RIB (Which it is in this example), the client's packet will go to the router with the summary address. Obviously, there is no 10.10.11.5, so because there is not a more specific prefix in its RIB, the router drops the packet, because any packet that cannot find a more specific prefix than 10.10.8.0/22 in its RIB will be sent to the bit bucket (AKA Null0)

    Now, let's say that you have the same situation, but with OSPF. Let's say 10.10.8.0/22 is summarized at the edge of area 1 facing area 0, and the same client is attached in area 0 wanting to reach 10.10.11.5. In area 0, there is a default route advertised by the ASBR (You will see how this comes into play later). The client sends to 10.10.11.5 and reaches the ABR in which the summarization occurs. There is no 10.10.11.0/24 in the router's RIB, therefore where does it send it? Well, because OSPF does not have the same NULL0 capability for its summary routes, it will look for the most specific prefix, which, in our case, is 0.0.0.0 (Default route from the ASBR). The packet will jump back to the previous hop in area 0, and then jump back to the ABR going to area 1 until the TTL expires. To create a null route in OSPF, you have to do an #ip route [network] [mask] null0 static route and redistribute it if you want a similar result as EIGRP's method.

    Does that explain it a little better for you?
    :study:Reading: Lab Books, Ansible Documentation, Python Cookbook 2018 Goals: More Ansible/Python work for Automation, IPSpace Automation Course [X], Build Jenkins Framework for Network Automation []
  • pevangelpevangel Member Posts: 342
    ...Well, because OSPF does not have the same NULL0 capability for its summary routes...
    Actually, OSPF automatically creates a discard route or route to Null0 in the ABR where the summarization occurs. But you can disable it, so in that case you'd have the issue you described.

    Null0 routes are also used to install summary routes in the routing table so that it can be advertised in BGP.
Sign In or Register to comment.