4. EIGRP – the Enhanced Interior Gateway Routing Protocol
You’ll learn about the characteristics of EIGRP, and we’ll do a basic configuration as well. So EIGRP stands for the Enhanced Interior Gateway Routing Protocol. Its predecessor was iGRP, but that’s a really old legacy protocol. It’s not used anymore. EIGRP is great protocol, sports large networks. It has a very fast convergence time, way quicker than Rip that you saw in the last section. It supports bounded updates where network topology change updates are only sent to routers affected by the change. So it’s more efficient. It doesn’t flood information everywhere when it doesn’t need to. Ad messages are sent using multicast rather than broadcast, so they’ll only be processed by other EIGRP routers, again, making it more efficient. EIGRP will automatically perform equal cost load balancing on up to four paths by default. You can manually increase that up to 16 paths so that it can load balance over if you want to. So it will do equal cost load balancing by default.
EIGRP is also the only routing protocol that can also do unequal cost load balancing. So all of the other routing protocols, if there’s multiple paths that have got the same metric, then they can load balance over those equal cost paths. But EIGRP, it can have multiple paths with unequal metrics, and you can configure it to load balance over those different paths. It won’t do it automatically, so you’re going to have to manually configure it if you want to do that. Okay, so looking at the EIGRP configuration to enable it, we say router EIGRP and then an as number at global config. The as is the autonomous system number, meaning an independent administrative domain. EIGRP routers need to have the same as number to peer with each other.
So you could have, say, two different organizations that have gone extranet with each other, so they’re connected and they’re both using EIGRP internally. In that case, they would use two different as numbers. So organization A would have its as number and it would have its internal routes. Organization B would have a different as number and it would have its own internal routes. And EIGRP between the two organizations, even though it’s physically connected, would not peer. They wouldn’t be sharing information with each other. So after you have enabled EIGRP globally with router EIGRP and the as number, the next command to put in is the network command. This specifies which interfaces are going to participate in EIGRP.
The network mask uses a wild card mask, which is the inverse of a subnet mask, to figure out what the wild card mask should be, subtract each octet in the subnet mask from two five five to calculate that wild card mask. For example, a subnet mask of 255255 would equal a wild card mask of 0025-5255, the inverse. And if you had a subnet mask of 2552-552-5252, this one’s not so obvious. That would equal a wild card mask of zero zero three, because two five five minus two five five is 0255 minus two five two is three. So that’s how you figure out what the Weld card mask would be if you don’t enter a Weld card mask.
For example, if you put a network ten o without the Weld card mask, the command defaults to using the class full boundary. So that would be 0252-5255, the Weld card mask for a class A address, 00:25 25 for class B and 00:25 for a class C address. That’s just the inverse of the standard subnet mask for our different class full networks. Okay, this is important because it can be confusing about what the network command means. So this is the definition. If you say network ten o then a wildcard mask 025-5255. What it means is look for interfaces with an IP address which falls within that range. So any interface in this example that has got an IP address that begins with 100 and then anything after that would be a match when we do have a match on an interface and it can be multiple interfaces with one network command.
Enable EIGRP on those interfaces, meaning send out and listen for EIGRP, hello messages and peer with any adjacent EIGRP routers on the same link. Then once the EIGRP peer has been set up, advertise the network and mask which is configured on those interfaces. Okay, so let’s work through a few examples to really explain this. Here we’ve said network ten o and on our router R one, we’ve got three interfaces there. Fast Ethernet has got IP address ten 124, fast 10 is 100 124 and fast 20 is 1002 124. So you see that all of the interfaces there have got an IP address that begins with ten. So when in EIGRP we configure network ten o, that’s a class A address which will use a wild card mask of 2525-5255. So it’s looking for any interface that begins with ten which will match all three of our interfaces.
EIGRP will be enabled in all the interfaces and the router will peer with any adjacent EIGRP routers that are connected to those same links. The networks that will be advertised are what is configured on the interface. So that is ten one o, 24 on fast one o, 24 on fast 10 and 100 two on fast 20. 1008 is not advertised. Okay? So even though that was what we configured in network statement, so the network statement is ten o and it’s eight, we’re just looking for interfaces that fall within that range. But when we find them, we advertise the network that is configured on the interface which is all 24s here, we do not advertise 1008. Moving on to another example here we are going to specify the wild card mask.
So looking at our router, fast Ethernet has now got IP address ten dot, one dot o dot 124, fast 10 is 1001 124 and fast 20 is 1002 124. And under the ergrp config we say network ten 002-5255. So that means look for any interfaces that begin with 100 and then it can be anything after that. So that matches interface fast 10 and 20 but fast ethernet zero does not match because it starts with ten one, not 100. So here the networks that would be advertised. Again, it’s the network that is configured on the interfaces that matched. So that’s ten dot o, dot one, dot o 24 and ten dot o dot two dot o 24, ten dot one dot o o do 24 and fast zero did not match so it’s not advertised and that interface is not going to be sending out and listening for EIGRP hello messages.
Also the network statement here was a 16 but we do not advertise ten o 16 because that is not configured on any of the interfaces. If we did want to advertise 1016, we could do that with a summary address. You’ll see how you do that later on but it’s not going to do it automatically. Some more examples just to drive it home again. So here on router R one we’ve got the same networks again ten 110 one and ten two one. If we said network 100 they all begin with ten so it would match all of them, EHRP, would be enabled on all interfaces and we would advertise the slash 24 as configured on the interface. Another way that we could get the exact same result is we could say network ten dot one dot o dot o dot o dot o dot two five five that would match the ten one dot or network network 1001 o order or 25 would match 100 one and network ten five five would match ten or two.
If we wanted to just advertise ten dot o dot two we could use the third network statement there network ten dot two dot o dot o dot o dot two five five and that would only match interface fastneethonet 20, it wouldn’t match zero, zero or 10. Okay? And one more very similar. Just showing another way that we can do it again. We’ve got network ten dot o dot o dot o. Another way we could do this is network ten dot one dot o dot one o dot o dot o dot o. That means we’re matching an interface with exactly ten dot one, dot o dot one because we’re using a 32 on the wild card mask network 100, 1132 and network ten two one also o another 32. Again, the networks that will be advertised are 24 because that’s what’s configured on the interface, not a 32 that we used in the network command. Okay? So hopefully you’ve got the network command nailed down. Now you saw there, but there’s multiple different ways that you can get the same effect. It really doesn’t matter which one you use, they’re all valid.
The last thing I want to cover here is the router ID, EHRP, routers identify themselves to other EHRP routers using a router ID, and this is in the form of an IPV four address, the router ID will default to being the highest IP address of any loopback interfaces configured on the router. Or if there’s no loopbacks, then it will be the highest other IP address on a physical interface. Now, you don’t want the router ID to be going up and down or changing, you want it to be stable because this is how the router identifies itself to other EIGRP routers. So it’s recommended to either use the loopback interface or another way that you can do it is to manually specify a router ID.
If you do either of those, then you know that the IP address or the router ID is definitely never going to change. So here’s an example where we have not configured a loop back. I’m on example router R one. Here I just show IP interface brief, and I can see that I’ve got no loopbacks on there. The highest physical address is ten dot o dot three dot one on interface fast 30. To view what the router ID is, we can do a show IP protocols. So in the output of that command, I can see that my router ID is 100 three one. If I did have a loop back, then even if the loop back interface is lower than the IP address on a physical interface, it will be the router ID.
So I’ve done a show IP interface brief here, and you can see I’ve got a loop back zero with IP address one one. And when I do a show IP protocols, I can see that that is the router ID. Now, if you’ve got a router which doesn’t have any loopback addresses on there, just physical IP addresses, and you’ve already configured EIGRP, if you then go and add a loop back on there, it’s not going to immediately become the EIGRP router ID. It needs the EIGRP process to be restarted before it will pick up the new IP address. So you could disable and then re enable EIGRP, or you could reboot the router that will force it to come up with that lootback address as a router ID.
If you want to manually specify the router ID, the command is under the EIGRP process EIGRP router ID. And then the router ID that you want to use that has to be in the format of an IPV four address. Now, the router doesn’t need to actually have that IP address configured on the router because this isn’t actually an IP address, it’s just a router ID. But it uses the format of an IP address. So in the example here, we’ve said EIGRP router ID two two. That IP address is not actually configured on the router. However, real world best practice is to use an IP address that has been configured on router because it gets confusing otherwise. Okay, so that’s how we configure EIGRP next up in the next lecture, we’ll have a look at how we verify.
5. EIGRP Lab Demo
In this lecture will configure EIGRP in a lab demo, and you’ll also learn the verification commands. So let’s look at those now. First one is if we do a normal show run, then if it’s a production router, you can have a lot of commands on there, and you can end up having to scroll through a lot of commands to get to the section that you want to see. So if you want to view the information about a routing protocol, there’s a useful shortcut that we can take. We can say Show run, and then a space, and then a pipe, and then a space, and then section EIGRP, and it will just show us the EIGRP commands. Another reason this is useful is you might have some commands configured under the router EIGRP configuration, other commands configured at the interface level.
When you do section EIGRP, it will show you all of the EIGRP commands, whether they’re done under the EIGRP config or under the interface. So you see, we’ve put the command in here and we can see the output is just basic router EIGRP 100 and network ten o next command to view all of the dynamic routing protocols that are running on a router, we can use Show IP protocols. Here we see that the routing protocol is EIGRP 100. You can see other information in there as well, like which networks is routing for the timers, et cetera. Show iPerp interfaces will show you which interfaces EIGRP is enabled on, and also traffic statistics for EIGRP as well.
And the next one, Show IP EIGRP neighbors. This is usually the first command that I’ll enter after I’ve configured EIGRP. So as soon as you’ve configured EIGRP on both sides of the link on at least two routers, do a Show IP EIGRP neighbors and check the EIGRP has come up. You can see here that we have got one neighbor on this router, which is at 100 one reachable interface, fast Ethernet. Usually the next command I’ll do after a Show IP EIGRP neighbors to check that the neighbors are up is a Show IP route and check that the EIGRP routes have made it into the routing table.
The prefix in the routing table for an EIGRP route is a D. So anything you see a route with a D, it was learned via EIGRP. In the example here, I can see, I’ve learned two routes from EIGRP. They’ve both got the default EIGRP administrative distance, which is 90, and the next number I can see after that is the metric which router they were learned from in the next hop and what is the exit interface. Okay, so that’s our EIGRP verification commands. Let’s go and configure this in the lab now and verify the EIGRP is up and running. So with my lab topology, I’ve got my five routers R one, two, R five, and all of the interfaces are in the ten network. So let’s go onto the lab. What I’ll do is because again, we’re all going to have the exact same config. I’m going to save myself some time and I’m going to type it in notepad first and then I can just copy and paste. So I’ll say router EIGRP. Let’s give this an S number of 100, and all of the interfaces begin with a ten for our IP address. So I’ll just say network ten o. I could say network ten 025-525-5255. That would have exactly the same effect because that’s what the default wildcard mask is anyway. So I’ll just leave it at network ten o, and because I’m just at the enable prompt and all the routers, I also put in a config t to save me typing that and a return at the end. Okay? So I will copy that and paste it into all of my routers.
So there was R one, R two, R three, R four, and finally R five. Now EIGRP converges very quickly, so actually you can see it in the output there, but the neighbors have come up, so that’s usually the first command I’ll enter after I’ve configured EIGRP is a Show IP EIGRP neighbors. This is on R five, and it’s directly adjacent. Let’s just have a look at the topology diagram again. So R five is this one here at the bottom. It’s adjacent to R one at ten three one and R four at ten one three one. So I expect to see two neighbor statements there. So let’s check it. And yes, there are the two routers, so that all looks good. And if I do a Show IP route, I can see that I have got my EIGRP routes in the routing table. Other commands I can use are show IP protocols. We’ll check what all routing protocols I’ve got running on here. I can see the networks that I’m routing for.
I can also see the sources, which gives me neighbor information as well. Also other information like the metric calculation, et cetera. We’ll talk about the metric later on. So that was on R five. I’ll jump onto R three, it’s about in the middle, and just check that it’s got the EIGRP routes as well. And that all looks good. Another verification command we can use is Show IP EIGRP Interface, and that will show you which interfaces EIGRP is running on. If you were a bit confused about the meaning of the network statement you wanted to double check, show IP EIGRP interface would help you out. Okay, so that’s how we configure and verify EIGRP.