<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>ardenpackeer.com</title>
	
	<link>http://ardenpackeer.com</link>
	<description>Helping You Become a Network Ninja</description>
	<lastBuildDate>Thu, 16 Jul 2009 06:23:26 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/ardenpackeer" /><feedburner:info uri="ardenpackeer" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Tutorial: BGP Route Aggregation Part 1 – Using an Advertise-Map to control aggregation</title>
		<link>http://feedproxy.google.com/~r/ardenpackeer/~3/b9lrEvZM5CU/</link>
		<comments>http://ardenpackeer.com/routing-protocols/tutorial-bgp-route-aggregation-part-1-using-an-advertise-map-to-control-aggregation/#comments</comments>
		<pubDate>Sun, 18 Jan 2009 23:56:23 +0000</pubDate>
		<dc:creator>Arden Packeer, CCIE #20716</dc:creator>
				<category><![CDATA[Routing Protocols]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[advertise-map]]></category>
		<category><![CDATA[aggregate-address]]></category>
		<category><![CDATA[as-path]]></category>
		<category><![CDATA[bgp]]></category>
<category>advertise-map</category><category>aggregate-address</category><category>as-path</category><category>bgp</category>
		<guid isPermaLink="false">http://ardenpackeer.com/?p=350</guid>
		<description><![CDATA[BGP Route Aggregation is not only an important topic to learn for the CCIE exam, its what keeps the internet routing tables manageable. The basic idea is simple, instead of BGP advertising lots of different prefixes, we can summarize individual prefixes as an aggregate. In this series of articles we will be looking at BGP Route Aggregation using various methods that you should be familiar with before attempting the CCIE lab.<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/routing-protocols/tutorial-bgp-route-aggregation-part-1-using-an-advertise-map-to-control-aggregation/">Tutorial: BGP Route Aggregation Part 1 &#8211; Using an Advertise-Map to control aggregation</a></p>
]]></description>
			<content:encoded><![CDATA[<p>BGP Route Aggregation is not only an important topic to learn for the CCIE exam, its what keeps the internet routing tables manageable. The basic idea is simple, instead of BGP advertising lots of different prefixes, we can summarize individual prefixes as an aggregate. In this series of articles we will be looking at BGP Route Aggregation using various methods that you should be familiar with before attempting the CCIE lab in case one of those evil proctors decides to limit the use of one or the other.</p>
<p>In this article we will be introducing the aggregate-address command to create route aggregates. We will be using the following topology for this tutorial:</p>
<div class="captionfull"><img title="bgp aggregation topology" src="http://ardenpackeer.com/wp-content/uploads/2008/10/bgp-aggregation-1.gif" alt="bgp aggregation topology" /></div>
<h3 class="mast">Dynagen .net Configuration File:</h3>
<pre><code>ghostios = True
sparsemem = True
model = 3640

[localhost]

    [[3640]]
        image = \Program Files\Dynamips\images\c3640-jk9o3s-mz.124-12.bin
        # On Linux / Unix use forward slashes:
        # image = /opt/7200-images/c7200-jk9o3s-mz.124-7a.image
        ram = 128

        [[router R1]]
                model = 3640
                console = 2000
                e1/0 = LAN 12

        [[router R2]]
                model = 3640
                console = 2001
                e1/0 = LAN 12
                e1/1 = LAN 23
                e1/2 = LAN 24

        [[router R3]]
                model = 3640
                console = 2002
                e1/0 = LAN 23

        [[router R4]]
                model = 3640
                console = 2003
                e1/0 = LAN 24</code></pre>
<p><a href='http://ardenpackeer.com/wp-content/uploads/2009/01/bgp-aggregation.net'>You can download the pre-configured .net dynagen configuration file for this tutorial here.</a></p>
<h3 class="mast">Basic Configuration</h3>
<p>Let&#8217;s take a look at the basic configuration for this topology:</p>
<p><strong>R1</strong></p>
<pre><code>hostname R1
!
interface Loopback0
 ip address 10.0.0.1 255.255.255.0
!
interface Loopback1
 ip address 10.0.1.1 255.255.255.0
!
interface Ethernet1/0
 ip address 192.168.12.1 255.255.255.0
 full-duplex
 no shut
!
router bgp 1
 no synchronization
 bgp router-id 1.1.1.1
 network 10.0.0.0 mask 255.255.255.0
 network 10.0.1.0 mask 255.255.255.0
 neighbor 192.168.12.2 remote-as 2
 no auto-summary</code></pre>
<p><strong>R2</strong></p>
<pre><code>hostname R2
!
interface Ethernet1/0
 ip address 192.168.12.2 255.255.255.0
 full-duplex
 no shut
!
interface Ethernet1/1
 ip address 192.168.23.2 255.255.255.0
 full-duplex
 no shut
!
interface Ethernet1/2
 ip address 192.168.24.2 255.255.255.0
 full-duplex
 no shut
!
router bgp 2
 no synchronization
 bgp router-id 2.2.2.2
 neighbor 192.168.12.1 remote-as 1
 neighbor 192.168.23.3 remote-as 3
 neighbor 192.168.24.4 remote-as 4
 no auto-summary</code></pre>
<p><strong>R3</strong></p>
<pre><code>hostname R3
!
interface Loopback0
 ip address 10.0.2.1 255.255.255.0
!
interface Loopback1
 ip address 10.0.3.1 255.255.255.0
!
interface Ethernet1/0
 ip address 192.168.23.3 255.255.255.0
 full-duplex
 no shut
!
router bgp 3
 no synchronization
 bgp router-id 3.3.3.3
 network 10.0.2.0 mask 255.255.255.0
 network 10.0.3.0 mask 255.255.255.0
 neighbor 192.168.23.2 remote-as 2
 no auto-summary</code></pre>
<p><strong>R4</strong></p>
<pre><code>hostname R4
!
interface Ethernet1/0
 ip address 192.168.24.4 255.255.255.0
 full-duplex
 no shut
!
router bgp 4
 no synchronization
 bgp router-id 4.4.4.4
 bgp log-neighbor-changes
 neighbor 192.168.24.2 remote-as 2
 no auto-summary</code></pre>
<p>You can see in the configuration above we have four routers: R1, R2, R3 and R4 each in their own AS. R1 has two loopbacks defined which it is advertising into BGP. R3 also has two loopbacks defined which it is also advertising into BGP. Lets verify these advertised BGP prefixes:</p>
<pre><code>R1#sh ip bgp
BGP table version is 5, local router ID is 1.1.1.1
Status codes: s suppressed, d damped, h history, * valid, &gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      0.0.0.0                  0         32768 i
*&gt; 10.0.1.0/24      0.0.0.0                  0         32768 i
*&gt; 10.0.2.0/24      192.168.12.2                           0 2 3 i
*&gt; 10.0.3.0/24      192.168.12.2                           0 2 3 i</code></pre>
<pre><code>R2#sh ip bgp
BGP table version is 5, local router ID is 2.2.2.2
Status codes: s suppressed, d damped, h history, * valid, &gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.1.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.2.0/24      192.168.23.3             0             0 3 i
*&gt; 10.0.3.0/24      192.168.23.3             0             0 3 i</code></pre>
<pre><code>R3#sh ip bgp
BGP table version is 5, local router ID is 3.3.3.3
Status codes: s suppressed, d damped, h history, * valid, &gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.23.2                           0 2 1 i
*&gt; 10.0.1.0/24      192.168.23.2                           0 2 1 i
*&gt; 10.0.2.0/24      0.0.0.0                  0         32768 i
*&gt; 10.0.3.0/24      0.0.0.0                  0         32768 i</code></pre>
<pre><code>R4#sh ip bgp
BGP table version is 5, local router ID is 4.4.4.4
Status codes: s suppressed, d damped, h history, * valid, &gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.24.2                           0 2 1 i
*&gt; 10.0.1.0/24      192.168.24.2                           0 2 1 i
*&gt; 10.0.2.0/24      192.168.24.2                           0 2 3 i
*&gt; 10.0.3.0/24      192.168.24.2                           0 2 3 i</code></pre>
<p>You can see clearly above that the networks have been advertised into BGP. Let&#8217;s verify connectivity.</p>
<pre><code>R1#ping 10.0.2.1 source 10.0.1.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.0.2.1, timeout is 2 seconds:
Packet sent with a source address of 10.0.1.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 116/213/296 ms</code></pre>
<p>Looks like we have connectivity from the networks that R1 is advertising (10.0.0.0/24 and 10.0.1.0/24) and the networks that R3 is advertising (10.0.2.0/24 and 10.0.3.0/24). We haven&#8217;t run an IGP here as we don&#8217;t usually have an IGP running between AS&#8217;s (thats the whole purpose of BGP!). When we did the ping, we have to source the address from R1&#8217;s loopback for connectivity. If we didn&#8217;t do that the source address of the ping packet would be 192.168.12.1, which R3 does not have a route for. We can run an IGP protocol here, but it is not needed for these examples.</p>
<h3 class="mast">Basic BGP Aggregation using the aggregate-address command</h3>
<p>Lets do some aggregation! We will be using the <a href="http://www.cisco.com/en/US/docs/ios/iproute/command/reference/irp_bgp1.html#wp1011467">aggregate-address command</a> to create a summary.</p>
<pre><code>R2#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R2(config)#router bgp 2
R2(config-router)#aggregate-address 10.0.0.0 255.255.252.0</code></pre>
<p>We have created an aggregrate address on R2 here that summarizes the 10.0.0.0/24, 10.0.1.0/24, 10.0.2.0/24 and 10.0.3.0/24 networks. If you look at the four networks in binary we get:</p>
<pre><code>10.0.0.0/24 = <strong>00001010.00000000.000000</strong>00.00000000
10.0.1.0/24 = <strong>00001010.00000000.000000</strong>01.00000000
10.0.2.0/24 = <strong>00001010.00000000.000000</strong>10.00000000
10.0.3.0/24 = <strong>00001010.00000000.000000</strong>11.00000000</code></pre>
<p>The first 22 bits of these are common, hence an aggregate of 10.0.0.0/22.</p>
<p>One of the first things we need to remember is that we cannot aggregate an address unless at least one of the more specific routes we are trying to aggregate exists in the routing table already. If all the prefixes that we are summarizing in our aggregate go down, the router will remove the aggregate from the BGP table.</p>
<p>Let&#8217;s verify the aggregate:</p>
<pre><code>R2#sh ip bgp
BGP table version is 6, local router ID is 2.2.2.2
Status codes: s suppressed, d damped, h history, * valid, &gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.0.0/22      0.0.0.0                            32768 i
*&gt; 10.0.1.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.2.0/24      192.168.23.3             0             0 3 i
*&gt; 10.0.3.0/24      192.168.23.3             0             0 3 i</code></pre>
<pre><code>R2#sh ip route | b Gateway
Gateway of last resort is not set

C    192.168.12.0/24 is directly connected, Ethernet1/0
C    192.168.24.0/24 is directly connected, Ethernet1/2
     10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks
B       10.0.2.0/24 [20/0] via 192.168.23.3, 00:10:57
B       10.0.3.0/24 [20/0] via 192.168.23.3, 00:10:57
B       10.0.0.0/24 [20/0] via 192.168.12.1, 00:10:57
B       10.0.0.0/22 [200/0] via 0.0.0.0, 00:10:57, Null0
B       10.0.1.0/24 [20/0] via 192.168.12.1, 00:10:57
C    192.168.23.0/24 is directly connected, Ethernet1/1</code></pre>
<p>Looking at the routing table above we can see that we have an entry in the routing table to Null0 on R2. </p>
<h3 class="mast">Null0 &#8211; The road to nowhere</h3>
<p>Why does an aggregate create an entry to Null0? Good question lets think about this. Say we had this scenario:</p>
<p>On R3 lets say we created 4 more loopbacks that we advertise into BGP: 150.0.0.0/24, 150.0.1.0/24, 150.0.2.0/24, 150.0.3.0/24. </p>
<p><strong>R3</strong></p>
<pre><code>R3(config)#int lo10
R3(config-if)#ip add 150.0.0.1 255.255.255.0
R3(config-if)#int lo11
R3(config-if)#ip add 150.0.1.1 255.255.255.0
R3(config-if)#int lo12
R3(config-if)#ip add 150.0.2.1 255.255.255.0
R3(config-if)#int lo13
R3(config-if)#ip add 150.0.3.1 255.255.255.0
R3(config-if)#router bgp 3
R3(config-router)#network 150.0.0.0 mask 255.255.255.0
R3(config-router)#network 150.0.1.0 mask 255.255.255.0
R3(config-router)#network 150.0.2.0 mask 255.255.255.0
R3(config-router)#network 150.0.3.0 mask 255.255.255.0</code></pre>
<p><strong>R2</strong></p>
<pre><code>R2#sh ip bgp
BGP table version is 10, local router ID is 2.2.2.2
Status codes: s suppressed, d damped, h history, * valid, &gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.0.0/22      0.0.0.0                            32768 i
*&gt; 10.0.1.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.2.0/24      192.168.23.3             0             0 3 i
*&gt; 10.0.3.0/24      192.168.23.3             0             0 3 i
*&gt; 150.0.0.0/24     192.168.23.3             0             0 3 i
*&gt; 150.0.1.0/24     192.168.23.3             0             0 3 i
*&gt; 150.0.2.0/24     192.168.23.3             0             0 3 i
*&gt; 150.0.3.0/24     192.168.23.3             0             0 3 i</code></pre>
<p>R2 then aggregates this as 150.0.0.0/22 and creates a Null0 route in its routing table. </p>
<p><strong>R2</strong></p>
<pre><code>R2(config)#router bgp 2
R2(config-router)#aggregate-address 150.0.0.0  255.255.252.0 </code></pre>
<pre><code>R2#sh ip route | b Gateway
Gateway of last resort is not set

C    192.168.12.0/24 is directly connected, Ethernet1/0
C    192.168.24.0/24 is directly connected, Ethernet1/2
     10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks
B       10.0.2.0/24 [20/0] via 192.168.23.3, 00:48:15
B       10.0.3.0/24 [20/0] via 192.168.23.3, 00:48:15
B       10.0.0.0/24 [20/0] via 192.168.12.1, 00:48:15
B       10.0.0.0/22 [200/0] via 0.0.0.0, 00:30:07, Null0
B       10.0.1.0/24 [20/0] via 192.168.12.1, 00:48:15
C    192.168.23.0/24 is directly connected, Ethernet1/1
     150.0.0.0/16 is variably subnetted, 5 subnets, 2 masks
B       150.0.2.0/24 [20/0] via 192.168.23.3, 00:12:54
B       150.0.3.0/24 [20/0] via 192.168.23.3, 00:12:54
B       150.0.0.0/24 [20/0] via 192.168.23.3, 00:13:24
B       150.0.0.0/22 [200/0] via 0.0.0.0, 00:12:01, Null0
B       150.0.1.0/24 [20/0] via 192.168.23.3, 00:01:31</code></pre>
<p>This aggregate is then passed it on to R1. Lets also say that R2 has a default gateway set to R1.</p>
<p><strong>R2</strong></p>
<pre><code>R2(config)#ip route 0.0.0.0 0.0.0.0 192.168.12.1</code></pre>
<pre><code>R2#sh ip route | b Gateway
Gateway of last resort is 192.168.12.1 to network 0.0.0.0

C    192.168.12.0/24 is directly connected, Ethernet1/0
C    192.168.24.0/24 is directly connected, Ethernet1/2
     10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks
B       10.0.2.0/24 [20/0] via 192.168.23.3, 00:50:08
B       10.0.3.0/24 [20/0] via 192.168.23.3, 00:50:08
B       10.0.0.0/24 [20/0] via 192.168.12.1, 00:50:08
B       10.0.0.0/22 [200/0] via 0.0.0.0, 00:32:00, Null0
B       10.0.1.0/24 [20/0] via 192.168.12.1, 00:50:08
C    192.168.23.0/24 is directly connected, Ethernet1/1
     150.0.0.0/16 is variably subnetted, 5 subnets, 2 masks
B       150.0.2.0/24 [20/0] via 192.168.23.3, 00:14:46
B       150.0.3.0/24 [20/0] via 192.168.23.3, 00:14:46
B       150.0.0.0/24 [20/0] via 192.168.23.3, 00:15:17
B       150.0.0.0/22 [200/0] via 0.0.0.0, 00:13:53, Null0
B       150.0.1.0/24 [20/0] via 192.168.23.3, 00:03:24
S*   0.0.0.0/0 [1/0] via 192.168.12.1</code></pre>
<p>What would happen if the network 150.0.1.0/24 went down on R3 and we didn&#8217;t have that Null0 route on R2?<br />
<strong>R3</strong></p>
<pre><code>R3(config)#int lo11
R3(config-if)#shut</code></pre>
<p><strong>R2</strong></p>
<pre><code>R2#sh ip bgp
BGP table version is 14, local router ID is 2.2.2.2
Status codes: s suppressed, d damped, h history, * valid, &gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.0.0/22      0.0.0.0                            32768 i
*&gt; 10.0.1.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.2.0/24      192.168.23.3             0             0 3 i
*&gt; 10.0.3.0/24      192.168.23.3             0             0 3 i
*&gt; 150.0.0.0/24     192.168.23.3             0             0 3 i
*&gt; 150.0.0.0/22     0.0.0.0                            32768 i
*&gt; 150.0.2.0/24     192.168.23.3             0             0 3 i
*&gt; 150.0.3.0/24     192.168.23.3             0             0 3 i</code></pre>
<pre><code>R2#sh ip route | b Gateway
Gateway of last resort is 192.168.12.1 to network 0.0.0.0

C    192.168.12.0/24 is directly connected, Ethernet1/0
C    192.168.24.0/24 is directly connected, Ethernet1/2
     10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks
B       10.0.2.0/24 [20/0] via 192.168.23.3, 00:51:18
B       10.0.3.0/24 [20/0] via 192.168.23.3, 00:51:18
B       10.0.0.0/24 [20/0] via 192.168.12.1, 00:51:18
B       10.0.0.0/22 [200/0] via 0.0.0.0, 00:33:10, Null0
B       10.0.1.0/24 [20/0] via 192.168.12.1, 00:51:18
C    192.168.23.0/24 is directly connected, Ethernet1/1
     150.0.0.0/16 is variably subnetted, 4 subnets, 2 masks
B       150.0.2.0/24 [20/0] via 192.168.23.3, 00:15:57
B       150.0.3.0/24 [20/0] via 192.168.23.3, 00:15:57
B       150.0.0.0/24 [20/0] via 192.168.23.3, 00:16:27
S*   0.0.0.0/0 [1/0] via 192.168.12.1</code></pre>
<p>Well R1 pings 150.0.1.1, the Aggregate will be matched on R1&#8217;s routing table. It will be received on R2. The route for 150.0.1.0/24 is missing. Remember there is no Null0 route here, so what will R2 match? The default gateway! So it will send it back to R1. R1 will then send to R2. Ladies and Gentleman we have a routing loop! This is one of the reasons we create a Null0 route on R2 when an aggregate is generated.</p>
<p>Let&#8217;s clean up and get back to our aggregate for 10.0.0.0/22 on R2 and take a look at the atomic-aggregate attribute.</p>
<p><strong>R3</strong></p>
<pre><code>R3(config)#no int lo10
R3(config)#no int lo11

R3(config)#no int lo12
R3(config)#no int lo13
R3(config)#router bgp 3
R3(config-router)#no network 150.0.0.0 mask 255.255.255.0
R3(config-router)#no network 150.0.1.0 mask 255.255.255.0
R3(config-router)#no network 150.0.2.0 mask 255.255.255.0
R3(config-router)#no network 150.0.3.0 mask 255.255.255.0</code></pre>
<p><strong>R2</strong></p>
<pre><code>R2(config)#router bgp 2
R2(config-router)#no aggregate-address 150.0.0.0 255.255.252.0</code></pre>
<h3 class="mast">Atomic-Aggregate</h3>
<p>I gotta admit, Atomic-Aggregate sounds kinda cool. Like an Aggregate with superpowers or something :). But what the hell is it and what does it have to do with BGP aggregation? Take a look at the output below:</p>
<pre><code>R2#sh ip bgp 10.0.0.0/22
BGP routing table entry for 10.0.0.0/22, version 6
Paths: (1 available, best #1, table Default-IP-Routing-Table)
  Advertised to update-groups:
     1
  Local, (aggregated by 2 2.2.2.2)
    0.0.0.0 from 0.0.0.0 (2.2.2.2)
      Origin IGP, localpref 100, weight 32768, valid, aggregated, local, <strong>atomic-aggregate</strong>, best</code></pre>
<p>You can see above that R2 has now originated an entry in BGP for the 10.0.0.0/22 aggregate. You can see also that the aggregate has the atomic-aggregate attribute set. What this means is that the AS path information about the aggregate has been lost. What do I mean by that?</p>
<p>Lets take a look at the BGP tables on R1.</p>
<pre><code>R1#sh ip bgp
BGP table version is 18, local router ID is 1.1.1.1
Status codes: s suppressed, d damped, h history, * valid, &gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      0.0.0.0                  0         32768 i
*&gt; 10.0.0.0/22      192.168.12.2             0             0 2 i
*&gt; 10.0.1.0/24      0.0.0.0                  0         32768 i
*&gt; 10.0.2.0/24      192.168.12.2                           0 2 3 i
*&gt; 10.0.3.0/24      192.168.12.2                           0 2 3 i</code></pre>
<p>Look at the output above we can see that the path information for the 10.0.0.0/22 prefix only contains AS 2!</p>
<pre><code>R1#sh ip bgp 10.0.0.0/22
BGP routing table entry for 10.0.0.0/22, version 6
Paths: (1 available, best #1, table Default-IP-Routing-Table)
  Not advertised to any peer
  2, (aggregated by 2 2.2.2.2)
    192.168.12.2 from 192.168.12.2 (2.2.2.2)
      Origin IGP, metric 0, localpref 100, valid, external, atomic-aggregate, best</code></pre>
<p>You can see that R1 thinks the 10.0.0.0/22 network originated in AS 2. The networks in that aggregate however originated in AS 1, and AS 3. By aggregating on R2 we have lost that information. So all an atomic-aggregate attribute on an aggregate route says is &#8220;I&#8217;ve lost all the as-path information for the routes that I am aggregating&#8221;.</p>
<div class="captionfull"><img title="bgp aggregation atomic aggregate" src="http://ardenpackeer.com/wp-content/uploads/2008/10/bgp-aggregation-2.gif" alt="bgp aggregation atomic aggregate" /></div>
<p>Lets look a bit closer at the BGP table on R2:</p>
<pre><code>R2#sh ip bgp
BGP table version is 6, local router ID is 2.2.2.2
Status codes: s suppressed, d damped, h history, * valid, &amp;gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.0.0/22      0.0.0.0                            32768 i
*&gt; 10.0.1.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.2.0/24      192.168.23.3             0             0 3 i
*&gt; 10.0.3.0/24      192.168.23.3             0             0 3 i</code></pre>
<p>You can see there that the 10.0.0.0/22 route has lost the as-path information. The atomic-aggregate attribute has been set so we don&#8217;t see the complete as-path for the prefixes contained within that aggregate.</p>
<p>This situation can also be seen on R3 and R4:</p>
<pre><code>R3#sh ip bgp
BGP table version is 6, local router ID is 3.3.3.3
Status codes: s suppressed, d damped, h history, * valid, &amp;gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.23.2                           0 2 1 i
*&gt; 10.0.0.0/22      192.168.23.2             0             0 2 i
*&gt; 10.0.1.0/24      192.168.23.2                           0 2 1 i
*&gt; 10.0.2.0/24      0.0.0.0                  0         32768 i
*&gt; 10.0.3.0/24      0.0.0.0                  0         32768 i</code></pre>
<pre><code>R4#sh ip bgp
BGP table version is 6, local router ID is 4.4.4.4
Status codes: s suppressed, d damped, h history, * valid, &amp;gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.24.2                           0 2 1 i
*&gt; 10.0.0.0/22      192.168.24.2             0             0 2 i
*&gt; 10.0.1.0/24      192.168.24.2                           0 2 1 i
*&gt; 10.0.2.0/24      192.168.24.2                           0 2 3 i
*&gt; 10.0.3.0/24      192.168.24.2                           0 2 3 i</code></pre>
<p>How can we retain the as-path information?</p>
<h3 class="mast">Using the as-set keyword</h3>
<p>The as-path paramter for the aggregate-address command allows us to create an BGP aggregate without setting the atomic-aggregate attribute. This allows us to see the as-path of the routes we are aggregating.</p>
<p>Let&#8217;s take a look at the configuration:</p>
<pre><code>R2#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R2(config)#router bgp 2
R2(config-router)#aggregate-address 10.0.0.0 255.255.252.0 as-set</code></pre>
<p>Simple configuration huh? Just add the as-set keyword to the aggregate-address command. Let&#8217;s verify this and take a look at the effects this has on our BGP tables.</p>
<pre><code>R2#sh ip bgp 10.0.0.0 255.255.252.0
BGP routing table entry for 10.0.0.0/22, version 7
Paths: (1 available, best #1, table Default-IP-Routing-Table)
  Advertised to update-groups:
     1
  <strong>{1,3}</strong>, (aggregated by 2 2.2.2.2)
    0.0.0.0 from 0.0.0.0 (2.2.2.2)
      Origin IGP, localpref 100, weight 32768, valid, aggregated, local, best</code></pre>
<p>You can see above we have that the route is originated on R2 but it has a {1,3} in the as-path information. This means that 10.0.0.0/22 is an aggregate of prefixes that went through AS 1 and AS 3. Also notice, that the atomic-aggregate attribute is no longer set as no AS information for the aggregate has been lost.</p>
<p>What will this do to our BGP routing tables? Lets take a look at the routing table on R1:</p>
<pre><code>R1#sh ip bgp
BGP table version is 7, local router ID is 1.1.1.1
Status codes: s suppressed, d damped, h history, * valid, &amp;gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      0.0.0.0                  0         32768 i
*&gt; 10.0.1.0/24      0.0.0.0                  0         32768 i
*&gt; 10.0.2.0/24      192.168.12.2                           0 2 3 i
*&gt; 10.0.3.0/24      192.168.12.2                           0 2 3 i</code></pre>
<p>Take a look carefully at the output above. Hey wait a minute, we don&#8217;t have the aggregate anymore. Did we stuff up our configuration? Is R2 even advertising the prefixes?</p>
<pre><code>R2#sh ip bgp neighbors 192.168.12.1 advertised-routes
BGP table version is 7, local router ID is 2.2.2.2
Status codes: s suppressed, d damped, h history, * valid, &gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.12.1             0             0 1 i
<b>*&gt; 10.0.0.0/22      0.0.0.0                       100  32768 {1,3} i</b>
*&gt; 10.0.1.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.2.0/24      192.168.23.3             0             0 3 i
*&gt; 10.0.3.0/24      192.168.23.3             0             0 3 i

Total number of prefixes 5 </code></pre>
<pre><code>R2#sh ip bgp neighbors 192.168.23.3 advertised-routes
BGP table version is 7, local router ID is 2.2.2.2
Status codes: s suppressed, d damped, h history, * valid, &gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.12.1             0             0 1 i
<b>*&gt; 10.0.0.0/22      0.0.0.0                       100  32768 {1,3} i</b>
*&gt; 10.0.1.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.2.0/24      192.168.23.3             0             0 3 i
*&gt; 10.0.3.0/24      192.168.23.3             0             0 3 i

Total number of prefixes 5 </code></pre>
<p>R2 is advertising the prefixes but R1 and R3 are not accepting them! What gives? Actually, this is expected behaviour. What the rule with BGP when a router sees its own AS number in the AS-PATH? It doesn&#8217;t accept the route!</p>
<pre><code>R2#sh ip bgp
BGP table version is 7, local router ID is 2.2.2.2
Status codes: s suppressed, d damped, h history, * valid, &amp;gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.0.0/22      0.0.0.0                       100  32768 {1,3} i
*&gt; 10.0.1.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.2.0/24      192.168.23.3             0             0 3 i
*&gt; 10.0.3.0/24      192.168.23.3             0             0 3 i</code></pre>
<p>On R2, we can clearly see that the AS path of the aggregate now contains all the AS&#8217;s of the routes that it is summarizing.</p>
<pre><code>R3#sh ip bgp
BGP table version is 7, local router ID is 3.3.3.3
Status codes: s suppressed, d damped, h history, * valid, &amp;gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.23.2                           0 2 1 i
*&gt; 10.0.1.0/24      192.168.23.2                           0 2 1 i
*&gt; 10.0.2.0/24      0.0.0.0                  0         32768 i
*&gt; 10.0.3.0/24      0.0.0.0                  0         32768 i</code></pre>
<p>R3 doesn&#8217;t accept the route because it sees its own AS 3 in the path for 10.0.0.0/22.</p>
<pre><code>R4#sh ip bgp
BGP table version is 7, local router ID is 4.4.4.4
Status codes: s suppressed, d damped, h history, * valid, &amp;gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.24.2                           0 2 1 i
*&gt; 10.0.0.0/22      192.168.24.2             0             0 2 {1,3} i
*&gt; 10.0.1.0/24      192.168.24.2                           0 2 1 i
*&gt; 10.0.2.0/24      192.168.24.2                           0 2 3 i
*&gt; 10.0.3.0/24      192.168.24.2                           0 2 3 i</code></pre>
<p>R4 however accepts the route as it does not see its own AS in the aggregate. Cool huh?</p>
<h3 class="mast">Controlling the BGP aggregrate using advertise-map</h3>
<p>Using the advertise-map option on the aggregate-address command allows us to control which routes make up the summary address. We can use this to say which prefixes make up the aggregate address.</p>
<p>Lets take a look at an example:<br />
<strong>R2</strong></p>
<pre><code>router bgp 2
 no synchronization
 bgp router-id 2.2.2.2
<b> aggregate-address 10.0.0.0 255.255.252.0 as-set advertise-map AS_3_PREFIXES</b>
 neighbor 192.168.12.1 remote-as 1
 neighbor 192.168.23.3 remote-as 3
 neighbor 192.168.24.4 remote-as 4
 no auto-summary
!
<b>access-list 1 permit 10.0.2.0 0.0.0.255
access-list 1 permit 10.0.3.0 0.0.0.255</b>
!
<b>route-map AS_3_PREFIXES permit 10
 match ip address 1</b></code></pre>
<p>We have created an access list that matches the 10.0.2.0/24, and 10.0.3.0/24 prefixes. Both of these prefixes are originated in AS 3. This access list is then associated with the route-map AS_3_PREFIXES. We call this route-map in the aggregate-address advertise-map command. </p>
<p>Notice we also have the as-set command so the atomic-aggregate will be set.</p>
<p>Lets take a look at the summary address that this creates.</p>
<pre><code>R2#sh ip bgp 10.0.0.0/22
BGP routing table entry for 10.0.0.0/22, version 8
Paths: (1 available, best #1, table Default-IP-Routing-Table)
Flag: 0x820
  Advertised to update-groups:
     1
<b>  3</b>, (aggregated by 2 2.2.2.2)
    0.0.0.0 from 0.0.0.0 (2.2.2.2)
      Origin IGP, localpref 100, weight 32768, valid, aggregated, local, <b>atomic-aggregate</b>, best</code></pre>
<p>Notice that the AS-PATH information only has AS 3 in the path list. This is because when we created the aggregate address we told the router that &#8220;this aggregate is a summary of 10.0.2.0/24 and 10.0.3.0/24&#8243;. These prefixes only originate in AS 3 so thats all that goes in the path list! Also notice that the atomic-aggregate attribute is set. This is because information for the aggregate has been lost (ie. we don&#8217;t include AS 1&#8217;s prefixes).</p>
<pre><code>R1#sh ip bgp
BGP table version is 8, local router ID is 1.1.1.1
Status codes: s suppressed, d damped, h history, * valid, &amp;gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      0.0.0.0                  0         32768 i
*&gt; 10.0.0.0/22      192.168.12.2             0             0 2 3 i
*&gt; 10.0.1.0/24      0.0.0.0                  0         32768 i
*&gt; 10.0.2.0/24      192.168.12.2                           0 2 3 i
*&gt; 10.0.3.0/24      192.168.12.2                           0 2 3 i</code></pre>
<p>You can see above that R1 now accepts this aggregate as it no longer sees its own AS in the path.</p>
<pre><code>R2#sh ip bgp
BGP table version is 8, local router ID is 2.2.2.2
Status codes: s suppressed, d damped, h history, * valid, &amp;gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.0.0/22      0.0.0.0                       100  32768 3 i
*&gt; 10.0.1.0/24      192.168.12.1             0             0 1 i
*&gt; 10.0.2.0/24      192.168.23.3             0             0 3 i
*&gt; 10.0.3.0/24      192.168.23.3             0             0 3 i</code></pre>
<pre><code>R3#sh ip bgp
BGP table version is 7, local router ID is 3.3.3.3
Status codes: s suppressed, d damped, h history, * valid, &amp;gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.23.2                           0 2 1 i
*&gt; 10.0.1.0/24      192.168.23.2                           0 2 1 i
*&gt; 10.0.2.0/24      0.0.0.0                  0         32768 i
*&gt; 10.0.3.0/24      0.0.0.0                  0         32768 i</code></pre>
<p>R3 does not accept the path. Why? Because it saw its own AS in the update.</p>
<pre><code>R4#sh ip bgp
BGP table version is 17, local router ID is 4.4.4.4
Status codes: s suppressed, d damped, h history, * valid, &amp;gt; best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*&gt; 10.0.0.0/24      192.168.24.2                           0 2 1 i
*&gt; 10.0.0.0/22      192.168.24.2             0             0 2 3 i
*&gt; 10.0.1.0/24      192.168.24.2                           0 2 1 i
*&gt; 10.0.2.0/24      192.168.24.2                           0 2 3 i
*&gt; 10.0.3.0/24      192.168.24.2                           0 2 3 i</code></pre>
<p>R4 happily accepts the update. Notice the AS path looks like it originated from AS 3.</p>
<p>Why might this stuff come in handy? Well imagine those evil CCIE proctors as you to filter BGP updates but you are not allowed to use the traditional means (filter-lists etc). This just gives you another tool that you can add to your belt! </p>
<p>In our next article we will be looking at suppress-maps and attribute-maps as well as few other cool little things with BGP aggregation. Stay tuned!</p>
<p>HTH. Now back to labs!</p>
<h3 class="mast">Summary:</h3>
<ul>
<li>BGP can summaries prefixes with the <a href="http://www.cisco.com/en/US/docs/ios/iproute/command/reference/irp_bgp1.html#wp1011467">aggregate-address command</a></li>
<li>When an aggregate is created, a Null0 route is entered into the routing table to stop routing loops.</li>
<li>By default, the aggregate will be originated from the AS creating the aggregate. All AS-PATH information about prefixes contained within the aggregate is lost.</li>
<li>When AS-PATH information is lost, the atomic-aggregate attribute is set on the aggregate.</li>
<li>We can control what prefixes make up the aggregate using the advertise-map parameter on the aggregate-address command.</li>
</ul>
<h3 class="mast">Resources:</h3>
<ul>
<li><a href='http://ardenpackeer.com/wp-content/uploads/2009/01/bgp-aggregation.net'>Dynamips/Dynagen .net configuration file</a></li>
</ul>
<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/routing-protocols/tutorial-bgp-route-aggregation-part-1-using-an-advertise-map-to-control-aggregation/">Tutorial: BGP Route Aggregation Part 1 &#8211; Using an Advertise-Map to control aggregation</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/3GYnSyHLgT7FqsP7npIDwHaHwlc/0/da"><img src="http://feedads.g.doubleclick.net/~a/3GYnSyHLgT7FqsP7npIDwHaHwlc/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/3GYnSyHLgT7FqsP7npIDwHaHwlc/1/da"><img src="http://feedads.g.doubleclick.net/~a/3GYnSyHLgT7FqsP7npIDwHaHwlc/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=b9lrEvZM5CU:1d8uUDkLvsc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=b9lrEvZM5CU:1d8uUDkLvsc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=b9lrEvZM5CU:1d8uUDkLvsc:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=b9lrEvZM5CU:1d8uUDkLvsc:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=b9lrEvZM5CU:1d8uUDkLvsc:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=b9lrEvZM5CU:1d8uUDkLvsc:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=b9lrEvZM5CU:1d8uUDkLvsc:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=b9lrEvZM5CU:1d8uUDkLvsc:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=b9lrEvZM5CU:1d8uUDkLvsc:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/ardenpackeer/~4/b9lrEvZM5CU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ardenpackeer.com/routing-protocols/tutorial-bgp-route-aggregation-part-1-using-an-advertise-map-to-control-aggregation/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		<feedburner:origLink>http://ardenpackeer.com/routing-protocols/tutorial-bgp-route-aggregation-part-1-using-an-advertise-map-to-control-aggregation/</feedburner:origLink></item>
		<item>
		<title>Study Tip: CCIE&gt;Blog – Blogging as a study tool!</title>
		<link>http://feedproxy.google.com/~r/ardenpackeer/~3/mQuqDsMAga4/</link>
		<comments>http://ardenpackeer.com/study-tips/study-tip-ccieblog-blogging-as-a-study-tool/#comments</comments>
		<pubDate>Tue, 21 Oct 2008 09:19:03 +0000</pubDate>
		<dc:creator>Arden Packeer, CCIE #20716</dc:creator>
				<category><![CDATA[CCIE Lab Study Tips]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[ipexpert]]></category>

		<guid isPermaLink="false">http://ardenpackeer.com/?p=428</guid>
		<description><![CDATA[IPexpert has just recently launched their CCIE>Blog site. The site allows you to create your own blog or add your existing blog to the CCIE blog directory. I had a browse through and there were a few jems that I hadn&#8217;t seen before! They have also released the new IPexpert Blog. So far it contains a [...]<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/study-tips/study-tip-ccieblog-blogging-as-a-study-tool/">Study Tip: CCIE>Blog &#8211; Blogging as a study tool!</a></p>
]]></description>
			<content:encoded><![CDATA[<p>IPexpert has just recently launched their <a href="http://www.ccieblog.com/">CCIE>Blog</a> site. The site allows you to create your own blog or add your existing blog to the CCIE blog directory. I had a browse through and there were a few jems that I hadn&#8217;t seen before! They have also released the new <a href="http://ipexpert.ccieblog.com/">IPexpert Blog</a>. So far it contains a bit of marketing material, but hopefully we will see some tutorials and the like from some of their instructors.</p>
<p>Some of you out there are probably thinking, why bother? Why bother creating a blog about your CCIE pursuit? Creating this blog is by far one of the best things I did in pursuing the CCIE! </p>
<p>One of the things that gets in the way of getting your CCIE is your own ego. It&#8217;s important not to fall into that trap.  You will have weaknesses. You need to acknowledge them. Don&#8217;t be afraid of them. Turn them into your strength. I made it a point, for every weakness that I had I would write a tutorial on it in my blog. This forced me to learn that topic inside and out, and in the process hopefully help someone else out. Blogging has shown me how valuable this technique is, and I definitely recommend it. It has opened doors that I never even knew existed.</p>
<p>I think its great that <a href="http://www.ipexpert.com">IPexpert</a> have decided to embrace the community this way. If you are pursuing your CCIE, I highly encourage you to <a href="http://www.ccieblog.com/">start a blog!</a> Share your trials and tribulations in your pursuit. Write down every little thing you learn. Not just for yourself, but for the community. Know that you are not alone. You&#8217;ll be amazed at how much it pays you back!</p>
<h3 class="mast">Resources:</h3>
<ul>
<li><a href="http://www.ccieblog.com">CCIE>Blog</a></li>
</ul>
<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/study-tips/study-tip-ccieblog-blogging-as-a-study-tool/">Study Tip: CCIE>Blog &#8211; Blogging as a study tool!</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/j9pFo5nDyu94-ADqe5De5QiIxRo/0/da"><img src="http://feedads.g.doubleclick.net/~a/j9pFo5nDyu94-ADqe5De5QiIxRo/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/j9pFo5nDyu94-ADqe5De5QiIxRo/1/da"><img src="http://feedads.g.doubleclick.net/~a/j9pFo5nDyu94-ADqe5De5QiIxRo/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=mQuqDsMAga4:T8xFLkuP0dA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=mQuqDsMAga4:T8xFLkuP0dA:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=mQuqDsMAga4:T8xFLkuP0dA:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=mQuqDsMAga4:T8xFLkuP0dA:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=mQuqDsMAga4:T8xFLkuP0dA:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=mQuqDsMAga4:T8xFLkuP0dA:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=mQuqDsMAga4:T8xFLkuP0dA:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=mQuqDsMAga4:T8xFLkuP0dA:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=mQuqDsMAga4:T8xFLkuP0dA:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/ardenpackeer/~4/mQuqDsMAga4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ardenpackeer.com/study-tips/study-tip-ccieblog-blogging-as-a-study-tool/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		<feedburner:origLink>http://ardenpackeer.com/study-tips/study-tip-ccieblog-blogging-as-a-study-tool/</feedburner:origLink></item>
		<item>
		<title>Blog: Cisco Announces New CCIE Learning Program…Why didn’t they Partner?</title>
		<link>http://feedproxy.google.com/~r/ardenpackeer/~3/1s9ApUN_ya0/</link>
		<comments>http://ardenpackeer.com/blog/blog-cisco-announces-new-ccie-learning-programwhy-didnt-they-partner/#comments</comments>
		<pubDate>Thu, 16 Oct 2008 00:44:21 +0000</pubDate>
		<dc:creator>Arden Packeer, CCIE #20716</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[internetwork expert]]></category>
		<category><![CDATA[ipexpert]]></category>
		<category><![CDATA[Micronics]]></category>
		<category><![CDATA[Networkworld]]></category>

		<guid isPermaLink="false">http://ardenpackeer.com/?p=375</guid>
		<description><![CDATA[Cisco has just announced a new Cisco 360 Learning Program for CCIE® Routing and Switching. CCIEPursuit has an excellent post on it, and a few of the guys on groupstudy were buzzing this morning discussing it. It got me thinking. Why didn't Cisco partner with one of the existing CCIE training providers like IPexpert, InternetworkExpert or Micronics? They certainly deliver the bulk of successful CCIE candidates. <p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/blog/blog-cisco-announces-new-ccie-learning-programwhy-didnt-they-partner/">Blog: Cisco Announces New CCIE Learning Program&#8230;Why didn&#8217;t they Partner?</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Cisco has just announced a new Cisco 360 Learning Program for CCIE® Routing and Switching. <a href="http://cciepursuit.wordpress.com/2008/10/15/more-information-about-ciscos-new-ccie-training-program/">CCIEPursuit has an excellent post on it</a>, and a few of the guys on groupstudy were buzzing this morning discussing it. It got me thinking. Why didn&#8217;t Cisco partner with one of the existing CCIE training providers like <a href="http://www.ipexpert.com">IPexpert</a>, <a href="http://www.internetworkexpert.com">InternetworkExpert</a> or <a href="http://www.micronicstraining.com/">Micronics</a>? They certainly deliver the bulk of successful CCIE candidates. </p>
<p><a href="http://www.networkworld.com/newsletters/edu/2008/101308ed1.html?page=1">NetworkWorld</a> claimed third-party boot camps designed to prepare candidates for the exam are not always up to par. Fred Weiler, Cisco marketing director claimed “There was a very diverse level of quality” in the third-party exam preparation programs. He also goes on to say that &#8220;The third-party courses often trained Cisco pros well enough to pass the exam, but not well enough to become true experts&#8221;. “It’s not to train to the test. It’s training to become an expert,” Weiller said.</p>
<p>Like CCIEPursuit, I call bullshit.  You cannot pass that exam unless you are an expert. I went through that whole process using third party training vendor material. So did a lot of existing CCIE&#8217;s. It has not only made me a better instructor, but a better engineer. Saying that the existing vendors only train you enough to pass the exam is marketing FUD.</p>
<div class="captionleft"><img src="http://ardenpackeer.com/wp-content/uploads/2008/10/clsp.gif" alt="" title="clsp logo"/></div>
<p>Cisco delivers its official course material through its Learning Partner program. Cisco structures its Learning Partner program into three tiers. At the top we have CLSP&#8217;s (Cisco Learning Solution Partners). The middle tier is where the CLP&#8217;s (Cisco Learning Partners) sit, and the bottom is where SO&#8217;s (Sponsored Organisations) sit. </p>
<p>A CLSP is allowed to deliver only Cisco authorized materials using Certified Cisco System Instructors (CCSI). Having a certain number of certified staff members is a requirement. CLSP&#8217;s are allowed to customize courses but are required to report and pay royalties on all derivative works to Cisco.</p>
<p>There are only a handfull of CLSP&#8217;s in the world and each has a specific region (or theatre) they look after. Its like a giant pyramid scheme with CLSP&#8217;s sitting at the top. CLP&#8217;s and SO&#8217;s must purchase kits (training manuals etc) from CLSP&#8217;s and get any derivative works approved. Cisco gets a cut from these derivative works.</p>
<p>What does all this have to do with the Cisco 360 CCIE Learning Program? I suspect that only the high end CLSP&#8217;s will be allowed to deliver this training. The problem for Cisco at the moment is that there are these great CCIE training companies out there who provide training and create CCIE&#8217;s, but <em>Cisco doesn&#8217;t get a cut from any of that</em>. </p>
<p>Why didn&#8217;t Cisco partner with one of the top CCIE vendors? In short, I think its because of  derivative works. If a CCIE vendor aligned themselves with a CLSP as a SO or CLP, the CCIE vendor would be able to accept Cisco learning credits. Cisco partners get Cisco Learning credits that they can redeem with a Cisco Learning Partner. If a CCIE vendor aligned themselves with a CLSP as a SO or CLP, I suspect Cisco would then demand a cut from the CCIE material. Cisco would want it to be considered a derivative work. But they didn&#8217;t have a CCIE training program for it to be &#8220;derived&#8221; from. They do now.</p>
<p>I think that IPexpert and Internetwork Expert at one stage accepted Cisco Learning Credits but I can&#8217;t find anything on their webpages on whether they still accept them. I&#8217;m thinking out loud here, but put yourselves in the shoes of IPexpert and Internetwork Expert etc. You align yourselves with a CLSP so you can take Cisco learning credits and then you have to pay Cisco royalty fees on something you created all on your own as a &#8220;derivative work&#8221;. I know I would hate that. </p>
<p>It will be interesting the see how this effects the CCIE vendors now. I think CCIEPursuit is correct in that you will have more candidates taking the Cisco courses because it has the Cisco logo attached.</p>
<p>Does that mean, that the existing CCIE vendors training material is suddenly substandard? Hell no! I have used both IPexpert, and Internetwork Expert&#8217;s training material for CCIE preparation. I have seen Narbiks training material. I honestly believe that you could use any of the CCIE training material from any of the top CCIE vendors and pass the exam. So in terms of the actual material, I think they become a commodity</p>
<p>What really matters? The Instructor. </p>
<p>At the moment, what I believe distinguishes the third-party vendors (or the so called grey training market) with the official Cisco courseware, is the person delivering the material. The instructor. The official courseware for CCNA, CCNP etc is great (I know, I deliver it every day as a CCSI working for a CLP). I have used both IPexpert, and Internetwork Expert&#8217;s training material for CCIE preparation. I have seen Narbiks training material. I honestly believe that you could use any of the CCIE training material from any of the top CCIE vendors and pass the exam. What differentiates them is the Instructors.</p>
<p>I always say people remember two things about a training course they attend: The Instructor and the food :). Im sure all of us at one time or another has been to one of <em>those</em> training courses. You know the ones. The instructor gets up and starts reading the slides word for word. Death by powerpoint. You ask him/her any questions and they retort with &#8220;I&#8217;ll get back to you&#8221;. </p>
<p>The mediocre teacher tells.  The good teacher explains.  The superior teacher demonstrates.  The great teacher inspires. </p>
<p>I want to know: who will be teaching these Cisco 360 CCIE training courses? What instructors? Are they as good as Jared, Scott, Narbik, and the Brians? Are they as <em>inspirational</em> as these guys? If all the CLSP&#8217;s are getting the same material then what makes you choose one over the other? I&#8217;m sure the material will be great. What I care about is who will be guiding me through this material?</p>
<p>Unless <a href="http://blog.ioshints.info/">Ivan</a> (who works for NIL, one of the largest CLSP) or someone of his calibre at a CLSP teaches it, I think I&#8217;ll stick to the third party vendors for my CCIE material. </p>
<h3 class="mast">Resources:</h3>
<ul>
<li><a href="http://tools.cisco.com/elearning/knet/faq/jsp/faqcontroller.jsp?action=faqList&#038;type=0:1&#038;module=FAQ&#038;appid=12555&#038;rootcatid=12555&#038;targetID=12555">Check out the Cisco Learning Partner FAQ here</a></li>
<li>CCIEPursuit&#8217;s comments on the new Cisco&#8217;s CCIE 360 Program <a href="http://cciepursuit.wordpress.com/2008/10/15/more-information-about-ciscos-new-ccie-training-program/">here</a>, and <a href="http://cciepursuit.wordpress.com/2008/10/14/cisco-to-launch-its-own-ccie-training-program/">here</a>.</li>
</ul>
<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/blog/blog-cisco-announces-new-ccie-learning-programwhy-didnt-they-partner/">Blog: Cisco Announces New CCIE Learning Program&#8230;Why didn&#8217;t they Partner?</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/4sK4BwybWdC_29-41pibo8NBg8Y/0/da"><img src="http://feedads.g.doubleclick.net/~a/4sK4BwybWdC_29-41pibo8NBg8Y/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/4sK4BwybWdC_29-41pibo8NBg8Y/1/da"><img src="http://feedads.g.doubleclick.net/~a/4sK4BwybWdC_29-41pibo8NBg8Y/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=1s9ApUN_ya0:dgDGIoO5wOw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=1s9ApUN_ya0:dgDGIoO5wOw:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=1s9ApUN_ya0:dgDGIoO5wOw:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=1s9ApUN_ya0:dgDGIoO5wOw:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=1s9ApUN_ya0:dgDGIoO5wOw:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=1s9ApUN_ya0:dgDGIoO5wOw:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=1s9ApUN_ya0:dgDGIoO5wOw:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=1s9ApUN_ya0:dgDGIoO5wOw:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=1s9ApUN_ya0:dgDGIoO5wOw:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/ardenpackeer/~4/1s9ApUN_ya0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ardenpackeer.com/blog/blog-cisco-announces-new-ccie-learning-programwhy-didnt-they-partner/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		<feedburner:origLink>http://ardenpackeer.com/blog/blog-cisco-announces-new-ccie-learning-programwhy-didnt-they-partner/</feedburner:origLink></item>
		<item>
		<title>Tutorial: Filtering Routes in OSPF Part 2 » Filtering Between Areas Using area filter-list</title>
		<link>http://feedproxy.google.com/~r/ardenpackeer/~3/bjK-BDYg3d8/</link>
		<comments>http://ardenpackeer.com/routing-protocols/tutorial-filtering-routes-in-ospf-part-2-filtering-between-areas-using-area-filter-list/#comments</comments>
		<pubDate>Sun, 10 Aug 2008 02:33:02 +0000</pubDate>
		<dc:creator>Arden Packeer, CCIE #20716</dc:creator>
				<category><![CDATA[Routing Protocols]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[area range]]></category>
		<category><![CDATA[filter-list]]></category>
		<category><![CDATA[filtering]]></category>
		<category><![CDATA[ospf]]></category>
		<category><![CDATA[prefix-list]]></category>
		<category><![CDATA[routing]]></category>
		<category><![CDATA[summary-address]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://ardenpackeer.com/?p=200</guid>
		<description><![CDATA[In our last article on filtering Routes in OSPF we looked at filtering routes within an OSPF area. In this article we will be filtering routes between areas using the area filter-list command. OSPF route filtering is an important concept to be familiar with for any CCIE candidate. We will be looking at the area filter-list command first. Part 3 will then look at some of the more obtuse ways of filtering using the area range and summary-address commands. Part of being a CCIE is knowing multiple ways of configuring the same task...just in case those evil proctors decide to restrict which of those methods you can and can't do! :)<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/routing-protocols/tutorial-filtering-routes-in-ospf-part-2-filtering-between-areas-using-area-filter-list/">Tutorial: Filtering Routes in OSPF Part 2 &raquo; Filtering Between Areas Using area filter-list</a></p>
]]></description>
			<content:encoded><![CDATA[<p>In our last article on <a href="http://ardenpackeer.com/routing-protocols/tutorial-filtering-routes-in-ospf-part-1-filtering-within-an-area/">Filtering Routes in OSPF</a> we looked at filtering routes within an OSPF area. In this article we will be filtering routes between areas using the <a href="http://www.cisco.com/en/US/docs/ios/iproute/command/reference/irp_osp1.html#wp1011184">area filter-list</a> command. OSPF route filtering is an important concept to be familiar with for any CCIE candidate. We will be looking at the area filter-list command first. Part 3 will then look at some of the more obtuse ways of filtering using the area range and summary-address commands. Part of being a CCIE is knowing multiple ways of configuring the same task&#8230;just in case those evil proctors decide to restrict which of those methods you can and can&#8217;t do! :)</p>
<p>We will be using the following topology for this tutorial:</p>
<div class="captionfull"><img src="http://ardenpackeer.com/wp-content/uploads/2008/08/ospf-filtering2.gif" alt="OSPF Filtering" title="ospf-filtering2" /></div>
<h3 class="mast">Dynagen .net Configuration File:</h3>
<pre>
<code>ghostios = True
sparsemem = True
model = 3640

[localhost]

    [[3640]]
        image = \Program Files\Dynamips\images\c3640-jk9o3s-mz.124-12.bin
        # On Linux / Unix use forward slashes:
        # image = /opt/7200-images/c7200-jk9o3s-mz.124-7a.image
        ram = 128

    [[ROUTER R1]]
        console = 2000
        e1/0 = LAN 13
        e1/1 = LAN 12
        autostart = False
        model = 3640

    [[ROUTER R2]]
        console = 2001
        e1/0 = LAN 23
        e1/1 = LAN 12
        autostart = False
        model = 3640

    [[ROUTER R3]]
        console = 2002
        e1/0 = LAN 13
        e1/1 = LAN 23
        e1/2 = LAN 34
        autostart = False
        model = 3640

    [[ROUTER R4]]
        console = 2003
        e1/0 = LAN 45
        e1/1 = LAN 46
        e1/2 = LAN 34
        autostart = False
        model = 3640

    [[ROUTER R5]]
        console = 2004
        e1/0 = LAN 45
        e1/1 = LAN 56
        autostart = False
        model = 3640

    [[ROUTER R6]]
        console = 2005
        e1/0 = LAN 46
        e1/1 = LAN 56
        autostart = False
        model = 3640</code>
</pre>
<p>You can <a href='http://ardenpackeer.com/wp-content/uploads/2008/08/ospf-filtering2.net'>download the pre-configured .net dynagen configuration file for this tutorial here.</a></p>
<h3 class="mast">Basic Configuration</h3>
<p>First things first lets set up our basic topology. In this topology R1 and R2 will be internal area 2 routers with R3 the Area Border Router (ABR) between area 2 and area 0. R5 and R6 will be internal area 1 routers with R4 the ABR between area 1 and area 0. </p>
<p>Lets take at this configuration:</p>
<p><strong>R1:</strong></p>
<pre>
<code>hostname R1
!
interface Loopback0
 ip address 1.1.1.1 255.255.255.255
!
interface Ethernet1/0
 ip address 10.2.13.1 255.255.255.0
!
interface Ethernet1/1
 ip address 10.2.12.1 255.255.255.0
!
router ospf 1
 router-id 1.1.1.1
 log-adjacency-changes
 network 1.1.1.1 0.0.0.0 area 2
 network 10.2.12.1 0.0.0.0 area 2
 network 10.2.13.1 0.0.0.0 area 2</code>
</pre>
<p><strong>R2:</strong></p>
<pre>
<code>hostname R2
!
interface Loopback0
 ip address 2.2.2.2 255.255.255.255
!
interface Ethernet1/0
 ip address 10.2.23.2 255.255.255.0
!
interface Ethernet1/1
 ip address 10.2.12.2 255.255.255.0
!
router ospf 1
 router-id 2.2.2.2
 log-adjacency-changes
 network 2.2.2.2 0.0.0.0 area 2
 network 10.2.12.2 0.0.0.0 area 2
 network 10.2.23.2 0.0.0.0 area 2</code>
</pre>
<p><strong>R3:</strong></p>
<pre>
<code>hostname R3
!
interface Loopback0
 ip address 3.3.3.3 255.255.255.255
!
interface Ethernet1/0
 ip address 10.2.13.3 255.255.255.0
!
interface Ethernet1/1
 ip address 10.2.23.3 255.255.255.0
!
interface Ethernet1/2
 ip address 10.0.34.3 255.255.255.0
!
router ospf 1
 router-id 3.3.3.3
 log-adjacency-changes
 network 3.3.3.3 0.0.0.0 area 0
 network 10.0.34.3 0.0.0.0 area 0
 network 10.2.13.3 0.0.0.0 area 2
 network 10.2.23.3 0.0.0.0 area 2</code>
</pre>
<p><strong>R4:</strong></p>
<pre>
<code>hostname R4
!
interface Loopback0
 ip address 4.4.4.4 255.255.255.255
!
interface Ethernet1/0
 ip address 10.1.45.4 255.255.255.0
!
interface Ethernet1/1
 ip address 10.1.46.4 255.255.255.0
!
interface Ethernet1/2
 ip address 10.0.34.4 255.255.255.0
!
router ospf 1
 router-id 4.4.4.4
 log-adjacency-changes
 network 4.4.4.4 0.0.0.0 area 0
 network 10.0.34.4 0.0.0.0 area 0
 network 10.1.45.4 0.0.0.0 area 1
 network 10.1.46.4 0.0.0.0 area 1</code>
</pre>
<p><strong>R5:</strong></p>
<pre>
<code>hostname R5
!
interface Loopback0
 ip address 5.5.5.5 255.255.255.255
!
interface Ethernet1/0
 ip address 10.1.45.5 255.255.255.0
!
interface Ethernet1/1
 ip address 10.1.56.5 255.255.255.0
!
router ospf 1
 router-id 5.5.5.5
 log-adjacency-changes
 network 5.5.5.5 0.0.0.0 area 1
 network 10.1.45.5 0.0.0.0 area 1
 network 10.1.56.5 0.0.0.0 area 1</code>
</pre>
<p><strong>R6:</strong></p>
<pre>
<code>hostname R6
!
interface Loopback0
 ip address 6.6.6.6 255.255.255.255
!
interface Ethernet1/0
 ip address 10.1.46.6 255.255.255.0
!
interface Ethernet1/1
 ip address 10.1.56.6 255.255.255.0
!
router ospf 1
 router-id 6.6.6.6
 log-adjacency-changes
 network 6.6.6.6 0.0.0.0 area 1
 network 10.1.46.6 0.0.0.0 area 1
 network 10.1.56.6 0.0.0.0 area 1</code>
</pre>
<p>We have added a loopback interface on each device and advertised them into OSPF. R1 and R2&#8217;s Loopback0 interfaces have been added to area 2. R3 and R4&#8217;s Loopback0 interfaces have been added to Area 0. R5 and R6&#8217;s Loopback0 interfaces have been added to Area 1.</p>
<p>Let&#8217;s verify the routing table on R5 and test connectivity before we start filtering routes. </p>
<pre>
<code>R5#sh ip route | b Gateway
Gateway of last resort is not set

     1.0.0.0/32 is subnetted, 1 subnets
O IA    1.1.1.1 [110/31] via 10.1.45.4, 00:05:51, Ethernet1/0
     2.0.0.0/32 is subnetted, 1 subnets
O IA    2.2.2.2 [110/31] via 10.1.45.4, 00:05:51, Ethernet1/0
     3.0.0.0/32 is subnetted, 1 subnets
O IA    3.3.3.3 [110/21] via 10.1.45.4, 00:05:51, Ethernet1/0
     4.0.0.0/32 is subnetted, 1 subnets
O IA    4.4.4.4 [110/11] via 10.1.45.4, 00:05:51, Ethernet1/0
     5.0.0.0/32 is subnetted, 1 subnets
C       5.5.5.5 is directly connected, Loopback0
     6.0.0.0/32 is subnetted, 1 subnets
O       6.6.6.6 [110/11] via 10.1.56.6, 00:05:51, Ethernet1/1
     10.0.0.0/24 is subnetted, 7 subnets
O IA    10.2.12.0 [110/40] via 10.1.45.4, 00:05:51, Ethernet1/0
O IA    10.2.13.0 [110/30] via 10.1.45.4, 00:05:51, Ethernet1/0
O IA    10.2.23.0 [110/30] via 10.1.45.4, 00:05:51, Ethernet1/0
O       10.1.46.0 [110/20] via 10.1.56.6, 00:05:51, Ethernet1/1
                  [110/20] via 10.1.45.4, 00:05:51, Ethernet1/0
C       10.1.45.0 is directly connected, Ethernet1/0
O IA    10.0.34.0 [110/20] via 10.1.45.4, 00:05:51, Ethernet1/0
C       10.1.56.0 is directly connected, Ethernet1/1</code>
</pre>
<p>The routing table looks correct. We have inter-area routes to R1, R2, R3 and R4&#8217;s loopback0 addresses as well as to the 10.2.12.0/24, 10.2.13.0/24, 10.2.23.0/24 and 10.0.34.0/24 networks. Exactly what we would expect.</p>
<p>Let&#8217;s verify connectivity:</p>
<pre>
<code>R5#ping 1.1.1.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 1.1.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 216/245/284 ms</code>
</pre>
<p>Looks like we have full connectivity. Awesome!</p>
<h3 class="mast">OSPF &#8211; Distance Vector or Link State?</h3>
<p>Remember back to when you were studying for your CCNA. If you took a course, the instructor probably blabbed on about the difference between Link State and Distance Vector routing protocols (I know I spend a large amount of time on this when I am teaching it!). In a nutshell, with Distance Vector routing protocols the routers cannot &#8220;see&#8221; past their neighbors. They rely on their <em>neighbors</em> to tell them everything. In turn they tell their <em>neighbors</em> everything they have learned so far.</p>
<p>With Link State routing protocols, the routers tell <em>everyone</em> (via a multicast exchange) information about itself, its links, and its neighbors (This is a massive simplification, but it will do for now). Link State Routers take this information and create a link state database. This database is identical for all routers. Based on this information each router use the Dijikstra&#8217;s shortest path algorithm to independantly calculate the shortest path.</p>
<p>Now if we had a large number of routers, this would make the size of that database massive. In &#8220;the old days&#8221; this was a problem because memory and cpu power was limited. So we break up that database into areas. This allows OSPF to scale to larger networks. The routers in an area maintain a linkstate database for their area. This database should be identical for all other routers in the same area. So there is a database for each area. </p>
<p>Each area is connected to another area via an ABR (Area Border Router). The ABR will have databases for two or more areas. This is where things get funky. The routers <em>within</em> an area inherently know how to get to other routers within the <em>same</em> area. The topology database will tell them. But how do they get to routers in another area. They cannot &#8220;see&#8221; past their own area. They rely on the ABR to tell them about routes to other areas. Hang on a sec doesn&#8217;t that sound a bit like Distance Vector?</p>
<p>In Distance Vector routing protocols, routers cannot &#8220;see&#8221; past their neighbors. They rely on there neighbors to tell them everything. This is the same as routers in <em>different</em> areas in OSPF.  Internal area routers cannot &#8220;see&#8221; past their areas! They rely on the ABR to tell them everything about other areas. OSPF is a link state protocol <em>within</em> an area. OSPF can be considered a distance vector protocol <em>between</em> areas. </p>
<p>Think about this. Because we are relying on the ABR to tell our internal routers everything outside the area, we must ensure a loop free topology <em>between</em> areas. Hence the reason why all areas must attach to Area 0. By forcing all areas to touch Area 0 in a kind of floral petal arrangement, where area 0 is the center of the flower and the other areas are the petals, we can ensure that no loops will be formed between areas!</p>
<p>An ABR will summarize routes from other areas and create an LSA (Link State Advertisements) type 3 before sending it into the area.</p>
<div class="captionfull"><img src="http://ardenpackeer.com/wp-content/uploads/2008/08/ospf-filtering3.gif" alt="OSPF Filtering - ABR Concepts" title="OSPF Filtering - ABR Concepts" /></div>
<p>You can see in the diagram above R3 will create a type 3 summary LSA&#8217;s for the networks in <em>Area 1 and Area 0</em> and send it <strong>into</strong> area 2. R3 will also create a type 3 summary LSA for the the networks in <em>area 2</em> and send it <strong>out</strong> of area 2. The direction there is important because it will come into play later when we filter these routes.</p>
<p>We can verify this on R1 by taking a look at the database:</p>
<pre>
<code>R1#sh ip ospf database

            OSPF Router with ID (1.1.1.1) (Process ID 1)

                Router Link States (Area 2)

Link ID         ADV Router      Age         Seq#       Checksum Link count
1.1.1.1         1.1.1.1         444         0x80000004 0x0094F2 3
2.2.2.2         2.2.2.2         435         0x80000004 0x00CF95 3
3.3.3.3         3.3.3.3         401         0x80000003 0x00323F 2

                Net Link States (Area 2)

Link ID         ADV Router      Age         Seq#       Checksum
10.2.12.2       2.2.2.2         435         0x80000002 0x00A466
10.2.13.3       3.3.3.3         401         0x80000002 0x00936D
10.2.23.3       3.3.3.3         401         0x80000002 0x00579B

                Summary Net Link States (Area 2)

Link ID         ADV Router      Age         Seq#       Checksum
3.3.3.3         3.3.3.3         401         0x80000002 0x00AC76
4.4.4.4         3.3.3.3         401         0x80000002 0x00E232
5.5.5.5         3.3.3.3         401         0x80000002 0x0019ED
6.6.6.6         3.3.3.3         401         0x80000002 0x00EA18
10.0.34.0       3.3.3.3         402         0x80000002 0x009762
10.1.45.0       3.3.3.3         402         0x80000002 0x00766D
10.1.46.0       3.3.3.3         402         0x80000002 0x006B77
10.1.56.0       3.3.3.3         402         0x80000002 0x00616D</code>
</pre>
<p>You can above that we have Router Link States (LSA Type 1) and Net Link States (LSA Type 2) in our database on R1. This describes the routers and networks in our area 2. R3 will take these routes and generate a LSA Type 3 and send it <em>out</em> into area 0. We can also see the Summary Net Link States (LSA Type 3). These have been generated by R3 and sent <em>into</em> area 2.</p>
<p>Enough theory, lets get into filtering some routes!</p>
<h3 class="mast">Recap: Filtering Routes Within An Area</h3>
<p>In our previous tutorial, we looked at <a href="http://ardenpackeer.com/routing-protocols/tutorial-filtering-routes-in-ospf-part-1-filtering-within-an-area/">filtering routes within an OSPF area</a>. We noted that when you use filtering tools within an area, you are only filtering from the routes entering the route table. You are not filtering the OSPF database. The database must be consistent within an area for OSPF to work correctly.  This results in a discrepancy between the route table and OSPF database when filtering within an area. </p>
<p>An ABR will summarise routes as an LSA type 3 before sending it into the area. It is on the ABR that we will perform filtering between areas. How does filtering between areas affect the route tables and OSPF database? Let&#8217;s find out!</p>
<h3 class="mast">Filtering Routes Between Areas &#8211; Using and area filter-list</h3>
<p>The first technique we are going to use to filter routes between areas is using the <a href="http://www.cisco.com/en/US/docs/ios/iproute/command/reference/irp_osp1.html#wp1011184">area filter-list</a> command. Before we start lets take a look at the OSPF database on R5.</p>
<p><strong>R5:</strong></p>
<pre>
<code>R5#sh ip ospf database

            OSPF Router with ID (5.5.5.5) (Process ID 1)

                Router Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum Link count
4.4.4.4         4.4.4.4         799         0x80000004 0x00D71F 2
5.5.5.5         5.5.5.5         792         0x80000004 0x00D7DC 3
6.6.6.6         6.6.6.6         810         0x80000004 0x007A29 3

                Net Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum
10.1.45.5       5.5.5.5         792         0x80000002 0x00C8FA
10.1.46.6       6.6.6.6         810         0x80000002 0x00B702
10.1.56.6       6.6.6.6         810         0x80000002 0x007B30

                Summary Net Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum
1.1.1.1         4.4.4.4         799         0x80000002 0x00B35F
2.2.2.2         4.4.4.4         799         0x80000002 0x008589
3.3.3.3         4.4.4.4         799         0x80000002 0x00F222
4.4.4.4         4.4.4.4         799         0x80000002 0x0060BA
10.0.34.0       4.4.4.4         800         0x80000002 0x00797C
10.2.12.0       4.4.4.4         800         0x80000002 0x001DD8
10.2.13.0       4.4.4.4         800         0x80000002 0x00AD51
10.2.23.0       4.4.4.4         800         0x80000002 0x003FB5</code>
</pre>
<p>You can see above that R5 has Router Link States (LSA Type 1) and Net Link States (LSA Type 2) that describe the networks and routers in area 1. We can also see the Summary Net Link States (LSA Type 3) that have been generated by R4 and sent <em>into</em> area 1.</p>
<pre>
<code>R5#sh ip route | b Gateway
Gateway of last resort is not set

     1.0.0.0/32 is subnetted, 1 subnets
O IA    1.1.1.1 [110/31] via 10.1.45.4, 00:50:57, Ethernet1/0
     2.0.0.0/32 is subnetted, 1 subnets
O IA    2.2.2.2 [110/31] via 10.1.45.4, 00:50:57, Ethernet1/0
     3.0.0.0/32 is subnetted, 1 subnets
O IA    3.3.3.3 [110/21] via 10.1.45.4, 00:50:57, Ethernet1/0
     4.0.0.0/32 is subnetted, 1 subnets
O IA    4.4.4.4 [110/11] via 10.1.45.4, 00:50:57, Ethernet1/0
     5.0.0.0/32 is subnetted, 1 subnets
C       5.5.5.5 is directly connected, Loopback0
     6.0.0.0/32 is subnetted, 1 subnets
O       6.6.6.6 [110/11] via 10.1.56.6, 00:50:57, Ethernet1/1
     10.0.0.0/24 is subnetted, 7 subnets
O IA    10.2.12.0 [110/40] via 10.1.45.4, 00:50:57, Ethernet1/0
O IA    10.2.13.0 [110/30] via 10.1.45.4, 00:50:57, Ethernet1/0
O IA    10.2.23.0 [110/30] via 10.1.45.4, 00:50:57, Ethernet1/0
O       10.1.46.0 [110/20] via 10.1.56.6, 00:50:57, Ethernet1/1
                  [110/20] via 10.1.45.4, 00:50:57, Ethernet1/0
C       10.1.45.0 is directly connected, Ethernet1/0
O IA    10.0.34.0 [110/20] via 10.1.45.4, 00:50:57, Ethernet1/0
C       10.1.56.0 is directly connected, Ethernet1/1</code>
</pre>
<p>Looking at the route table we can see that we have inter-area routes to the Loopbacks for R1, R2, R3, and R4. We also have inter-area routes to the networks in Area 2, and the backbone area. It is these inter-area routes that we will look to filter from going into area 1.</p>
<p>Lets have a look at the database on R4 where we be performing the filtering.<br />
<strong>R4:</strong></p>
<pre>
<code>R4#sh ip ospf database

            OSPF Router with ID (4.4.4.4) (Process ID 1)

                Router Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum Link count
3.3.3.3         3.3.3.3         745         0x80000003 0x00236F 2
4.4.4.4         4.4.4.4         780         0x80000003 0x00374E 2

                Net Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum
10.0.34.4       4.4.4.4         780         0x80000002 0x0022BA

                Summary Net Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum
1.1.1.1         3.3.3.3         745         0x80000002 0x006DB3
2.2.2.2         3.3.3.3         745         0x80000002 0x003FDD
5.5.5.5         4.4.4.4         780         0x80000002 0x009676
6.6.6.6         4.4.4.4         780         0x80000002 0x0068A0
10.1.45.0       4.4.4.4         780         0x80000002 0x00F3F5
10.1.46.0       4.4.4.4         780         0x80000002 0x00E8FF
10.1.56.0       4.4.4.4         780         0x80000002 0x00DEF5
10.2.12.0       3.3.3.3         745         0x80000002 0x00D62D
10.2.13.0       3.3.3.3         745         0x80000002 0x0067A5
10.2.23.0       3.3.3.3         745         0x80000002 0x00F80A

                Router Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum Link count
4.4.4.4         4.4.4.4         780         0x80000004 0x00D71F 2
5.5.5.5         5.5.5.5         775         0x80000004 0x00D7DC 3
6.6.6.6         6.6.6.6         792         0x80000004 0x007A29 3

                Net Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum
10.1.45.5       5.5.5.5         775         0x80000002 0x00C8FA
10.1.46.6       6.6.6.6         792         0x80000002 0x00B702
10.1.56.6       6.6.6.6         792         0x80000002 0x007B30

                Summary Net Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum
1.1.1.1         4.4.4.4         780         0x80000002 0x00B35F
2.2.2.2         4.4.4.4         780         0x80000002 0x008589
3.3.3.3         4.4.4.4         781         0x80000002 0x00F222
4.4.4.4         4.4.4.4         781         0x80000002 0x0060BA
10.0.34.0       4.4.4.4         781         0x80000002 0x00797C
10.2.12.0       4.4.4.4         781         0x80000002 0x001DD8
10.2.13.0       4.4.4.4         781         0x80000002 0x00AD51
10.2.23.0       4.4.4.4         781         0x80000002 0x003FB5</code>
</pre>
<p>You can see above that R4 has a consistent database with all the routers in Area 0 and Area 1. It has a complete view of both areas. R4 has sent the LSA Type 3 routes from area 2 into area 1.</p>
<p>Let&#8217;s set up R4 so that it only passes the 10.2.12.0/24 and 10.2.23.0/24 routes into area 1 using the <a href="http://www.cisco.com/en/US/docs/ios/iproute/command/reference/irp_osp1.html#wp1011184">area filter-list</a> command:</p>
<p><strong>R4:</strong></p>
<pre>
<code>router ospf 1
 router-id 4.4.4.4
 log-adjacency-changes
 area 1 filter-list prefix AREA_1_IN in
 network 4.4.4.4 0.0.0.0 area 0
 network 10.0.34.4 0.0.0.0 area 0
 network 10.1.45.4 0.0.0.0 area 1
 network 10.1.46.4 0.0.0.0 area 1
!
ip prefix-list AREA_1_IN seq 5 permit 10.2.12.0/24
ip prefix-list AREA_1_IN seq 10 permit 10.2.23.0/24</code>
</pre>
<p>You can see above that we have created a prefix-list that matches the routes that we want to permit (ie allowed) to go into area 1. We have then applied this prefix-list to the area filter-list. Notice the direction. We are only allowing those routes matched by the prefix <em><strong>into</strong> area 1</em>. Its from the perspective of the area not the router. </p>
<p>A lot of candidates make the mistake of saying &#8220;area 1 filter-list prefix AREA_1_IN <em>out</em>&#8221; thinking its filtering the routes from going out of the <em>router</em>. This is wrong. You have to think of it from the perspective of the areas. We are filtering routes from going <em>into area 1.</em></p>
<p>Let&#8217;s verify the routing tables and OSPF database on R5:</p>
<p><strong>R5:</strong></p>
<pre>
<code>R5#sh ip ospf database

            OSPF Router with ID (5.5.5.5) (Process ID 1)

                Router Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum Link count
4.4.4.4         4.4.4.4         1530        0x80000004 0x00D71F 2
5.5.5.5         5.5.5.5         1523        0x80000004 0x00D7DC 3
6.6.6.6         6.6.6.6         1541        0x80000004 0x007A29 3

                Net Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum
10.1.45.5       5.5.5.5         1523        0x80000002 0x00C8FA
10.1.46.6       6.6.6.6         1541        0x80000002 0x00B702
10.1.56.6       6.6.6.6         1541        0x80000002 0x007B30

                Summary Net Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum
10.2.12.0       4.4.4.4         1530        0x80000002 0x001DD8
10.2.23.0       4.4.4.4         85          0x80000001 0x0041B4
</code>
</pre>
<p>Looks like the only LSA Type 3 (Summary Net Link States) routes that we received are the only ones we permitted on R4. Exactly what we expected! Now let&#8217;s check the route table:</p>
<pre>
<code>R5#sh ip route | b Gateway
Gateway of last resort is not set

     5.0.0.0/32 is subnetted, 1 subnets
C       5.5.5.5 is directly connected, Loopback0
     6.0.0.0/32 is subnetted, 1 subnets
O       6.6.6.6 [110/11] via 10.1.56.6, 00:56:45, Ethernet1/1
     10.0.0.0/24 is subnetted, 5 subnets
O IA    10.2.12.0 [110/40] via 10.1.45.4, 00:56:45, Ethernet1/0
O IA    10.2.23.0 [110/30] via 10.1.45.4, 00:00:05, Ethernet1/0
O       10.1.46.0 [110/20] via 10.1.56.6, 00:56:45, Ethernet1/1
                  [110/20] via 10.1.45.4, 00:56:45, Ethernet1/0
C       10.1.45.0 is directly connected, Ethernet1/0
C       10.1.56.0 is directly connected, Ethernet1/1</code>
</pre>
<p>Awesome! The only inter-area routes that we can see on R5 are those that we permitted on the ABR (R4).</p>
<p>Let&#8217;s have a look at example of filtering routes coming <em>out</em> of an area:</p>
<p><strong>R3:</strong></p>
<pre>
<code>router ospf 1
 router-id 3.3.3.3
 log-adjacency-changes
 area 2 filter-list prefix AREA_2_OUT out
 network 3.3.3.3 0.0.0.0 area 0
 network 10.0.34.3 0.0.0.0 area 0
 network 10.2.13.3 0.0.0.0 area 2
 network 10.2.23.3 0.0.0.0 area 2
!
ip prefix-list AREA_2_OUT seq 5 permit 10.2.23.0/24</code>
</pre>
<p>Recall that R3 will generate a Type 3 Summary LSA for all the routes in area 2 and then send it <em>out</em> of area 2. In the example above we area stopping R3 creating a Type 3 LSA and sending it into area 0. We are using a prefix list to specify that the only Type 3 LSA that R3 will generate is for the 10.2.23.0/24 route. </p>
<p>Let&#8217;s check the database on R4 now, I&#8217;ll just clear the OSPF process on R3 to speed to convergence along:</p>
<pre>
<code>R3#clear ip ospf pro
Reset ALL OSPF processes? [no]: yes</code>
</pre>
<p><strong>R4:</strong></p>
<pre>
<code>R4#sh ip ospf data

            OSPF Router with ID (4.4.4.4) (Process ID 1)

                Router Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum Link count
3.3.3.3         3.3.3.3         31          0x80000005 0x00157C 2
4.4.4.4         4.4.4.4         117         0x80000004 0x002B5A 2

                Net Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum
10.0.34.3       3.3.3.3         127         0x80000001 0x005C86

                Summary Net Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum
5.5.5.5         4.4.4.4         112         0x80000002 0x009676
6.6.6.6         4.4.4.4         122         0x80000001 0x006A9F
10.1.45.0       4.4.4.4         112         0x80000001 0x00F5F4
10.1.46.0       4.4.4.4         122         0x80000001 0x00EAFE
10.1.56.0       4.4.4.4         122         0x80000001 0x00E0F4
10.2.23.0       3.3.3.3         31          0x80000003 0x00F60B

                Router Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum Link count
4.4.4.4         4.4.4.4         117         0x80000006 0x00D321 2
5.5.5.5         5.5.5.5         126         0x80000006 0x00D3DE 3
6.6.6.6         6.6.6.6         62          0x80000005 0x00782A 3

                Net Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum
10.1.45.5       5.5.5.5         123         0x80000003 0x00C6FB
10.1.46.6       6.6.6.6         62          0x80000003 0x00B503
10.1.56.6       6.6.6.6         62          0x80000003 0x007931

                Summary Net Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum
10.2.23.0       4.4.4.4         117         0x80000002 0x003FB5</code>
</pre>
<p>You can see that the only Type 3 LSA from area 2 that R4 can see is the 10.2.23.0/24 network. Exactly what we expected. Awesome!</p>
<p><strong>R5:</strong></p>
<pre>
<code>R5#sh ip route | b Gateway
Gateway of last resort is not set

     5.0.0.0/32 is subnetted, 1 subnets
C       5.5.5.5 is directly connected, Loopback0
     6.0.0.0/32 is subnetted, 1 subnets
O       6.6.6.6 [110/11] via 10.1.56.6, 00:02:18, Ethernet1/1
     10.0.0.0/24 is subnetted, 4 subnets
O IA    10.2.23.0 [110/30] via 10.1.45.4, 00:02:18, Ethernet1/0
O       10.1.46.0 [110/20] via 10.1.56.6, 00:02:18, Ethernet1/1
                  [110/20] via 10.1.45.4, 00:02:18, Ethernet1/0
C       10.1.45.0 is directly connected, Ethernet1/0
C       10.1.56.0 is directly connected, Ethernet1/1</code>
</pre>
<p>This in turn is the only inter-area route that we can see on R5 (remember that we are also filtering on R4).</p>
<pre>
<code>R5#sh ip ospf database

            OSPF Router with ID (5.5.5.5) (Process ID 1)

                Router Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum Link count
5.5.5.5         5.5.5.5         6           0x80000006 0x00D3DE 3
6.6.6.6         6.6.6.6         1952        0x80000004 0x007A29 3

                Net Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum
10.1.45.4       4.4.4.4         3609        0x80000001 0x0003C6
10.1.45.5       5.5.5.5         3           0x80000003 0x00C6FB
10.1.46.6       6.6.6.6         1952        0x80000002 0x00B702
10.1.56.6       6.6.6.6         1952        0x80000002 0x007B30

                Summary Net Link States (Area 1)

Link ID         ADV Router      Age         Seq#       Checksum
10.2.23.0       4.4.4.4         4           0x80000001 0x0041B4</code>
</pre>
<p>So you can see that we can filter routes using the area filter-list command. The area filter-list command filter&#8217;s LSA Type 3&#8217;s from going in or out of an <em>area</em>. The routes in an area still maintain a consistent route table and OSPF database. Filtering between areas stops routes from entering the OSPF database and in turn stops them from going into the route tables.</p>
<p>In our next article in this series we will look at filtering between areas using a few of the more obtuse ways such as the area range command and summary-address commands.</p>
<p>Hope this helps. If anybody has any questions or suggestion, leave a comment below and I&#8217;ll be happy to help. Now get back to labs! :)</p>
<h3 class="mast">Summary:</h3>
<ul>
<li>OSPF can be considered Link-State within an area, and Distance Vector between areas</li>
<li>The <a href="http://www.cisco.com/en/US/docs/ios/iproute/command/reference/irp_osp1.html#wp1011184">area filter-list</a> command filter&#8217;s routes going in or out from an <em>area</em>.</li>
</ul>
<h3 class="mast">Resources:</h3>
<ul>
<li><a href="http://ardenpackeer.com/wp-content/uploads/2008/08/ospf-filtering2.net">Dynamips/Dynagen .net configuration file</a></li>
<li><a href="http://www.networkworld.com/community/node/19293">Jeff Doyle&#8217;s Favourite Interview Question &#8211; &#8220;Why does OSPF require all traffic between non-backbone areas to pass through a backbone area (area 0)?&#8221;</a></li>
</ul>
<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/routing-protocols/tutorial-filtering-routes-in-ospf-part-2-filtering-between-areas-using-area-filter-list/">Tutorial: Filtering Routes in OSPF Part 2 &raquo; Filtering Between Areas Using area filter-list</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/BM39MXj3UQTbqGlYzKy13aNs71M/0/da"><img src="http://feedads.g.doubleclick.net/~a/BM39MXj3UQTbqGlYzKy13aNs71M/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/BM39MXj3UQTbqGlYzKy13aNs71M/1/da"><img src="http://feedads.g.doubleclick.net/~a/BM39MXj3UQTbqGlYzKy13aNs71M/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=bjK-BDYg3d8:J_BsNwuVq08:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=bjK-BDYg3d8:J_BsNwuVq08:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=bjK-BDYg3d8:J_BsNwuVq08:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=bjK-BDYg3d8:J_BsNwuVq08:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=bjK-BDYg3d8:J_BsNwuVq08:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=bjK-BDYg3d8:J_BsNwuVq08:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=bjK-BDYg3d8:J_BsNwuVq08:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=bjK-BDYg3d8:J_BsNwuVq08:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=bjK-BDYg3d8:J_BsNwuVq08:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/ardenpackeer/~4/bjK-BDYg3d8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ardenpackeer.com/routing-protocols/tutorial-filtering-routes-in-ospf-part-2-filtering-between-areas-using-area-filter-list/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		<feedburner:origLink>http://ardenpackeer.com/routing-protocols/tutorial-filtering-routes-in-ospf-part-2-filtering-between-areas-using-area-filter-list/</feedburner:origLink></item>
		<item>
		<title>Tutorial: OSPF Network Types &amp; Frame-Relay Series</title>
		<link>http://feedproxy.google.com/~r/ardenpackeer/~3/y_crw0DvJ7k/</link>
		<comments>http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-frame-relay-series/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 10:59:41 +0000</pubDate>
		<dc:creator>Arden Packeer, CCIE #20716</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Featured Articles]]></category>
		<category><![CDATA[Routing Protocols]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[ccie]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://ardenpackeer.com/?p=261</guid>
		<description><![CDATA[Knowing the OSPF Network Types and how they work with different frame relay topologies is one of those things that you should know inside out if you are attempting the CCIE lab. This five part series of tutorials are designed to take you through all the different OSPF network types and demonstrate how they interact with Frame-Relay over various partial-mesh topologies. <p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-frame-relay-series/">Tutorial: OSPF Network Types &#038; Frame-Relay Series</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Knowing the OSPF Network Types and how they work with different frame relay topologies is one of those things that you should know inside out if you are attempting the CCIE lab. This five part series of tutorials are designed to take you through all the different OSPF network types and demonstrate how they interact with Frame-Relay over various partial-mesh topologies. </p>
<ul class="archives">
<li><a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-1/">Part 1: OSPF Broadcast &#038; Non-Broadcast Network Types</a></li>
<li><a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-2/">Part 2: OSPF Point-to-Multipoint &#038; Point-to-Multipoint Non-Broadcast Network Types</a></li>
<li><a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-3/">Part 3: OSPF Point-to-Point &#038; Loopback Network Types</a></li>
<li><a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-4/">Part 4: Mixing &#038; Matching OSPF Network Types</a></li>
<li><a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-5/">Part 5: OSPF Network Types in Multi-Hub Partial-Mesh Networks</a></li>
</ul>
<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-frame-relay-series/">Tutorial: OSPF Network Types &#038; Frame-Relay Series</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/f7bFM6wlGNzc2TGO8sB2RbbsKi4/0/da"><img src="http://feedads.g.doubleclick.net/~a/f7bFM6wlGNzc2TGO8sB2RbbsKi4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/f7bFM6wlGNzc2TGO8sB2RbbsKi4/1/da"><img src="http://feedads.g.doubleclick.net/~a/f7bFM6wlGNzc2TGO8sB2RbbsKi4/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=y_crw0DvJ7k:Ube2JuuXseU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=y_crw0DvJ7k:Ube2JuuXseU:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=y_crw0DvJ7k:Ube2JuuXseU:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=y_crw0DvJ7k:Ube2JuuXseU:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=y_crw0DvJ7k:Ube2JuuXseU:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=y_crw0DvJ7k:Ube2JuuXseU:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=y_crw0DvJ7k:Ube2JuuXseU:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=y_crw0DvJ7k:Ube2JuuXseU:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=y_crw0DvJ7k:Ube2JuuXseU:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/ardenpackeer/~4/y_crw0DvJ7k" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-frame-relay-series/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-frame-relay-series/</feedburner:origLink></item>
		<item>
		<title>Tutorial: OSPF Network Types and Frame Relay Part 5</title>
		<link>http://feedproxy.google.com/~r/ardenpackeer/~3/lOkvGdb9UhQ/</link>
		<comments>http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-5/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 10:19:21 +0000</pubDate>
		<dc:creator>Arden Packeer, CCIE #20716</dc:creator>
				<category><![CDATA[Routing Protocols]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[broadcast]]></category>
		<category><![CDATA[frame relay]]></category>
		<category><![CDATA[ospf]]></category>
		<category><![CDATA[ospf network types]]></category>
		<category><![CDATA[router]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://ardenpackeer.com/?p=126</guid>
		<description><![CDATA[In my previous tutorials we looked at the different OSPF Network types and also how they interact with each other. In this tutorial we will be looking at implementing OSPF over a partial mesh Frame-Relay network with multiple hubs and spokes. This is the last of the OSPF Network Types and Frame Relay series of articles....unless I find something cool! :)<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-5/">Tutorial: OSPF Network Types and Frame Relay Part 5</a></p>
]]></description>
			<content:encoded><![CDATA[<p>In my previous tutorials we looked at the different OSPF Network types (you can find <a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-1/">Part 1 here</a>, <a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-2/">Part 2 here</a>, <a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-3/">Part 3 here</a>, and <a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-4/">Part 4 here</a>) and also how they interact with each other. In this tutorial we will be looking at implementing OSPF over a partial mesh Frame-Relay network with multiple hubs and spokes. This is the last of the OSPF Network Types and Frame Relay series of articles&#8230;.unless I find something cool! :)</p>
<p>We will be implementing the following topology for this tutorial:</p>
<div class="captionfull"><img src="http://ardenpackeer.com/wp-content/uploads/2008/06/ospf-frame5.gif" alt="OSPF Network Types &#038; Frame Relay Part 5 Topology" title="ospf-frame5" /></div>
<h3 class="mast">Dynagen / Dynamips .net Configuration File:</h3>
<pre>
<code>ghostios = true
sparsemem = true
model = 3640

[localhost]

    [[3640]]
    image = \Program Files\Dynamips\images\c3640-jk9o3s-mz.124-12.bin
    # On Linux / Unix use forward slashes:
    # image = /opt/7200-images/c7200-jk9o3s-mz.124-7a.image
    ram = 128

    [[ROUTER R1]]
        f0/0 = LAN 1
        s1/0 = FRAME 1
        console = 2000
        model = 3640

    [[ROUTER R2]]
        f0/0 = LAN 2
        s1/0 = FRAME 2
        console = 2001
        model = 3640

    [[ROUTER R3]]
        f0/0 = LAN 3
        s1/0 = FRAME 3
        console = 2002
        model = 3640

    [[ROUTER R4]]
        f0/0 = LAN 4
        s1/0 = FRAME 4
        console = 2003
        model = 3640

    [[FRSW FRAME]]
        1:102 = 2:201
        2:203 = 3:302
        3:304 = 4:403 </code>
</pre>
<p>You can <a href="http://ardenpackeer.com/wp-content/uploads/2008/06/ospf2.net">download the dynagen .net configuration file for this topology here</a>.</p>
<p>Lets have a look at the basic configuration for this topology:</p>
<p><strong>R1</strong></p>
<pre>
<code>hostname R1
!
no service timestamps debug uptime
no service timestamps log uptime
!
interface FastEthernet0/0
 ip address 1.1.1.1 255.255.255.0
 duplex auto
 speed auto
!
interface Serial1/0
 ip address 192.168.1.1 255.255.255.0
 encapsulation frame-relay
 frame-relay map ip 192.168.1.2 102 broadcast
 frame-relay map ip 192.168.1.3 102
 frame-relay map ip 192.168.1.4 102
 no frame-relay inverse-arp</code>
</pre>
<p><strong>R2</strong></p>
<pre>
<code>hostname R2
!
no service timestamps debug uptime
no service timestamps log uptime
!
interface FastEthernet0/0
 ip address 2.2.2.2 255.255.255.0
 duplex auto
 speed auto
!
interface Serial1/0
 ip address 192.168.1.2 255.255.255.0
 encapsulation frame-relay
 frame-relay map ip 192.168.1.1 201 broadcast
 frame-relay map ip 192.168.1.3 203 broadcast
 frame-relay map ip 192.168.1.4 203
 no frame-relay inverse-arp</code>
</pre>
<p><strong>R3</strong></p>
<pre>
<code>hostname R3
!
no service timestamps debug uptime
no service timestamps log uptime
!
interface FastEthernet0/0
 ip address 3.3.3.3 255.255.255.0
 duplex auto
 speed auto
!
interface Serial1/0
 ip address 192.168.1.3 255.255.255.0
 encapsulation frame-relay
 frame-relay map ip 192.168.1.1 302
 frame-relay map ip 192.168.1.2 302 broadcast
 frame-relay map ip 192.168.1.4 304 broadcast
 no frame-relay inverse-arp</code>
</pre>
<p><strong>R4</strong></p>
<pre>
<code>hostname R4
!
no service timestamps debug uptime
no service timestamps log uptime
!
interface FastEthernet0/0
 ip address 4.4.4.4 255.255.255.0
 duplex auto
 speed auto
!
interface Serial1/0
 ip address 192.168.1.4 255.255.255.0
 encapsulation frame-relay
 frame-relay map ip 192.168.1.1 403
 frame-relay map ip 192.168.1.2 403
 frame-relay map ip 192.168.1.3 403 broadcast
 no frame-relay inverse-arp</code>
</pre>
<p>Let&#8217;s take a close look at this configuration. You can see above we have a partial mesh configuration and it could be argued that we actually have two hubs. R2 and R3 could both be considered hubs. R2 is the hub for R1 and R3 spokes, and R3 is the hub for R2 and R4 spokes. The broadcast statements reflect this. R2 has broadcast statements in its frame-relay map  for its spokes, and only its spokes. This is the same on R3, we have broadcast statements for R2 and R4 (its spokes only). This is to stop redundant broadcasts. </p>
<p>If we apply a broadcast statement to each and every frame-relay map statement this will cause redundant broadcasts frames to be sent. For example lets say we configure R4 as follows:</p>
<p><strong>R4</strong></p>
<pre>
<code>interface Serial1/0
 ip address 192.168.1.4 255.255.255.0
 encapsulation frame-relay
 frame-relay map ip 192.168.1.1 403 broadcast
 frame-relay map ip 192.168.1.2 403 broadcast
 frame-relay map ip 192.168.1.3 403 broadcast
 no frame-relay inverse-arp</code>
</pre>
<p>Notice we have applied a broadcast option to every frame-relay map statement. When a broadcast frame is sent, it will create three packets with a layer2 header (frame relay) specifying DLCI 403, and a layer3 header (IP) specifying a destination of 192.168.1.255. R3 will receive all three of these frames. </p>
<p>R3 will look at the layer2 header of those frames and say &#8220;Oh this for me at layer2! Great, lets look at the layer3 header&#8221;. R3 will then de-encapsulate the layer2 header (the frame) and then take a look at the layer3 header which has a destination of 192.168.1.255. &#8220;Oh its a broadcast great, thats for me as well&#8221;, R3 says. Will it forward those back out the interface to the rest of the Routers? No. Think about this. When you get a broadcast packet on an ethernet network does your computer process it and then send it back out again. If it did this would result in a hell of a lot of broadcast traffic on our networks! </p>
<p>R3 will get three packets that have the broadcast as a destination address and process them. It will not resend those broadcast packets backout again. That is what it means by redundant broadcasts. </p>
<p>Let&#8217;s verify this:<br />
<strong>R2:</strong></p>
<pre>
<code>R2#debug ip packet
IP packet debugging is on</code>
</pre>
<p><strong>R3:</strong></p>
<pre>
<code>R3#debug ip packet
IP packet debugging is on</code>
</pre>
<p><strong>R4:</strong></p>
<pre>
<code>R4#debug ip packet
IP packet debugging is on</code>
</pre>
<p>We have turned on ip packet debugging on all routers (don&#8217;t try this on a production router!). Let&#8217;s generate some packets on R4:</p>
<pre>
<code>R4#ping 192.168.1.255

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.255, timeout is 2 seconds:

IP: s=192.168.1.4 (local), d=255.255.255.255 (Serial1/0), len 100, sending broad/multicast
IP: tableid=0, s=192.168.1.3 (Serial1/0), d=192.168.1.4 (Serial1/0), routed via RIB
IP: s=192.168.1.3 (Serial1/0), d=192.168.1.4 (Serial1/0), len 100, rcvd 3
IP: tableid=0, s=192.168.1.3 (Serial1/0), d=192.168.1.4 (Serial1/0), routed via RIB
IP: s=192.168.1.3 (Serial1/0), d=192.168.1.4 (Serial1/0), len 100, rcvd 3
IP: tableid=0, s=192.168.1.3 (Serial1/0), d=192.168.1.4 (Serial1/0), routed via RIB
IP: s=192.168.1.3 (Serial1/0), d=192.168.1.4 (Serial1/0), len 100, rcvd 3
Reply to request 0 from 192.168.1.3, 80 ms
Reply to request 0 from 192.168.1.3, 96 ms
Reply to request 0 from 192.168.1.3, 88 ms
-----Output Cut-----</code>
</pre>
<pre>
<code>R3#
IP: s=192.168.1.4 (Serial1/0), d=255.255.255.255, len 100, rcvd 2
IP: tableid=0, s=192.168.1.3 (local), d=192.168.1.4 (Serial1/0), routed via FIB
IP: s=192.168.1.3 (local), d=192.168.1.4 (Serial1/0), len 100, sending
IP: s=192.168.1.4 (Serial1/0), d=255.255.255.255, len 100, rcvd 2
IP: tableid=0, s=192.168.1.3 (local), d=192.168.1.4 (Serial1/0), routed via FIB
IP: s=192.168.1.3 (local), d=192.168.1.4 (Serial1/0), len 100, sending
IP: s=192.168.1.4 (Serial1/0), d=255.255.255.255, len 100, rcvd 2
IP: tableid=0, s=192.168.1.3 (local), d=192.168.1.4 (Serial1/0), routed via FIB
IP: s=192.168.1.3 (local), d=192.168.1.4 (Serial1/0), len 100, sending</code>
</pre>
<p>You can see clearly in the output above that R3 got 3 ping packets for every one ping that was supposed to be sent. R3 then sent 3 unicast reply back to to R4 only. Be aware of this as I see a lot of people setting broadcast statement on every frame-relay map statement. I don&#8217;t know if you will loose marks on this in the CCIE Lab exam but it certainly helps to be aware of it.</p>
<p><strong>On your hub, set a broadcast frame-relay map on all the DLCI&#8217;s leading to your spokes. On your spokes, set the broadcast frame-relay map on the DLCI leading to your hub.</strong></p>
<p>This has implications for OSPF. It is why we usually want to make sure that the hub is the Designated Router (DR) in OSPF. The spokes send an update via a multicast (subset of broadcast) to 224.0.0.6 which the DR listens on. This is only applicable to network types that require a DR. The updates are then collated by the DR and sent out to the other spokes via the address 224.0.0.5. They are seperate broadcasts. </p>
<p>Let&#8217;s clean up before we move on to setting up OSPF across this network. </p>
<p><strong>R2:</strong></p>
<pre>
<code>R2#un all
All possible debugging has been turned off</code>
</pre>
<p><strong>R3:</strong></p>
<pre>
<code>R3#un all
All possible debugging has been turned off</code>
</pre>
<p><strong>R4:</strong></p>
<pre>
<code>R4#un all
All possible debugging has been turned off
R4#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R4(config)#default int s1/0
Building configuration...

Interface Serial1/0 set to default configuration
R4(config)#
%LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0, changed state to down
%LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0, changed state to up
R4(config)#int s1/0
R4(config-if)# ip address 192.168.1.4 255.255.255.0
R4(config-if)# encapsulation frame-relay
R4(config-if)# frame-relay map ip 192.168.1.1 403
R4(config-if)# frame-relay map ip 192.168.1.2 403
R4(config-if)# frame-relay map ip 192.168.1.3 403 broadcast
R4(config-if)# no frame-relay inverse-arp
R4(config-if)#no shut
R4(config-if)#end</code>
</pre>
<h3 class="mast">Setting Up An OSPF Network Across A Partial-Mesh Frame-Relay Network</h3>
<p>One of the things that you should be asking yourself looking at that topology is what OSPF network type do we use? We&#8217;ve already stated that there are essentially two hubs in that topology. Both R2 and R3 could be considered hubs. Well, if there are two hubs which one do we make the DR? Can we even use a network type that requires a DR in this topology? Let&#8217;s explore this first.</p>
<h3 class="mast">OSPF DR Network Types:</h3>
<p><strong>R1:</strong></p>
<pre>
<code>interface Serial1/0
 ip ospf network broadcast
 ip ospf priority 0
!
router ospf 1
 router-id 1.1.1.1
 log-adjacency-changes
 network 1.1.1.1 0.0.0.0 area 0
 network 192.168.1.1 0.0.0.0 area 0</code>
</pre>
<p><strong>R2:</strong></p>
<pre>
<code>interface Serial1/0
 ip ospf network broadcast
!
router ospf 1
 router-id 2.2.2.2
 log-adjacency-changes
 network 2.2.2.2 0.0.0.0 area 0
 network 192.168.1.2 0.0.0.0 area 0</code>
</pre>
<p><strong>R3:</strong></p>
<pre>
<code>interface Serial1/0
 ip ospf network broadcast
!
router ospf 1
 router-id 3.3.3.3
 log-adjacency-changes
 network 3.3.3.3 0.0.0.0 area 0
 network 192.168.1.3 0.0.0.0 area 0</code>
</pre>
<p><strong>R4:</strong></p>
<pre>
<code>interface Serial1/0
 ip ospf network broadcast
 ip ospf priority 0
!
router ospf 1
 router-id 4.4.4.4
 log-adjacency-changes
 network 4.4.4.4 0.0.0.0 area 0
 network 192.168.1.4 0.0.0.0 area 0</code>
</pre>
<p>So we have activated ospf on all the interfaces in our topology. For simplicity sake we have used a single OSPF area (area 0) for our entire topology. </p>
<p>Let&#8217;s verify that we are able to establish adjacency on our routers:</p>
<pre>
<code>R1#sh ip ospf nei

Neighbor ID     Pri   State           Dead Time   Address         Interface
2.2.2.2           1   FULL/DR         00:00:30    192.168.1.2     Serial1/0</code>
</pre>
<pre>
<code>R2#sh ip ospf nei

Neighbor ID     Pri   State           Dead Time   Address         Interface
1.1.1.1           0   FULL/DROTHER    00:00:36    192.168.1.1     Serial1/0
3.3.3.3           1   FULL/DR         00:00:30    192.168.1.3     Serial1/0</code>
</pre>
<pre>
<code>R3#sh ip ospf nei

Neighbor ID     Pri   State           Dead Time   Address         Interface
2.2.2.2           1   FULL/BDR        00:00:32    192.168.1.2     Serial1/0
4.4.4.4           0   FULL/DROTHER    00:00:33    192.168.1.4     Serial1/0</code>
</pre>
<pre>
<code>R4#sh ip ospf nei

Neighbor ID     Pri   State           Dead Time   Address         Interface
3.3.3.3           1   FULL/DR         00:00:38    192.168.1.3     Serial1/0</code>
</pre>
<p>At first glance, that looks fine. They all came up as fully adjacent, but take a look at those DR/BDR relationships. They are not consistent at all!</p>
<pre>
<code>R1#sh ip ospf int s1/0 | inc Designated|Backup
  Designated Router (ID) 2.2.2.2, Interface address 192.168.1.2
  Backup Designated router (ID) 2.2.2.2, Interface address 192.168.1.2
    Adjacent with neighbor 2.2.2.2  (Designated Router)</code>
</pre>
<pre>
<code>R2#sh ip ospf int s1/0 | inc Designated|Backup
  Designated Router (ID) 3.3.3.3, Interface address 192.168.1.3
  Backup Designated router (ID) 2.2.2.2, Interface address 192.168.1.2
    Adjacent with neighbor 3.3.3.3  (Designated Router)</code>
</pre>
<pre>
<code>R3#sh ip ospf int s1/0 | inc Designated|Backup
  Designated Router (ID) 3.3.3.3, Interface address 192.168.1.3
  Backup Designated router (ID) 2.2.2.2, Interface address 192.168.1.2
    Adjacent with neighbor 2.2.2.2  (Backup Designated Router)</code>
</pre>
<pre>
<code>R4#sh ip ospf int s1/0 | inc Designated|Backup
  Designated Router (ID) 3.3.3.3, Interface address 192.168.1.3
    Adjacent with neighbor 3.3.3.3  (Designated Router)</code>
</pre>
<p>R1 believes that R2 is the DR. R2, R3, and R4 believe that R3 is the DR. How will this effect the routing tables?</p>
<pre>
<code>R2#sh ip route | b Gateway
Gateway of last resort is not set

     2.0.0.0/24 is subnetted, 1 subnets
C       2.2.2.0 is directly connected, FastEthernet0/0
     3.0.0.0/24 is subnetted, 1 subnets
O       3.3.3.0 [110/65] via 192.168.1.3, 00:03:40, Serial1/0
     4.0.0.0/24 is subnetted, 1 subnets
O       4.4.4.0 [110/65] via 192.168.1.4, 00:03:40, Serial1/0
C    192.168.1.0/24 is directly connected, Serial1/0</code>
</pre>
<pre>
<code>R3#sh ip route | b Gateway
Gateway of last resort is not set

     2.0.0.0/24 is subnetted, 1 subnets
O       2.2.2.0 [110/65] via 192.168.1.2, 00:04:07, Serial1/0
     3.0.0.0/24 is subnetted, 1 subnets
C       3.3.3.0 is directly connected, FastEthernet0/0
     4.0.0.0/24 is subnetted, 1 subnets
O       4.4.4.0 [110/65] via 192.168.1.4, 00:04:07, Serial1/0
C    192.168.1.0/24 is directly connected, Serial1/0</code>
</pre>
<pre>
<code>R4#sh ip route | b Gateway
Gateway of last resort is not set

     2.0.0.0/24 is subnetted, 1 subnets
O       2.2.2.0 [110/65] via 192.168.1.2, 00:04:18, Serial1/0
     3.0.0.0/24 is subnetted, 1 subnets
O       3.3.3.0 [110/65] via 192.168.1.3, 00:04:18, Serial1/0
     4.0.0.0/24 is subnetted, 1 subnets
C       4.4.4.0 is directly connected, FastEthernet0/0
C    192.168.1.0/24 is directly connected, Serial1/0</code>
</pre>
<p>It looks like R2, R3, and R4 can see each others Ethernet networks, but they have no visibility of R1&#8217;s Ethernet segment.</p>
<pre>
<code>R1#sh ip route | b Gateway
Gateway of last resort is not set

     1.0.0.0/24 is subnetted, 1 subnets
C       1.1.1.0 is directly connected, FastEthernet0/0
C    192.168.1.0/24 is directly connected, Serial1/0</code>
</pre>
<p>R1 has no visibility at all of the other networks even though we are fully adjacent with R2!</p>
<p>Let&#8217;s examine this a little closer. In the above topology, R2, R3, and R4 will be able to swap routes as they have a consitent DR. Updates will be sent to the DR, these will be collated by the DR and then resent out to the spokes. But R1 thinks R2 is the DR. R1 will send its updates to what it thinks is the DR (R2). R2 will not accept these routes because it believes R3 is the DR!</p>
<p>The biggest problem with this topology and OSPF network types that require a DR is &#8220;who do we make the DR?&#8221;. We usually make the hub in a hub and spoke topology the DR, but what happens when we effectively have 2 hubs? These types of topologies are simply not suited to OSPF network types that require a DR (broadcast, and non-broadcast). We can&#8217;t have 2 DR&#8217;s!</p>
<h3 class="mast">OSPF Non-DR Network Types:</h3>
<p>Let&#8217;s try the same thing with a Non-DR OSPF Network type. In this example we will be using the <a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-2/">point-to-multipoint OSPF network type</a>, although we could also use any of the other types that don&#8217;t require a DR.</p>
<p>Let&#8217;s take a look at the configuration:<br />
<strong>R1:</strong></p>
<pre>
<code>interface Serial1/0
 ip address 192.168.1.1 255.255.255.0
 encapsulation frame-relay
 ip ospf network point-to-multipoint
 frame-relay map ip 192.168.1.2 102 broadcast
 frame-relay map ip 192.168.1.3 102
 frame-relay map ip 192.168.1.4 102
 no frame-relay inverse-arp
!
router ospf 1
 router-id 1.1.1.1
 log-adjacency-changes
 network 1.1.1.1 0.0.0.0 area 0
 network 192.168.1.1 0.0.0.0 area 0</code>
</pre>
<p><strong>R2:</strong></p>
<pre>
<code>interface Serial1/0
 ip address 192.168.1.2 255.255.255.0
 encapsulation frame-relay
 ip ospf network point-to-multipoint
 frame-relay map ip 192.168.1.1 201 broadcast
 frame-relay map ip 192.168.1.3 203 broadcast
 frame-relay map ip 192.168.1.4 203
 no frame-relay inverse-arp
!
router ospf 1
 router-id 2.2.2.2
 log-adjacency-changes
 network 2.2.2.2 0.0.0.0 area 0
 network 192.168.1.2 0.0.0.0 area 0</code>
</pre>
<p><strong>R3:</strong></p>
<pre>
<code>interface Serial1/0
 ip address 192.168.1.3 255.255.255.0
 encapsulation frame-relay
 ip ospf network point-to-multipoint
 frame-relay map ip 192.168.1.1 302
 frame-relay map ip 192.168.1.2 302 broadcast
 frame-relay map ip 192.168.1.4 304 broadcast
 no frame-relay inverse-arp
!
router ospf 1
 router-id 3.3.3.3
 log-adjacency-changes
 network 3.3.3.3 0.0.0.0 area 0
 network 192.168.1.3 0.0.0.0 area 0</code>
</pre>
<p><strong>R4:</strong></p>
<pre>
<code>interface Serial1/0
 ip address 192.168.1.4 255.255.255.0
 encapsulation frame-relay
 ip ospf network point-to-multipoint
 frame-relay map ip 192.168.1.1 403
 frame-relay map ip 192.168.1.2 403
 frame-relay map ip 192.168.1.3 403 broadcast
 no frame-relay inverse-arp
!
router ospf 1
 router-id 4.4.4.4
 log-adjacency-changes
 network 4.4.4.4 0.0.0.0 area 0
 network 192.168.1.4 0.0.0.0 area 0</code>
</pre>
<p>Once again we have setup all our interfaces so that they are in area 0. We have used the ip ospf network point-to-multipoint command on all our routers so we have a consistent network type. This network type does not require a DR as OSPF will inject /32 route to all our end points. You can check out my previous <a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-2/">tutorial on the point-to-multipoint OSPF network type</a> on why this is so cool!</p>
<p>Our two hubs, R2 and R3 have frame-relay maps with broadcast statements to their respective spokes. R2 has a broadcast statement for R1 and R3 in its frame-relay map statement. R3 has a broadcast statement for R2 and R4 in its frame-relay maps. Once again, we don&#8217;t apply broadcast statements to all our traffic as we would receive redundant broadcast messages. </p>
<p>Let&#8217;s verify the routing table:</p>
<pre>
<code>R1#sh ip route | b Gateway
Gateway of last resort is not set

     1.0.0.0/24 is subnetted, 1 subnets
C       1.1.1.0 is directly connected, FastEthernet0/0
     2.0.0.0/24 is subnetted, 1 subnets
O       2.2.2.0 [110/65] via 192.168.1.2, 00:15:43, Serial1/0
     3.0.0.0/24 is subnetted, 1 subnets
O       3.3.3.0 [110/129] via 192.168.1.2, 00:15:43, Serial1/0
     4.0.0.0/24 is subnetted, 1 subnets
O       4.4.4.0 [110/193] via 192.168.1.2, 00:15:43, Serial1/0
     192.168.1.0/24 is variably subnetted, 4 subnets, 2 masks
C       192.168.1.0/24 is directly connected, Serial1/0
O       192.168.1.3/32 [110/128] via 192.168.1.2, 00:15:43, Serial1/0
O       192.168.1.2/32 [110/64] via 192.168.1.2, 00:15:43, Serial1/0
O       192.168.1.4/32 [110/192] via 192.168.1.2, 00:15:43, Serial1/0</code>
</pre>
<p>You can see clearly above OSPF has inserted an extra hop via R2 for R1 for all our routers in the 192.168.1.0/24 segment. OSPF&#8217;s point-to-multipoint network type creates next hops to make the layer 3 topology mirror that of the layer 2 topology. </p>
<p>R1 looks great, let&#8217;s verify R4&#8217;s routing table and see if we can ping across the furthest spokes:</p>
<pre>
<code>R4#sh ip route | b Gateway
Gateway of last resort is not set

     1.0.0.0/24 is subnetted, 1 subnets
O       1.1.1.0 [110/193] via 192.168.1.3, 00:24:11, Serial1/0
     2.0.0.0/24 is subnetted, 1 subnets
O       2.2.2.0 [110/129] via 192.168.1.3, 00:24:11, Serial1/0
     3.0.0.0/24 is subnetted, 1 subnets
O       3.3.3.0 [110/65] via 192.168.1.3, 00:24:11, Serial1/0
     4.0.0.0/24 is subnetted, 1 subnets
C       4.4.4.0 is directly connected, FastEthernet0/0
     192.168.1.0/24 is variably subnetted, 4 subnets, 2 masks
O       192.168.1.1/32 [110/192] via 192.168.1.3, 00:24:11, Serial1/0
C       192.168.1.0/24 is directly connected, Serial1/0
O       192.168.1.3/32 [110/64] via 192.168.1.3, 00:24:11, Serial1/0
O       192.168.1.2/32 [110/128] via 192.168.1.3, 00:24:11, Serial1/0</code>
</pre>
<p>The routing table looks great! Let&#8217;s check reachability:</p>
<pre>
<code>R4#ping 1.1.1.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 1.1.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 20/47/136 ms</code>
</pre>
<p>Looks like we have full reachability! Awesome!</p>
<p>So whats the moral of this story?  On topologies that have <em>one</em> hub, make sure the hub becomes the DR by setting the ip ospf priority of the spokes to 0 (or use a network type that doesn&#8217;t require a DR!).</p>
<p>For a frame-relay topology that effectively has multiple hubs like our topology above we should use an OSPF network type that doesn&#8217;t require a DR.</p>
<p>If anybody has any other questions regarding OSPF networks and frame-relay, or has some weird topology that would make a great tutorial <a href="mailto:contactme@ardenpackeer.com">shoot me an email</a>.</p>
<p>HTH. Now get back to labs!</p>
<h3 class="mast">Summary:</h3>
<ul>
<li>For topologies where you have one hub, ensure the hub is the DR or use a network type that doesn&#8217;t require a DR</li>
<li>For topologies that have more than one hub, use a network type that doesn&#8217;t require a DR</li>
<li>In partial mesh topologies, the hubs should use a broadcast frame-relay map on DLCI&#8217;s to all connected spokes. This is to stop redundant broadcasts</li>
<li>In partial mesh topologies, the spokes should use a broadcast frame-relay map on DLCI&#8217;s to the hub only. This is to stop redundant broadcasts</li>
</ul>
<h3 class="mast">Resources:</h3>
<ul>
<li><a href="http://ardenpackeer.com/wp-content/uploads/2008/06/ospf2.net">Dynamips/Dynagen .net configuration file</a></li>
</ul>
<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-5/">Tutorial: OSPF Network Types and Frame Relay Part 5</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/zzdFFCX3gnxBRsafYmgFGx2wi2E/0/da"><img src="http://feedads.g.doubleclick.net/~a/zzdFFCX3gnxBRsafYmgFGx2wi2E/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/zzdFFCX3gnxBRsafYmgFGx2wi2E/1/da"><img src="http://feedads.g.doubleclick.net/~a/zzdFFCX3gnxBRsafYmgFGx2wi2E/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=lOkvGdb9UhQ:kFWXD77mBbQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=lOkvGdb9UhQ:kFWXD77mBbQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=lOkvGdb9UhQ:kFWXD77mBbQ:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=lOkvGdb9UhQ:kFWXD77mBbQ:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=lOkvGdb9UhQ:kFWXD77mBbQ:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=lOkvGdb9UhQ:kFWXD77mBbQ:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=lOkvGdb9UhQ:kFWXD77mBbQ:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=lOkvGdb9UhQ:kFWXD77mBbQ:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=lOkvGdb9UhQ:kFWXD77mBbQ:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/ardenpackeer/~4/lOkvGdb9UhQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-5/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
		<feedburner:origLink>http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-and-frame-relay-part-5/</feedburner:origLink></item>
		<item>
		<title>News: Antonie Henning Passed!</title>
		<link>http://feedproxy.google.com/~r/ardenpackeer/~3/axRI2N0k3-I/</link>
		<comments>http://ardenpackeer.com/asides/news-antonie-henning-passed/#comments</comments>
		<pubDate>Wed, 16 Jul 2008 23:13:25 +0000</pubDate>
		<dc:creator>Arden Packeer, CCIE #20716</dc:creator>
				<category><![CDATA[Asides]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[ccie]]></category>
		<category><![CDATA[lab]]></category>

		<guid isPermaLink="false">http://ardenpackeer.com/?p=236</guid>
		<description><![CDATA[Antonie Henning, the blogger behind the Last 40 days CCIE blog, has passed his CCIE lab. Great news! Head on over and congratulate him! Well deserved!
Read this article and more like it on ardenpackeer.com

Follow me on twitter: http://twitter.com/ardenpackeerNews: Antonie Henning Passed!
<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/asides/news-antonie-henning-passed/">News: Antonie Henning Passed!</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Antonie Henning, the blogger behind the <a href="http://last40days.wordpress.com">Last 40 days CCIE blog</a>, has passed his CCIE lab. Great news! <a href="http://last40days.wordpress.com/2008/07/16/ccie-21500/">Head on over and congratulate him</a>! Well deserved!</p>
<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/asides/news-antonie-henning-passed/">News: Antonie Henning Passed!</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/qR8xFuewV6BNzhTQUuWNEKwMeSk/0/da"><img src="http://feedads.g.doubleclick.net/~a/qR8xFuewV6BNzhTQUuWNEKwMeSk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/qR8xFuewV6BNzhTQUuWNEKwMeSk/1/da"><img src="http://feedads.g.doubleclick.net/~a/qR8xFuewV6BNzhTQUuWNEKwMeSk/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=axRI2N0k3-I:NsoYFiYQv9E:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=axRI2N0k3-I:NsoYFiYQv9E:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=axRI2N0k3-I:NsoYFiYQv9E:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=axRI2N0k3-I:NsoYFiYQv9E:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=axRI2N0k3-I:NsoYFiYQv9E:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=axRI2N0k3-I:NsoYFiYQv9E:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=axRI2N0k3-I:NsoYFiYQv9E:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=axRI2N0k3-I:NsoYFiYQv9E:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=axRI2N0k3-I:NsoYFiYQv9E:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/ardenpackeer/~4/axRI2N0k3-I" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ardenpackeer.com/asides/news-antonie-henning-passed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ardenpackeer.com/asides/news-antonie-henning-passed/</feedburner:origLink></item>
		<item>
		<title>CCIE Salary Survey</title>
		<link>http://feedproxy.google.com/~r/ardenpackeer/~3/DDmcPMlBNmE/</link>
		<comments>http://ardenpackeer.com/blog/ccie-salary-survey/#comments</comments>
		<pubDate>Tue, 08 Jul 2008 21:00:49 +0000</pubDate>
		<dc:creator>Arden Packeer, CCIE #20716</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[ccie]]></category>
		<category><![CDATA[ccieagent]]></category>
		<category><![CDATA[cisco]]></category>

		<guid isPermaLink="false">http://ardenpackeer.com/?p=234</guid>
		<description><![CDATA[I got an email this morning from <a href="http://www.ccieagent.com">Emmanuel Conde</a> asking this to be posted. I think a salary survey is a great idea and Emmanuel does a fantastic job servicing the CCIE community so I encourage everyone reading this to take the time, fill it out and <a href="mailto:eman@bridgeresourcing.com">send him a response. </a><p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/blog/ccie-salary-survey/">CCIE Salary Survey</a></p>
]]></description>
			<content:encoded><![CDATA[<p>I got an email this morning from <a href="http://www.ccieagent.com">Emmanuel Conde</a> asking this to be posted. I think a salary survey is a great idea and Emmanuel does a fantastic job servicing the CCIE community so I encourage everyone reading this to take the time, fill it out and <a href="mailto:eman@bridgeresourcing.com">send him a response. </a></p>
<h3 class="mast">Summer 2008 Salary Survey</h3>
<p><em><br />
<strong>July 2008</strong></p>
<p>
I have on several occasions attempted to get a true international CCIE salary survey done.  Most times I think these kinds of surveys are based on employer feedback.  So for my first international attempt I am going for the gold.  In putting together this survey I wanted to share with you the reason I think it is important.  I often state that we live in a global economy and that when thinking about your career CCIEs should consider the planet as their market.</p>
<p>I also feel that salaries for CCIEs should be in step with the demand for their certification number and services. Mostly I think we can do something about retention strategies and wages if we are aware of the real numbers from your peers.  I speak with many CCIEs and they are always asking, “What does a CCIE living in _______ make”?</p>
<p>While I was at Networkers this past week it was normal to have someone shake hands, introduce themselves and tell me they knew me from my activities on the internet.  I would then be asked, “What does a CCIE living in ________ make”?  Well let’s all find out together!  Since I ask that question of many CCIEs as I consider them for roles with my clients I get a good feel for the wages and comp plans.  There are many CCIEs out there who are not looking for a job though. </p>
<p>I ask candidates in my queue what they make and how they make it.  Seems there are a lot of different compensation plans which often blend variables like pre-sales commissions, productivity bonuses, utilization, and certification incentives.  Many CCIEs are not familiar with the cash flow beyond the base salary and annual bonus plans and turn a skeptical eye towards blended compensation plans.  This survey will cover all these types of compensation scenarios, if I get it right!
</p>
<p>This survey can also be accessed via my blog <a href="http://www.ccieagent.com">www.ccieagent.com</a> where you can respond anonymously.</p>
<p>(All information will remain in my possession with only the results being published not the names of the respondents.  I will not share your name and details with anyone or any organizations.  This information is being collected from you for you and will be published on my blog.)</p>
<ul>
<li> What state do you live in?</li>
<li> Gender?  (Female/Male)</li>
<li>How many years of experience do you have in Networking?</li>
<li>What is your base salary?</li>
<li>What is your bonus structure? (How much do you actually receive?)</li>
<li>Does your company have a retention strategy for CCIEs?</li>
<li>If yes then what are the best components of it?</li>
<li>Do you feel CCIE wages have kept up with demand?</li>
</ul>
<p>I look forward to your response.</p>
<p>Thanks</p>
<p>Eman (Emmanuel Conde)<br />
CCIE Agent™</p>
<p>
Bridge Resourcing Solutions             Bridge Resourcing Solutions<br />
4622 Weldin Rd                                  83 Victoria Street<br />
Wilmington, DE USA 19803                 LONDON SW1H 0HW UK<br />
USA Tel:  +1-302-438-1681                 UK Tel: +44 20 3008 7628
</p>
<p>Email: <a href="mailto:eman@bridgeresourcing.com">eman@bridgeresourcing.com</a><br />
Web:    <a href="http://www.bridgeresourcing.com">www.bridgeresourcing.com</a><br />
Blog:  <a href="http://www.ccieagent.com">www.ccieagent.com</a></em></p>
<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/blog/ccie-salary-survey/">CCIE Salary Survey</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/RoUdCxlDYMAbmGnqzhzgXtkyzbk/0/da"><img src="http://feedads.g.doubleclick.net/~a/RoUdCxlDYMAbmGnqzhzgXtkyzbk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/RoUdCxlDYMAbmGnqzhzgXtkyzbk/1/da"><img src="http://feedads.g.doubleclick.net/~a/RoUdCxlDYMAbmGnqzhzgXtkyzbk/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=DDmcPMlBNmE:PnwOdVV7N7Y:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=DDmcPMlBNmE:PnwOdVV7N7Y:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=DDmcPMlBNmE:PnwOdVV7N7Y:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=DDmcPMlBNmE:PnwOdVV7N7Y:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=DDmcPMlBNmE:PnwOdVV7N7Y:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=DDmcPMlBNmE:PnwOdVV7N7Y:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=DDmcPMlBNmE:PnwOdVV7N7Y:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=DDmcPMlBNmE:PnwOdVV7N7Y:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=DDmcPMlBNmE:PnwOdVV7N7Y:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/ardenpackeer/~4/DDmcPMlBNmE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ardenpackeer.com/blog/ccie-salary-survey/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://ardenpackeer.com/blog/ccie-salary-survey/</feedburner:origLink></item>
		<item>
		<title>News: Narbik Kocharians joins forces with IPexpert and Free Stuff!</title>
		<link>http://feedproxy.google.com/~r/ardenpackeer/~3/VCitj47Cf2U/</link>
		<comments>http://ardenpackeer.com/blog/news-narbik-kocharians-joins-forces-with-ipexpert-and-free-stuff/#comments</comments>
		<pubDate>Thu, 03 Jul 2008 21:49:16 +0000</pubDate>
		<dc:creator>Arden Packeer, CCIE #20716</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[blended learning solution]]></category>
		<category><![CDATA[bootcamp]]></category>
		<category><![CDATA[groupstudy]]></category>
		<category><![CDATA[ipexpert]]></category>
		<category><![CDATA[Narbik Kocharians]]></category>
		<category><![CDATA[Scott Morris]]></category>
		<category><![CDATA[voice]]></category>

		<guid isPermaLink="false">http://ardenpackeer.com/?p=233</guid>
		<description><![CDATA[<a href="http://www.imakenews.com/ipexpert/index000275640.cfm?x=bcWjLLl,bb3NBJpd,w">IPexpert release their newsletter</a> today, with some big news for the CCIE training sphere. After last weeks shakeup where <a href="http://ardenpackeer.com/blog/scott-morris-joins-internetwork-expert/">Scott Morris left for InternetworkExpert</a>, it looks like <a href="http://www.imakenews.com/ipexpert/e_article001137622.cfm?x=bcWjLLl,bb3NBJpd,w">IPexpert has joined forces with superstar Narbik Kocharians!</a> (Does this seem like a superstar trade to anyone else?)<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/blog/news-narbik-kocharians-joins-forces-with-ipexpert-and-free-stuff/">News: Narbik Kocharians joins forces with IPexpert and Free Stuff!</a></p>
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.imakenews.com/ipexpert/index000275640.cfm?x=bcWjLLl,bb3NBJpd,w">IPexpert release their newsletter</a> today, with some big news for the CCIE training sphere. After last weeks shakeup where <a href="http://ardenpackeer.com/blog/scott-morris-joins-internetwork-expert/">Scott Morris left for InternetworkExpert</a>, it looks like <a href="http://www.imakenews.com/ipexpert/e_article001137622.cfm?x=bcWjLLl,bb3NBJpd,w">IPexpert has joined forces with superstar Narbik Kocharians!</a> (Does this seem like a superstar trade to anyone else?)</p>
<p><a href="http://www.net-workbooks.com/workbooks.html#routingswitching">Narbik&#8217;s popular &#8220;Advanced CCIE R&#038;S &#8211; Technology Focused&#8221; workbook</a> can also now be bundled with IPexpert&#8217;s CCIE R&#038;S Blended Learning Solution. His workbooks will also be made compatible with Proctor Labs, matching the IPexpert topology. This will make it easier to get rack time for those working through his labs.</p>
<p>I&#8217;m a big believer in using multiple workbooks for CCIE preparation. You get different perspectives, as well as getting used to the different writing styles of questions. It also makes sure you don&#8217;t get comfortable with one vendor&#8217;s labs, layout etc. I&#8217;ve heard great things about Narbik&#8217;s workbooks both on groupstudy and everyone I&#8217;ve met that&#8217;s used them keeps raving about them.</p>
<p>The other big news is that the <a href="http://www.imakenews.com/ipexpert/e_article001140106.cfm?x=bcWjLLl,bb3NBJpd,w">Blended Learning Solutions are now free!</a> Anybody that books a bootcamp now gets the Blended Learning Solution for free! FREE?! I&#8217;m working through the Voice Blended Learning Solution (BLS) at the moment and the workbooks are fantastic. If its sounds like I am an IPexpert fanboy, its because I am. The level of detail in the explanations in the Voice BLS are great, and I can&#8217;t believe they would give it away for free! I am planning on attending the voice bootcamp when I am further along in the study, and I am glad you can apply the entire purchase price of your BLS toward a Boot Camp registration.</p>
<p>Looks like IPexpert are really trying to shake-up the CCIE training sphere. I wonder if some of the other vendors will now match IPexpert&#8217;s offer and follow suit?<br />
<strong><br />
Update:</strong> If you haven&#8217;t joined twitter, now is the time! I just got a tweet from <a href="http://twitter.com/ipexpert">IPexpert</a>:</p>
<p>&#8220;Stay focused on your &#8220;tweets&#8221; this month&#8230; we will be giving out 2,000 HOURS worth of Proctor Labs rack time&#8230; only to Twitter followers!&#8221;</p>
<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/blog/news-narbik-kocharians-joins-forces-with-ipexpert-and-free-stuff/">News: Narbik Kocharians joins forces with IPexpert and Free Stuff!</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/rFONoIKHGJn4mbx9tA-ss3U-hjo/0/da"><img src="http://feedads.g.doubleclick.net/~a/rFONoIKHGJn4mbx9tA-ss3U-hjo/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/rFONoIKHGJn4mbx9tA-ss3U-hjo/1/da"><img src="http://feedads.g.doubleclick.net/~a/rFONoIKHGJn4mbx9tA-ss3U-hjo/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=VCitj47Cf2U:ruw-hTKux9c:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=VCitj47Cf2U:ruw-hTKux9c:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=VCitj47Cf2U:ruw-hTKux9c:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=VCitj47Cf2U:ruw-hTKux9c:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=VCitj47Cf2U:ruw-hTKux9c:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=VCitj47Cf2U:ruw-hTKux9c:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=VCitj47Cf2U:ruw-hTKux9c:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=VCitj47Cf2U:ruw-hTKux9c:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=VCitj47Cf2U:ruw-hTKux9c:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/ardenpackeer/~4/VCitj47Cf2U" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ardenpackeer.com/blog/news-narbik-kocharians-joins-forces-with-ipexpert-and-free-stuff/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ardenpackeer.com/blog/news-narbik-kocharians-joins-forces-with-ipexpert-and-free-stuff/</feedburner:origLink></item>
		<item>
		<title>Blog: Cisco, the new CCIE Plaques suck!</title>
		<link>http://feedproxy.google.com/~r/ardenpackeer/~3/cHPMr-gMMuA/</link>
		<comments>http://ardenpackeer.com/blog/blog-cisco-the-new-ccie-plaques-suck/#comments</comments>
		<pubDate>Tue, 01 Jul 2008 08:38:05 +0000</pubDate>
		<dc:creator>Arden Packeer, CCIE #20716</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[CCIE Lab Study Tips]]></category>
		<category><![CDATA[Brandvia]]></category>
		<category><![CDATA[ccie]]></category>

		<guid isPermaLink="false">http://ardenpackeer.com/?p=231</guid>
		<description><![CDATA[I got my CCIE plaque in the mail yesterday.To be honest, I'm really disappointed. I wish they didn't get rid of the <a href="http://etherealmind.com/2008/07/01/ccie-medallion/">old ones (Greg I'm soooo jealous!)</a>. After all that hard work, this thing looks like its made out of plastic. What am I saying, it IS made out of plastic! Plastic with a bit of glass stuck on the front.  Bring back the old medallions. That is something you can show of with pride! Continue reading for a photo...<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/blog/blog-cisco-the-new-ccie-plaques-suck/">Blog: Cisco, the new CCIE Plaques suck!</a></p>
]]></description>
			<content:encoded><![CDATA[<p>I got my CCIE plaque in the mail yesterday:</p>
<div class="captionfull"><img src="http://ardenpackeer.com/wp-content/uploads/2008/07/ccieplaque.jpg" alt="New CCIE Plaque" title="ccieplaque"  /></div>
<p>To be honest, I&#8217;m really disappointed. </p>
<p>I wish they didn&#8217;t get rid of the <a href="http://etherealmind.com/2008/07/01/ccie-medallion/">old ones (Greg I&#8217;m soooo jealous!)</a>. After all that hard work, this thing looks like its made out of plastic. What am I saying, it IS made out of plastic! Plastic with a bit of glass stuck on the front.  Bring back the old medallions. That is something you can show with pride!</p>
<p>According to <a href="http://ccie-in-3-months.blogspot.com/2008/02/ccie-plaque-too-cheap-for-ccie.html">Tassos</a>, the company that made the old ones, <a href="http://www.brandvia.com/sub_portRecognition.html">Brandvia</a>, is still around. I&#8217;ll be sending them an email to see if can get one of those old school medallions&#8230;.</p>
<p>Seriously, Cisco, the new CCIE Plaques suck! </p>
<p>We pay $1400 a pop for the Exam (not to mention countless hours of blood sweat and tears), surely Cisco can make the prize at the end a little better than this!</p>
<p>Read this article and more like it on <a href="http://ardenpackeer.com">ardenpackeer.com</a>
<br>
Follow me on twitter: <a href="http://twitter.com/ardenpackeer">http://twitter.com/ardenpackeer</a><br/><br/><a href="http://ardenpackeer.com/blog/blog-cisco-the-new-ccie-plaques-suck/">Blog: Cisco, the new CCIE Plaques suck!</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/K56rToBDrfN5qQM1iTfwCzX5weU/0/da"><img src="http://feedads.g.doubleclick.net/~a/K56rToBDrfN5qQM1iTfwCzX5weU/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/K56rToBDrfN5qQM1iTfwCzX5weU/1/da"><img src="http://feedads.g.doubleclick.net/~a/K56rToBDrfN5qQM1iTfwCzX5weU/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=cHPMr-gMMuA:K--ULFOzy_4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=cHPMr-gMMuA:K--ULFOzy_4:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=cHPMr-gMMuA:K--ULFOzy_4:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=cHPMr-gMMuA:K--ULFOzy_4:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=cHPMr-gMMuA:K--ULFOzy_4:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=cHPMr-gMMuA:K--ULFOzy_4:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=cHPMr-gMMuA:K--ULFOzy_4:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/ardenpackeer?a=cHPMr-gMMuA:K--ULFOzy_4:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/ardenpackeer?i=cHPMr-gMMuA:K--ULFOzy_4:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/ardenpackeer/~4/cHPMr-gMMuA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ardenpackeer.com/blog/blog-cisco-the-new-ccie-plaques-suck/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		<feedburner:origLink>http://ardenpackeer.com/blog/blog-cisco-the-new-ccie-plaques-suck/</feedburner:origLink></item>
	</channel>
</rss>

