The IGP's job is to advertise what it knows to all of it's neighbors. If there are multiple paths to a destination, it will pick the best of those available, and pick alternates in case of a path failure. The IGP ensures communication resiliency as long as there are redundant paths.
Quick network overview
We're going to make sure each router has a single IP address on a "loopback" interface. Loopbacks give you a management interface on the router that is not dependant upon any given interconnection link's state. As long as the IGP is running properly, every router will know how to get to every other router via their loopback regardless of what path is in use.
Our infrastructure addressing is going to include the networks that interconnect the routers, and the loopback addresses on each router:
J-Inet's IGP Map. Click on it for more detail. |
IGP by psuedo-code
No matter the platform, we have a few things we need to do to ensure our goal. Those steps come down to:
- setup loopback interface address
- set global IGP parameters
- get IGP to adopt the loopback
- for each infrastructure link (one or more)
- setup interface address
- get IGP to adopt the interface
Pretty simple, really. We're going to use OSPF in this example. I'll assume a passing familiarity with OSPF, and just point out that we will only be using Area 0. There's no reason to do things in a fashion more complicated than a single area. (If that doesn't make sense, find some background material on OSPF, and come back.)
Also, we're going to pretend these routers run something that looks a lot like Cisco IOS from a syntax standpoint. Take a look at a config for routers R1 and R2:
Also, we're going to pretend these routers run something that looks a lot like Cisco IOS from a syntax standpoint. Take a look at a config for routers R1 and R2:
! Router R1
!
! global IGP parameters
router ospf 1
router-id 192.168.92.1
! setup loopback, and add to IGP
interface Loopback20
ip address 192.168.92.1 255.255.255.255
ip ospf 1 area 0
! setup infrastructure link, and add to IGP
interface ether 1
description Link to R2
ip address 192.168.92.129 255.255.255.252
ip ospf 1 area 0
! setup infrastructure link, and add to IGP
interface ether 2
description Link to R3
ip address 192.168.92.137 255.255.255.252
ip ospf 1 area 0
! Router R2
!
! global IGP parameters
router ospf 1
router-id 192.168.92.2
! setup loopback, and add to IGP
interface Loopback20
ip address 192.168.92.2 255.255.255.255
ip ospf 1 area 0
! setup infrastructure link, and add to IGP
interface ether 1
description Link to R1
ip address 192.168.92.130 255.255.255.252
ip ospf 1 area 0
! setup infrastructure link, and add to IGP
interface ether 2
description Link to R3
ip address 192.168.92.149 255.255.255.252
ip ospf 1 area 0
! setup infrastructure link, and add to IGP
interface ether 3
description Link to R3
ip address 192.168.92.145 255.255.255.252
ip ospf 1 area 0
I will leave the construction of configs for routers R3 and R4 to our readers.
While your setting things up on a Cisco router, you will find the following commands useful to help you track your progress:
- show ip ospf neighbor
- show ip route
- show ip route ospf
Adding Complications to the IGP setup
Most of the time, I tell people to stick to the simplest setup they can. The configs above should let you build a simple IGP to keep your network running. However, there are some things you may encounter that require a bit more thought into your setup and will force your to consult your platform's documentation. A couple of the more common issues and a method to use them are:
- password / encryption / message-digest for IGP on links
- link type (point-to-point vs. point-to-multipoint, etc.)
- changing link metrics
Consult your platform documentation, but to implement the above features, we could have added something like the following to our configs:
router ospf 1
area 0 authentication message-digest
auto-cost reference-bandwidth 10000
!
interface ether-whatever
ip ospf network point-to-point
ip ospf message-digest-key 1 md5 <some key/password>
Conclusion
All of our routers now know how to reach each other because the IGP keeps them all informed. If we add new routers, we simply need to add them into the IGP, and they will be added to the reachability information that all of the routers share.
Our eventual goal is to ensure that the customers share this type of reachability. To do that, we will use BGP to leverage the IGP information for anything else we need to reach on this network. That will be the subject of the next episode of J-Inet...
Our eventual goal is to ensure that the customers share this type of reachability. To do that, we will use BGP to leverage the IGP information for anything else we need to reach on this network. That will be the subject of the next episode of J-Inet...
No comments:
Post a Comment