Route My World!

A CCNA/CCNP Blog

Archive for May, 2008

It Hurts!

Posted by Aragoen Celtdra on 20th May 2008

I laugh whenever my 25 month old says that.

“It hurts!”

“Well where does it hurt, son?”, I ask.

“It hurts!”

Nothing is really bothering him. He does that when he needs attention. He’ll say it hurts although he hasn’t thought through his feigning attempts by failing to plan out his next move. It just hurts but he doesn’t know where.

“Got ya!” Oh the mind of a 2 year old. Gotta love him.

I hope I haven’t been neglecting him too much with all my studying. I still play with him when I come home from work, but just not as long as I used to. I’m really focused on my studying and I try to limit my distractions by keeping a schedule. Usually 6:30pm to 8:30pm is family time. But sometimes I get careless and the NBA playoffs takes precedence over my family. When 8:30 rolls along, it’s my time to study, until I get tired – usually until 11:30pm.

I love my family, and if this studying thing becomes too much for them, that’s when I need to re-shift my priorities. I just appreciate my wife’s support in all this as she understands how important it is for me personally and for my goals for our family. And to have my wife’s support is important as I’ve seen it again and again from the testimonies of others who have been in this journey that having a spouse that supports you makes all these nightly and weekly readings and labbing that much less stressing.

It Hurts!

Well, shifting gears, I am hurt too. All over my body, my muscles are aching and joints unbending. Last night it was hard for me to sit still and read because my neck/shoulder muscles were very sore. It is even worse today.

What happened? I played basketball no Sunday night.

Gone are the college days when I could play basketball for 4 straight hours and still have the energy to drive to Vegas at midnight  (a 4-hour trip from where I was, one way) with my buddies, have a $2.99 steak meal and come back home before the morning sun comes up.  

Maybe that’s just the thing. I don’t play basketball much anymore. So when I do, I am miserable the next day.

I’m hoping it gets easier in the coming weeks. Our basketball league games just started again last week and we are to play every Sunday nights for the next two or three months – depending on whether we make the palyoffs or not. I used to play with these same group of friends form Church for several years and we’ve made a pretty good run in several leagues. But I havent’ played with them for a couple of years and thought it would be good exercise for me to start playing again. It’s the only aerobic exercise I get so I jumped on the chance. But boy, am I out of shape! And even worse, our center, the guy that anchors our defense, will be out for a couple of weeks (possibly the season) so I’m relegated to the center duties. And anyone that played middle before knows that that’s where all the pushing, shoving, banging, and fighting for positions happen. Needless to say, I am beat!

Oh well! Hopefully it won’t affect my studying too much this week as I’m finding myself getting tired at night faster. It should help that I’m quite enjoying the topics on Frame Relay that I’m working on this week.

Posted in Aragoen's Musing | 1 Comment » | Print This Post

ICND2 OECG Chapter 11 Troubleshooting Lab (with Dynagen/Dynamips)

Posted by Aragoen Celtdra on 18th May 2008

A sampling of the lab setup from Wendell Odom’s ICND2 book. I used Dynagen/Dynamips for the lab. Perhaps I’ll post the Dynagen config file later.

Router R1
R1(config)#int fa1/0
R1(config-if)#no shut
R1(config-if)#ip address 10.1.1.1 255.255.255.0
R1(config-if)#int fa2/0
R1(config-if)#no shut
R1(config-if)#ip address 10.1.11.1 255.255.255.0
!
!
R1(config)#router eigrp 99
R1(config-router)#network 10.0.0.0

Router R2
R2(config)# int fa1/0
R2(config-if)#no shut
R2(config-if)#ip address 10.1.1.2 255.255.255.0
R2(config-if)#int fa2/0
R2(config-if)#ip address 10.1.22.2 255.255.255.0
!
!
R2(config)#router eigrp 99
R2(config-router)#network 10.0.0.0

Router R3
R3(config)#int fa1/0
R3(config-if)#no shut
R3(config-if)#ip address 10.1.1.3 255.255.255.0
R3(config-if)#int fa2/0
R3(config-if)#no shut
R3(config-if)#ip address 10.1.33.3 255.255.255.0
!
!
R3(config)#router eigrp 99
R3(config-router)#network 10.1.1.3 0.0.0.0
R3(config-router)#network 10.1.13.3 0.0.0.0 –> this is a deliberately mistaken configuration

Router R4
R4(config)#int fa1/0
R4(config-if)#no shut
R4(config-if)#ip address 10.1.1.4 255.255.255.0
R4(config-if)#int fa2/0
R4(config-if)#no shut
R4(config-if)#ip address 10.1.44.4 255.255.255.0
!
!
R4(config)#router eigrp 99
R4(config-router)#network 10.0.0.0
R4(config-router)#passive-interface fa1/0 –> deliberate error. Correct config is to set it on Fa2/0

SW1
No configuration necessary

================================================

After Configuring the above scenario:

  • Verify routing protocols enabled on the correct interfaces
    • show ip eigrp interfaces
  • Verify that the correct network command parameters are configured.
    • show ip protocol
  • Verify that the expected networks are being routed
    • show ip route, sh ip route eigrp
    • if working properly, each router should know 3 eigrp routes – for each of the LAN interfaces on the other 2 routers.

Notes from my personal lab experience:

  • If you configure a network 10.4.5.6 without wildcard mask, EIGRP auto-summarizes and will match all interfaces (because they all start with 10.x.x.x ip address.
    • If you configure it with a wildcard mask (for example 0.0.0.255), it will take it but will not match any interfaces
    • You can see the configuration in sh run and sh ip protocol
  • You may configure a network 10.0.0.0 (without mask) and match all interfaces (because eigrp summarizes).
    • Or you can configure a network command (with wildcard mask)for each interface you want to match individually. For example, network 10.1.33.3 0.0.0.255.
  • clear ip eigrp neighbor - lookup the what, how and why.
  • You can restart the EIGRP configuration by using no router eigrp ASN-number.

Posted in Dynamips, EIGRP, Lab | No Comments » | Print This Post

Perspective

Posted by Aragoen Celtdra on 17th May 2008

I was going through my blogroll this morning trying to catch up on any updates from some of my favorite Cisco-related blogs. It is my customary habit to read the comments left by others and click on their links if they happened to have a page of their own. I usually do this to find some interesting blogs from regular people like me, to look for inspiration or good study methods, or simply just to see where others are at in their journey.

Today I was going through one of Ethan Banks‘ older posts and happened to click on the 5th comment. The comment was from the same person who like many are also an aspiring CCIE. I started reading his posts and found that we are somewhat in a similar position. We are both young, with a wife and children. Like me he also has aspirations to be on top of the CIscoworld. We are both somewhat just starting, although he is a little bit ahead. Looking at his study notes, I couldn’t help thinking how his note-taking style is very similar to mine. Even his blog template is exactly like mine.

But other than all that I thought he was just some “other guy” out there just like everyone else. I thought I’d add his webpage to my blogrolland let him know about it. I started writing him a comment letting him know how I enjoyed his blog and how I can identify with his current journey, etc. Before I sent the comment, I realized I didn’t even know what his name was. So I started to browse around on his page and I was just floored by the last post that was written on his page.

His name was Jonathan Kintner. He was just 27 years old. He died on May 10th, 2008.

I don’t even know the guy. I just saw his blog today. But I couldn’t help but feel such sorrow for this tragedy. I guess reading his blog created a little sense of connection. Even though I didn’t know who he is, he’s still a real person with real wants, and real aspirations. He is in the same fraternity as all of us who are pursuing the same dreams.

I got into thinking as I took a long break from my studying this morning. For the past 6 months, I’ve been heavily focused on studying. I’ve been poring over lengthy notes, hundreds and hundreds of pages of reading, many hours of lab practice. To the point that my lifestyle has started to shift and evolve to something where my focus is on certification. I’ve passed on many of my son’s beckoning to play with him. I’ve missed several dinners with my wife and son because I had to meet a scheduled chapter reading. Even with that, I still felt like I haven’t allocated enough time to studying. But with tragedy such as Jonathan’s untimely passing, you are forced to look at things from a different perspective. For a moment you step out of the vacuum that you’re in as you pull yourself from being immersed by your goals. You begin to think about your life again.

I am alive. And because I am alive, I have so much power that I can wield to make other people happy. I can still dream and I can still wish. But I still have that power to make those things happen. But not to the extent of sacrificing my family for it.

I don’t know what kind of life Jonathan had. I can only hope that he left a lasting legacy in his short time as a father and a husband. And I can tell that he has a family that loved him. I’m sure he had left a lot of beautiful memories for his wife and daughters. My original intention was to add his page as a link to mine. So I can learn with him and learn from him. Little did I know that this morning, my eyes would be open just a little bit more than it was.

May his soul, through the mercy of God, rest in peace. Amen!

Posted in Aragoen's Musing, General | 1 Comment » | Print This Post

Priorities

Posted by Aragoen Celtdra on 16th May 2008

One of the major distractions for me around this time (in terms of focusing on studying) is the NBA playoffs. I’m a pretty big Laker fan so whenever they’re playing I always have to watch the game – and all the other teams for that matter. The regualr season is fine. I didn’t watch too much of it. But this is the playoffs, and I just have to watch the game when it’s on. I can’t even be distracted while watching. If my wife asks me a question, I don’t even hear her. Tonight I had my Cisco book on my lap hoping to squeeze in some light review while watching the game but I never got the chance to even read one sentence. I was so involved with the game that I was getting too emotionally attached to it. It was almost as if I was in there playing too.

Where am I getting at here? I really want to do well on my studies. I want to transfer to a new job where I can use my new found knowledge in networking. I dream about working for a major service provider or ISP and working on high end Cisco equipment, configuring and implementing, etc. I reallyh want to be good at it. I know what I need to do. In able for me to do what I have to, I need to make some sacrifices. That means I can’t just be wasting 2-3 hours at a time without being productive (productivity to me doesn’t just mean studying. It can also be precious time spent with my wife and young child).  But tonight, I spent three and half hours watching the game. When they play next time, I’ll be doing the same again.

Does that mean I don’t want this bad enough? Does the fact that I can focus all of my attention to a basketball game for 3 straight hours and I can’t even sit in front of my book for more than 30 minutes without taking an email break or a tv break mean that this journey is not for me? Am i bound for failure? I have visions of being a CCIE someday in the future but I wonder sometimes that if I can’t get myself to be atttentive, with laser focus, on my studies now, that I may not have the qualities necessary to be successful in pursuing a CCIE. 

On the flip side, before I went to work this morning, I wrote on my dry-erase board a reminder: “Today: Configure lab for Chapter 11 examples”. After watching the game feeling exhausted, I came into my room and saw the big reminder in front of me and somehow the guilt I was feeling for not having done it earlier gave me the push to finish the lab. Well, the configuration at least. And what do you know! I actually spent from 10:30pm-12:30am learning the topology, learning the configuration, and applying the configuration. I felt pretty good about that. In total I spent about 4 hours today (including this morning) labbing and reviewing.  And tomorrow, I should have more time to spend configuring routing protocols, verifying, troubleshooting, and familiarizing myself with the output of various sh commands.

Maybe I’ll be alright after all.

Posted in Aragoen's Musing | No Comments » | Print This Post

Ei-Ei-O ICND2 OECG Chapter 10 EIGRP

Posted by Aragoen Celtdra on 15th May 2008

EIGRP… I don’t know what it is, but for some reason it took me a good three days to finish a 28 page chapter on EIGRP. In contrast it took me a couple of hours to get a good idea what OSPF is all about – not to say that I can renumerate the bullet points. I’ll have to read it again, of course. There goes the plan to skim over an 80-page discussion of EIGRP from Jeff Doyle’s Routing TCP/IP, Volume 1, 2nd Ed. I just don’t have time to do it if I have to keep in line with my written study schedule. I’ll have my chance to read it later when I’m reviewing, and also when I tackle CCNP.

I don’t know, somehow I got stuck reading all about feasible distance, reported distance, successor & feasible successor, and all kinds of metric calculations and i just I couldn’t move forward. It seemd as if everytime I read them, I wonder off to some far off place and just never got a grip of the concept.

I eventually got the gist. I have to put that on the burner, let it simmer and move on to cutting some vegetables before coming back and revisiting it for reinforcement.

Here’s the skinny on EIGRP:

  • Cisco-proprietary
  • Three general steps for EIGRP to add routes to the IP routing table:
    1. Neighbor Discovery
      • through Hello messages
      • Hello messages always sent to 224.0.0.10
      • Must pass the authentication process
      • Must use the same configured AS number
      • The source IP address of a neigbors Hello must be in the same subnet
    2. Topology Exchange
      • Full topology exchange between neighbors, and partial exchange thereafter.
      • Uses Update Messages sent to 224.0.0.10 multicast if needed or to the unicast address of the neighbor.
      • Update messages uses Reliable Transport Protocol (RTP). RTP resends lost routing updates. RTP also helps avoid loops.
    3. Choosing Routes
      • chooses the lowest metric as best route to put on routing table.
  • Bandwidth and Delay  affect the calculation fo the EIGRP metric
    • metric = (( 10^7 / least-bandwidth) + cumulative-delay) x 256
    • bandwidth uses the unit of kilobits per second (e.g. 10Mbps = 10,000 kbps)
    • cumulative-delay is the sum of all the links in the route. Use units of “tens of microseconds”
    • can also use interface load and interface reliability to calculate metric.
  • Feasible Distance is the calculated metric on a router to find the best route, among several different routes, to reach a subnet. 
    • Successor – the term used to define the best route. This is what is added to the IP routing table
  • Reported Distance is the metric of a route that is reported by the next door neighbor. this value is used to determine if the route can become a feasible successor route.
    • feasible successor – basically a backup route. The book defines the feasiblility condition as: a nonsuccessor route’s Reported Distance (RD) that is less than the Feasible Distance (FD).
  • Diffusing Update Algorithm (DUAL)  is the algorithm that EIGRP uses to send queries that look for loop-free route when a route fails. 
  • Important verification commands:
    • show ip eigrp neighbors
    • show ip eigrp topology
    • show ip route
    • show ip eigrp interfaces
    • show ip protocols

Posted in CCNA Notes, EIGRP | No Comments » | Print This Post

ICND2 OECG Chapter 9: OSPF (part II)

Posted by Aragoen Celtdra on 14th May 2008

OSPF Configuration

 

Step 1 Enter OSPF configuration mode for a particular OSPF process using the global command:

 

router ospf process-id

 

Step 2 (Optional) Configure the OSPF router ID by:

 

a.      Configuring the  router subcommand:

 

router-id id-value 

 

b.      Configuring an IP address on a loopback interface

 

Step 3  Configure one or more router subcommands:

network ip-address wildcard-mask area area id

 

with any matched interfaces being added to the listed area.

 

Step 4  (Optional) Change the interface Hello and Dead intervals using interface subcommands:

 

  • ip ospf hello-interval time
  • ip ospf dead-interval time

 

Step 5  (Optional) Impact routing choices by tuning interface cost as follows:

 

a.      Configure costs directly using the interface subcommand:

 

ip ospf cost value

 

b.      Change the interface bandwidths using the interface subcommand:

 

bandwidth value

 

c.       Change the numerator in the formula to calculate the cost based on the interface bandwidth using the router subcommand:

 

Auto-cost reference-bandwidth value

 

Step 6  (Optional) Configure OSPF authentication:

           

a.      On a per-interface basis using the interface subcommand:

 

ip ospf authentication

 

b.      For all interfaces in an area using the router subcommand:

 

area authentication

 

 

Step 7  (Optional) Configure support for multiple equal-cost routes using the router subcommand:

         maximum-paths number

 

 

OSPF Single-Area Configuration

 

OSPF configuration is somewhat similar to RIP configuration in a single OSPF area configuration.

 

Example:

interface ethernet 0/0

ip address 10.1.1.1 255.255.255.0

interface serial 0/0

ip address 10.1.4.1 255.255.255.0

interface serial 0/1

ip address 10.1.6.1 255.255.255.0

 

!

router ospf 1

network 10.0.0.0 0.255.255.255 area 0

 

  • The router ospf 1 global command puts the user in OSPF configuration mode.
  • You may sometimes run multiple process in a single router, therefore you use a process-id to distinguish between the processes.
    • The process-id does not have to match on each router, and it can be any integer between 1 and 65,535.
  • The network command tells a router to:
    • Enable OSPF on each matched interface
    • Discover neighbors on that interface
    • Assign the interface to that area
    • Advertise the subnet connected to each interface
    • The wild-card style mask uses the style like the ones used for IP ACLs
      • The OSPF wildcard mask must have only one string of consecutive binary 1s and one string of binary 0s.
        • Example:

0.0.255.255 – good

0.255.255.0 – no good

Another Example:

 

interface ethernet 0/0

ip address 10.1.1.1 255.255.255.0

interface serial 0/0

ip address 10.1.4.1 255.255.255.0

interface serial 0/1

ip address 10.1.6.1 255.255.255.0

!

router ospf 1

network 10.1.1.1 0.0.0.0 area 0

network 10.1.4.1 0.0.0.0 area 0

network 10.1.6.1 0.0.0.0 area 0

 

 

  • The configuration also enables OSPF on every interface.
  • In this case, the IP address for each interface is matched with a different network command.
  • The wildcard mask of 0.0.0.0 means that all 32 bits must be compared, and they must match
    • so the network commands include the specific IP address of each interface, respectively
  • Many people prefer this style of configuration in production environment because it removes any ambiguity about the interfaces on which OSPF is running.

OSPF Configuration with Multiple Areas

 

  • The configuration syntax is the same as the single area configuration
  • What you need to keep in mind when configuring is what area a certain interface in a router should be placed (ex. Area 0 or Area 1)
    • Example:

network 10.1.4.1 0.0.0.0 area 1

network 10.1.6.1 0.0.0.0 area 0

 

Show ip route ospf

Lists OSPF-learned routes, as opposed to the entire IP routing table

 

          

 

Note     examine the results of show ip route and show ip route ospf commands. Pay special attention to the O designation and IA designation on each route and how they are interpreted.

 

Configuring the OSPF Router ID

 

  • OSPF-speaking routers must have a Router ID (RID) for proper operation.
  • Process for router to find RID
  •  
    1. If the router-id rid OSPF subcommand is configured, use the value.
    2. If any loopback interfaces have an IP address configured and the interface has a line and protocol status of up/up, the router picks the highest numeric IP address among the up/up loopback interfaces.
    3. the router picks the highest numeric IP address from all other working (up/up) interfaces.
  • To configure loopback interfaces:

interface loopback interface-number

 

  • a loopback interface is a virtual interface that is always “up and up” unless administratively placed in shutdown state.
  • Each router chooses its OSPF RID when OSPF is initialized.
    • Initialization happens during the initial load of IOS.
    • If OSPF comes up and later other interfaces come up that happen to have higher IP address, the OSPF RID does not change until the OSPF process is restarted.
    • OSPF can be restarted with the command:

 

clear ip ospf process

 

show ip ospf neighbor

The command to list the Router ID of the neighbor

 

show ip ospf

Lists the router’s own RID

                                   

                                   

OSPF Hello and Dead Timers

 

A mismatch on either Hello and Dead timers will cause two potential neighbors to never become neighbors

 

show ip ospf interface – Can be used to see the current settings of the timers, as well as other relevant configuration on the specific OSPF interfaces. For instance, this command lists the area number, OSPF cost, and any neighbors known on each interface.

 

 

To configure the Hello and Dead interval, us the following interface subcommands:

 

            ip ospf hello-interval value

      ip ospf dead-interval value

 

Interestingly, if the Hello interval is configured, IOS automatically reconfigures the interface’s dead interval to be 4 times the Hello interval.

 

OSPF Metrics (Cost)

 

  • To calculate, OSPF adds up the costs for each outgoing interface OSPF costs.
  • The OSPF cost for an interface can be configured, or a router can calculate cost based on the interface’s bandwidth settings.
    • The bandwidth setting on an interface can be configured with the interface subcommand:

bandwidth

 

  • On Ethernet interfaces, the bandwidth reflects the current negotiated speed:
    • 10,000 for 10Mbps
    • 100,000 for 100mbps
  • For serial interfaces, the bandwidth defaults to:
    • 1544 for 1.544Mbps, or T1 speed.

IOS chooses an interface’s cost based on the following rules:

 

1.       Explicitly set the cost, to a value between 1 and 65,535, using the interface subcommand:

 

ip ospf cost x

 

2.       IOS can calculate a value based on the generic formula Ref-BW / Int-BW, where Ref-BW is a reference bandwidth that defaults to 100Mbps, and Int-BW is the interface’s bandwidth setting.

 

3.       The reference bandwidth can be configured from its default setting of 100 (100 Mbps) using the router OSPF subcommand auto-cost reference-bandwidth ref-bw, which in turn affects the calculation of the default interface cost.

 

Note of some potentially confusing part when considering the formulas above:

 

·         The Ethernet interface bandwidth defaults to use kbps

·         The reference bandwidth defaults a Mbps value

 

For instance:

·         Ethernet interfaces uses bandwidth = 10,000 (meaning 10,000 kbps)

·         The reference bandwidth defaults to a value = 100 (meaning 100 Mbps)

 

Therefore, when we convert both to use Mbps:

 

            Ref-BW    100Mbps

                        ———-  =  ———— 

            Int-Bw        10Mbps

 

OSPF Authentication

 

  • The lack of authentication opens the network to attacks in which an attacker connects a router to the network, with the legitimate routers believing the OSPF data from the rogue router
    • As a result the attacker can easily cause a denial-of-service attack by making all routers remove the legitimate routes to all subnets, instead installing routes the forward packets to the attacking router.
  • The attacker can also perform a reconnaissance attack, learning information about the network by listening for and interpreting the OSPF messages.

 

OSPF Authentication Types

Type

Meaning

Command to Enable Authentication

When the Password is Configured With

0

None

ip ospf authentication null

—–

1

Clear Text

ip ospf authentication

ip ospf authentication-key key-value

2

MD5

ip ospf authentication message-digest

ip ospf message-digest-key key number Md5 key-vlaue

 

Posted in CCNA Notes, OSPF | No Comments » | Print This Post

ICND2 OECG Chapter 9: OSPF

Posted by Aragoen Celtdra on 14th May 2008

This is a bullet-ized summary of Wendell Odom’s chapter on OSPF.

OSPF Protocols and Operation

3 major categories:

  • Neighbors – OSPF routers first form a neighbor relationship that provides a foundation for all continuing OSPF communications.
    • OSPF neighbor table – show ip ospf neighbor 
  • Database Exchange – after routers become neighbors, they exchange the contents of their respective LSBDs.
    • OSPF LSBD – show ip ospf database 
  • Route Calculation – it uses the Dijkstra Shortest Path First (SPF) algorithm to calculate the now-best routes and add those to the IP routing table.
    • IP routing table – show ip route

OSPF Neighbors

  • Definition: another router that connects to the same data link with which the first router can add and should exchange routing information using OSPF. 
  • Purpose of OSPF neighbor relationship:
    • Neighbors check and verify basic OSPF settings before exchanging routing information – settings that must match for OSPF to work correctly.
    • Second, the ongoing process of one router knowing when the neighbor is healthy, and when the connection to a neighbor has been lost, tells the router when it must recalculate the entries in the routing table to reconverge to a new set of routes. 

OSPF Hello Process

  •  
    • Defines how neighbors can be dynamically discovered, which means that new routers can be added to a network without requiring every router to be configured.
      • The process starts with messages called OSPF Hello messages.
      • The Hellos in turn list each other router’s Router ID (RID), which serves as each router’s unique name or identifier for OSPF.
      • Finally, OSPF does several checks of the information in the Hello messages to ensure that the two routers should become neighbors.

Identifying OSPF Routers with a Router ID

  • Neighbors need a way to know which router sent a particular OSPF message
  • OSPF LSDB lists a set of Link State Advertisements (LSA), some of which describe each router in the internetwork, so the LSDB needs a unique identifier for each router.
  • OSPF router ID (RID) – 32-bit numbers written in dotted decimal, so using an IP address is a convenient way to find a default RID. It can also be manually configured.

Meeting Neighbors by Saying Hello

OSPF routers can become neighbors if they are connected to the same subnet.

To discover other OSPF- speaking routers, a router sends multicast OSPF Hello packet to each interface and hopes to receive OSPF Hello packets from other routers connected to those interfaces.

Hello messages have the following features:

  • The Hello message follows the IP packet header, with IP packet protocol type 89.
  • Hello packets are sent to multicast IP address 224.0.0.5, a multicast IP address intended for all OSPF-speaking routers.
  • OSPF routers listen for packets sent to IP multicast address 224.0.0.5, in part hoping to receive Hello packets and learn about new neighbors.
  • Hello messages include:
    • Sending router’s RID
    • Area ID
    • Hello Interval
    • Dead Interval
    • Router priority
    • The RID of the designated router
    • The RID of the backup designated router
    • And a list of neighbors that the sending router already knows about on the subnet
  • A two-way state happens when a router A receives a Hello back from another router B and it includes router A’s own RID is on it. At this point they can start exchanging LSAs

Potential Problems in Becoming a Neighbor

With OSPF, routers on the same subnet must agree about several of the parameters exchanged in the Hello; otherwise, the routers simply do not become neighbors.

The following must match before a pair of routers becomes neighbors:

  • Subnet mask used on the subnet
  • Subnet number (as derived using the subnet mask and each router’s interface IP address)
  • Hello interval (10sec)
  • Dead interval (4 x Hello Interval = 40sec)
  • OSPF area ID
  • Must pass authentication checks (if used)
  • Value of the stub area flag (beyond CCNA)

Neighbor States

show ip ospf neighbor

Most common command to list the neighbors and neighbor states.

An OSPF neighbor state is the router’s perception of how much work has been completed in the normal processes done by two neighboring routers.

 

  • Down State – in cases when a router previously knew about a neighbor, but the interface failed, the neighbor is listed as Down state.
  • Init State – a state where the neighbor transitions to when as soon as the interface comes up and the two routers can send Hellos. Init means that the neighbor relationship is being initialized.
  • Two-way State – a router changes from Init to a two-way state when two major facts are true:
    • a received Hello lists that router’s RID as having been seen,
    • and that router has checked all parameters for the neighbor and they look good.

 These two facts mean that the router is willing to communicate with this neighbor.

 

  • Full State – both routers know the exact same LSDB details and are fully adjacent.  

 

 

 

OSPF Topology Database Exchange

OSPF routers exchange the contents of their LSDBs so that both neighbors have an exact copy of the same LSDB at the end of the database exchange process—a fundamental principle of how link-state routing protocols work.

 Overview of the OSPF Database Exchange Process

Step 1     Based on the OSPF interface type, the routers may or may not collectively elect a Designated Router (DR) and Backup Designated Router (BDR).

Step 2     For each pair of routers that need to become fully adjacent, mutually exchange the contents of their respective LSDBs.

Step 3     When completed, the neighbors monitor for changes and periodically reflood LSAs while in the Full (fully adjacent) neighbor state.

Choosing a Designated Router

Several OSPF interface types (two relevant for CCNA exam):

o        Point-to-point

o        Broadcast

These types can be configured with the command:

ip ospf network type

These OSPF interface types make a general reference to the type of data-link protocol used. As you might guess from the names, the point-to-point type is intended for use on point-to-point links, and the broadcast type is for use on data links that support broadcast frames, such as LANs.

  • A DR is not required on point-to-point links and therefore should continue working to exchange topology information and become fully adjacent.
  • On broadcast data links where a DR is elected, the topology exchange process happens between the DR and every other router, but not between every pair of routers.
  • All routers learn the routing information from all the other routers through the DR
  • The DR concept prevents overloading a subnet with too much OSPF traffic when many routers are on a subnet.

Backup DR

  • The Backup DR (BDR) can take over as the DR if the primary DR fails or loses connectivity.

NOTE All non-DR and non-BDR routers attempt to become fully adjacent with both the DR and BDR.

DR Election

To elect a DR, the neighboring routers look at two fields inside the Hello packets they receive and choose the DR based on the following criteria: 
  • The router sending the Hello with the highest OSPF priority setting becomes the DR.
  • If two or more routers tie with the highest priority setting, the router sending the Hello with the highest RID wins.
  • It’s not always the case, but typically the router with the second-highest priority becomes the BDR.
  • A priority setting of 0 means that the router does not participate in the election and can never become the DR or BDR.
  • The range of priority values that allow a router to be a candidate are 1 through 255.
  • If a new, better candidate comes along after the DR and BDR have been elected, the new candidate does not preempt the existing DR and BDR.

Database Exchange

Routers don’t just send the entire database when exchanging information.

  • The routers first exchange a list of each other’s LSA (not the contents of the LSA, just a list).
  • Each compare their lists against their own LSBD and if they don’t have a copy of a certain LSA on their list, they then ask the other router to send just the missing copy. This time the other router will send the full LSA
  • When the process is complete, the OSPF uses the Full neighbor state to mean that the database exchange process has been completed.

Maintaining the LSDB While Being Fully Adjacent

  • Hellos continues to be sent every Hello interval
  • If the topology changes, the affected router will immediately send LSAs to neighbors so they can update their LSBDs
  • The router that creates each LSA refloods the LSA every 30 minutes, regardless of whether there’s a change or not
  • The router doesn’t send all routes every 30 minutes. Instead, each LSA has a timer based on when it was created and it is reflooded every 30 minutes from that point when it was created.
  • Not all routers become fully adjacent; the nonDR or nonBDR routers become neighbors but do not exchange LSAs directly.

Building the IP Routing Table

After all routers have their complete LSBD tables, they start to calculate the correct routes and fill in the routing table.

  • Each router runs the Dijkstra SPF algorithm against the OSPF topology database, choosing the best routes based on that process.
  • The OSPF topology database consists of lists of subnet numbers (called links, hence the name link-state database).
  • It also contains lists of routers, along with links (subnets) to which each router is connected.
  • Each router uses the Dijkstra SPF algorithm, as applied to the OSPF LSBD, to find the best route from that router to each subnet.
  • The algorithm finds the shortest path from that router to each subnet in the LSDB.
  • Then the router places the best route to each subnet in the IP routing table.
  • OSPF chooses the least-cost route between the router and a subnet by adding up the outgoing interfaces’ OSPF costs.

Scaling OSPF Through Hierarchical Design

  • A larger topology database requires more memory on each router.
  • Processing the larger-topology database with the SPF algorithm requires processing power that grows exponentially with the size of the topology database.
  • A single interface status change (up to down or down to up) forces every router to run SPF again!

OSPF Areas

  • OSPF areas break up large networks so that routers in one area know less topology information about the subnets in the other area – and they do not know about the routers in the other area at all.

OSPF Design Terminology

Term

Desription

Area Border Router (ABR)

An OSPF router with interfaces connected to the backbone area and to at least one other area

Autonomous System Border Router (ASBR)

An OSPF router that connects to routers that do not use OSPF for the purpose of exchanging external routes into and out of the OSPF domain.

Backbone Router

A router in one area, the backbone area

Internal Router

A router in a single non-backbone area.

Area

A set of routers and links that share the same detailed LSDB information, but not with routers in other areas, for better efficiency.

Backbone Area

A special OSPF area to which all other areas must connect. Area 0.

External Route

A route learned from outside the OSPF domain and then advertised into the OSPF domain.

Intra-area Route

A route to a subnet inside the same area as the router

Inter-area Route

A route to a subnet in an area of which the router is not a part.

Autonomous System

In OSPC, a reference to a set of routers that use OSPF

 

OSPF Area Design Advantages

  • Pages 360-361

 

 

 

 

Posted in CCNA Notes, OSPF | No Comments » | Print This Post

Dynamips/Dynagen Dynamic Duo

Posted by Aragoen Celtdra on 13th May 2008

Last night I finally got the chance to sit down and drill in to the inner workings of Dynagen/Dynamips. Setting it up wasn’t as hard as I thought it would be. Well, considering the fact that this is not really the first time I’ve touched it. I’ve actually played around with it in the past, but just not enough to be able to set up my own lab.

 

Learning it began by reading the tutorial.  It wasn’t as straight-forward for me as I’d like it to be. But with a little bit of resourcefulness (translate google.com) I was able to get a little sense out of the documentation. The screen-shots on the tutorial were also helpful in giving me a good understanding of what the text was trying to explain. Perhaps one day I’ll write up my own tutorial in a more straight-forward fashion… although it might be improbable that I will since there are so many write-ups and video tutorials on it all over the web already. Maybe I can post links instead. Yeah… that’s what I might do. =)

 

For my first exercise, I went ahead and “labbed up” one of the lab figures in Wendell Odom’s ICND2 OECG book. In particular, I’m talking about figure 10-5 on page 390 where he talks about EIGRP. It was cool to be able to replicate the results he was trying to illustrate in the examples when I had to manually re-create them. It definitely helps to solidify the knowledge and expose the deep mysteries that abound in his examples – ok, not quite as dramatic!

 

I think I’m going to enjoy the thrill and the benefits of this wonderful invention called Dynagen/Dynamips. Invented by the ancient Chinese monks in 300 B.C. it has revolutionized the way IOS simulation is done. I would go as far as to say that it helped pave the way to the Chinese invention of the “noodle”. Ok, I’m just kidding. It was the Italians that invented the “noodle”. Or was it? We may never know…

Posted in Dynamips | No Comments » | Print This Post

Who’s got the Funk?

Posted by Aragoen Celtdra on 12th May 2008

I’ve been on a bit of a funk lately. I’ve almost abandoned all attempts to update my blog for almost two months. But I feel kinda guilty not updating. So I am.

I’m still studying for the CCNA and I can’t wait until I get it out of the way. I’ve just been thinking a lot lately about my approach towards this whole certification thing. I mean, yeah, it would be nice to have all those initials on my resume but ideally, I’d like those certifications to come as a validation of what I’m great at and not merely what I studied for, passed, and have forgotten. ‘naw what I mean? But for the past month I’ve been studying and getting ready for the test but I don’t feel like I’m learning enough to be able to apply them in the real world. I’m focusing so much on learning the theory that I haven’t had time to “lab up” what I learned. Seriously, my lab equipment has been sitting next to my computer untouched for a whole month and some. I’m just not getting all the hours into practicing the commands.

Don’t get me wrong. I feel like I know a whole of a lot more than I did 5 months ago. But I just don’t know enough yet to be able to put them into real world solutions. I guess I’m just really anxious to get a new job focusing more on networking technologies, specifically working on Cisco products. Working in IT for the past years has given me a lot of opportunities to broaden my knowledge of technology. But that’s just the problem – my knowledge is too broad and not deep enough. I feel like the best way to do it is to specialize – learn a specific branch of technology and really know it to the point of being an expert on it (I chose Cisco). I’m trying to break out of the “jack of all trades, master of none” mold that has become the bane of any aspiring engineer.  

Wish me luck!

 

Posted in Aragoen's Musing | No Comments » | Print This Post

 

Route My World! is Digg proof thanks to caching by WP Super Cache