Tag: routing

Troubleshooting EIGRP Neighbor Relationships

EIGRP internals and getting hands dirty in debugging routing adjacency and solving EIGRP neighboring issues.

What is sequence TLV and Conditional Receive CR-mode and CR flag

Couple of days ago I got a strange network behavior in my CCIE lab. Something was wrong between a router and L3 switch connection and there was EIGRP neighbor relationship reset every few minutes. It was happening all the time so I decided to debug a little.

It was looking something like this and I was very confused about it:

*Mar 1 01:00:32.135: EIGRP: Received Sequence TLV from 155.1.1.2
*Mar 1 01:00:32.135: 155.1.1.1
*Mar 1 01:00:32.139: address matched
*Mar 1 01:00:32.139: clearing CR-mode
*Mar 1 01:00:32.139: EIGRP: Received CR sequence TLV from 155.1.1.2, sequence 5
*Mar 1 01:00:32.139: EIGRP: Received UPDATE on FastEthernet0/0 nbr 155.1.1.2
*Mar 1 01:00:32.139: AS 1, Flags 0xA, Seq 5/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/1, not in CR-mode, packet discarded
………………………….
*Mar 1 01:10:00.123: EIGRP: FastEthernet0/0 multicast flow blocking cleared

The thing that was happening here is basically just some EIGRP internals doing their job. To be precise this was reliable routing information delivery over both multicast and unicast doing his reliable update delivery.

Normal EIGRP synchronization is done using multicast.

If we have two EIGRP routers that are trying to make initial sync and become neighbors they will intentionally see each other as “laggard” in the beginning. The term laggard is important here as it symbolize a neighbor to witch we are sending EIGRP updates in separate unicast communication.

Why?

If one EIGRP router is sending updates to, let’s say, 5 other neighbors. It will send that update to address 224.0.0.10 and it will include the update sequence number inside. Let’s say Seq=25.

When it sends the update Seq=25 to the network segment it will get ready to send next update with Seq=26 and wait for the acknowledgement of sequence 25 update. The problem is that the router will put newly prepared update Seq=26 onto the transmission lists for all 5 neighbors and it will not send it out to anybody until he acknowledges sequence 25 update from all 5 neighbors. That means that if one of 5 routers does not send back the acknowledgement for Seq=25 update our router will not continue sending multicast update Seq=26 to anybody and he will lose the neighbors after hold timer expires.

GNS3 topology for INE Workbook

Now that my topology in GNS3 is exactly as in INE Workbook 1 I can share it with you if you don’t want to do all the basic configurations and connections by yourself.

After spending too much money on different rack rentals in the past few months I decided that I will definitely need to try to use GNS3 for simulating my CCIE labs. It will be the only solution if I didn’t want to spend all my money and then have no more left to pay myself trip to Cisco HQ.

GNS3 BGP topology

After one whole day of struggling with different GNS3 issues I did succeed to configure almost everything. From now I am able to use GNS3 for almost all chapters of my loved INE Workbook VOL.1 and probably VOL.2 also.

There are some things that are not available on GNS3 simulated IOS and I will try to list them below at some point. Other thing that took me some time are that the interfaces are named differently. Cisco Etherswitch Module is added to router in GNS3 order to simulate some basic switch features that is normally not available in GNS3. There is no way to use 0/0 – 0/21 port names on that Etherswitch Module. The interfaces are 1/0 – 1/15 so you cannot do nobrainer paste of config to those “switch” devices. Some serial interfaces are for example Serial 0/0 and in the workbook they are Serial 0/0/0 so this is another one. There are furthermore some other changes to witch interfaces are different devices connected but all the devices now are connected to all other devices exactly as in VOL.1 physical topology. This file down there is prepared for BGP lab chapter of INE Workbook 1. but keep in mind that it can be good for all other parts of the Workbook as the interface configuration is not changed across the Workbook 1 so you just need to modify routing to get started with other chapters.

Do the topology by yourself, you will learn more!

Administrative Distance for Static Route is 1 or 0?

There are different documents and books which are claiming that Administrative distance for static routes configured using exit interface is 1 and for the static route configured using next-hop IP address Administrative distance is 0.

R1(config)#ip route 20.0.0.0 255.255.255.0 10.10.2.1
R1(config)#ip route 20.0.0.0 255.255.255.0 fastEthernet 0/0

This is not true. Both of them are having AD value of 1. The confusion is coming from the info that directly connected interface has AD of 0, but static route outbound that interface is having the AD of 1.

IPv6 RA Router Advertisement and all the flags inside

I can say at the beginning that more and more fellows are visiting this blog. Finally networking knowledge project did succeed to get some fans from out there so I felt the need to thank you all for visiting this place. As you can see here from the blog post list I didn’t follow this movement myself these days. I actually didn’t come here for some time now. My last few weeks were very intense. One of the reasons was my learning sessions that took me at least few hour a day and the most interesting reason was my new assignment at work. I got an assignment to carry out and even more interesting to secure IPv6 in our company for a whole network segment. At least one segment for now, but it was a nice thing to get me into IPv6 deep dive learning. And I make the last step of the learning like this:

What is better than document the networking job that you did until is fresh in your head. So I write it down for the future implementations but rather than put it into my notepad I do it here on my blog, so next time is easier to search for it and something even better than that, you can use it too.

RA - router advertisement message format from RFC 4861

RA – router advertisement message format from RFC 4861

This time I will write about some of the most important things in IPv6 networking that you needed to know before you go on and carry out IPv6 implementation. RA router advertisements and some strange special bits in the RA packet header that are configuration option flags. Good thing is that there are only a few of them, four to be precise. The bad thing is that at first, I needed a couple of days to stop mixing them up.

What is static floating route

Static floating route is static route like any other but with added administrative distance in the configuration

R1(config)#ip route 172.16.10.0 255.255.255.0 10.10.10.2 200

static floating routeStatic Floating Routes are very interesting so I decided to give you a short description and an example.

A static floating route is the same as normal static route except that this kind of static route has administrative distance configured to some value higher than 1.

Remember that if we configure normal static route like this:

R1(config)#ip route 172.16.10.0 255.255.255.0 10.10.10.2

It will send all packets destined for 172.16.10.0/24 network to the neighbour with interface address 10.10.10.2

Of course, this static route will have administrative distance (AD) of 1 by default.

If we make the configuration like this:

R1(config)#ip route 172.16.10.0 255.255.255.0 Serial 0/0

In this case, the AD will be zero (0). Pretty cool right? There’s another article about that here.

In either case, this is normal because this is the way we configure routing on our router or if we use a dynamic routing protocol, this is then the way of overriding routing protocol decisions for some exceptions.

But what if we want to use a static route to make something completely opposite?

If we want to use static route only to be a backup route. Then we will need to give the precedence to the path learned by some IGP (Interior Gateway Protocol) like OSPF for example. We know that most paths (routes) learned by OSPF protocol have Administrative Distance of 110. In that case, the Administrative distance of a static route needs to be bigger than 110 if we don’t want to kick out the OSPF route from routing table.