<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><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>evilrouters.net</title>
	
	<link>http://evilrouters.net</link>
	<description>im in ur datacentrz configurin' ur routerz</description>
	<lastBuildDate>Fri, 10 Jul 2009 12:32:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</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" href="http://feeds.feedburner.com/evilrouters" type="application/rss+xml" /><feedburner:emailServiceId>evilrouters</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
		<title>Configuring MD5 Authentication for BGP Peers</title>
		<link>http://feedproxy.google.com/~r/evilrouters/~3/Un2YDY99IW4/</link>
		<comments>http://evilrouters.net/2009/07/10/configuring-md5-authentication-for-bgp-peers/#comments</comments>
		<pubDate>Fri, 10 Jul 2009 12:32:20 +0000</pubDate>
		<dc:creator>jlgaddis</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[bgp]]></category>
		<category><![CDATA[ccnp]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[labs]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://evilrouters.net/2009/07/10/configuring-md5-authentication-for-bgp-peers/</guid>
		<description><![CDATA[I got an e-mail recently from a reader who asked me about how to set up MD5 authentication between a pair of BGP peers, so I thought I&#8217;d do a quick write-up and example.

Setting up MD5 authentication is really simple.  For our example, we&#8217;ll use a pair of routers connected over their serial 0/0 [...]]]></description>
			<content:encoded><![CDATA[<p>I got an e-mail recently from a reader who asked me about how to set up MD5 authentication between a pair of BGP peers, so I thought I&#8217;d do a quick write-up and example.</p>

<p>Setting up MD5 authentication is really simple.  For our example, we&#8217;ll use a pair of routers connected over their serial 0/0 interfaces:</p>

<p><img src="http://evilrouters.net/wp-content/uploads/2009/07/p2p-r5-r7.png" alt="" border="0"></p>

<p>In addition to the addressing information in the diagram:<ul><li>we&#8217;ll configure R5&#8217;s loopback 0 interface with IP address 5.5.5.5/24,</li>
<li>we&#8217;ll configure R7&#8217;s loopback 0 interface with IP address 7.7.7.7/24,</li>
<li>we&#8217;ll advertise both of those networks in BGP,</li>
<li>R5 is in AS 65005 and R7 is in AS 65007, and</li>
<li>we&#8217;ll use a password of &#8220;8F3NHBrisX&#8221;.</li></ul></p>

<p>This is nearly identical to a previous write-up, &#8220;<a href="http://evilrouters.net/2008/11/29/configuring-basic-bgp/">Configuring Basic BGP</a>&#8220;, with the authentication added in.</p>

<p>First, let&#8217;s configure the loopback 0 interfaces:</p>

<pre>R5# <b>configure terminal</b>
R5(config)# <b>interface loopback 0</b>
R5(config-if)# <b>ip address 5.5.5.5 255.255.255.0</b></pre>

<pre>R7# <b>configure terminal</b>
R7(config)# <b>interface loopback 0</b>
R7(config-if)# <b>ip address 7.7.7.7 255.255.255.0</b></pre>

<p>Now bring up the connection between R5 and R7:</p>

<pre>R5(config)# <b>interface serial 0/0</b>
R5(config-if)# <b>ip address 172.16.57.5 255.255.255.0</b>
R5(config-if)# <b>no shutdown</b></pre>

<pre>R7(config-if)# <b>interface serial 0/0</b>
R7(config-if)# <b>ip address 172.16.57.7 255.255.255.0</b>
R7(config-if)# <b>no shutdown</b></pre>

<p>Make sure we have connectivity:</p>

<pre>R5(config-if)# <b>do ping 172.16.57.7</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.57.7, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/4 ms</pre>

<p>Now we can begin configuring BGP.  R5 will be in AS 65005, advertise the 5.5.5.0/24 network, and peer with 172.16.57.7 (AS 65007) using our password &#8220;8F3NHBrisX&#8221;:</p>

<pre>R5(config-if)# <b>router bgp 65005</b>
R5(config-router)# <b>network 5.5.5.0 mask 255.255.255.0</b>
R5(config-router)# <b>neighbor 172.16.57.7 remote-as 65007</b>
R5(config-router)# <b>neighbor 172.16.57.7 password 8F3NHBrisX</b></pre>

<p>We&#8217;ll configure R7 in a similar manner.  It is in AS 65007, will advertise the 7.7.7.0/24 network, and peer with 172.16.57.5 (AS 65005) using the same password:</p>

<pre>R7(config-if)# <b>router bgp 65007</b>
R7(config-router)# <b>network 7.7.7.0 mask 255.255.255.0</b>
R7(config-router)# <b>neighbor 172.16.57.5 remote-as 65005</b>
R7(config-router)# <b>neighbor 172.16.57.5 password 8F3NHBrisX</b></pre>

<p>We&#8217;ll see the BGP adjacency come up&#8230;</p>

<pre>R7(config-router)#
*Mar  1 00:05:31.191: %BGP-5-ADJCHANGE: neighbor 172.16.57.5 Up</pre>

<p>&#8230;and can see that we&#8217;re exchanging routes:</p>

<pre>R7(config-router)# <b>do show ip route bgp</b>
     5.0.0.0/24 is subnetted, 1 subnets
B       5.5.5.0 [20/0] via 172.16.57.5, 00:01:07</pre>

<p>We should now be able to ping loopback to loopback:</p>

<pre>R7(config-router)# <b>do ping 5.5.5.5 source 7.7.7.7</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 5.5.5.5, timeout is 2 seconds:
Packet sent with a source address of 7.7.7.7 
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/3/4 ms</pre>

<p>Here&#8217;s the whole thing, from start to finish:</p>

<div id="media">
            <object id="csSWF" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="644" height="378" codebase="http://active.macromedia.com/flash7/cabs/ swflash.cab#version=9,0,28,0">
                <param name="src" value="http://evilrouters.net/wp-content/uploads/2009/07/configuring-md5-authentication-for-bgp-peers.swf"/>
                <param name="bgcolor" value="#1a1a1a"/>
                <param name="quality" value="best"/>
                <param name="allowScriptAccess" value="always"/>
                <param name="allowFullScreen" value="true"/>
                <param name="scale" value="showall"/>
                <param name="flashVars" value="autostart=false"/>
                <embed name="csSWF" src="http://evilrouters.net/wp-content/uploads/2009/07/configuring-md5-authentication-for-bgp-peers.swf" width="644" height="378" bgcolor="#1a1a1a" quality="best" allowScriptAccess="always" allowFullScreen="true" scale="showall" flashVars="autostart=false" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed>
            </object>
</div>
<img src="http://feeds.feedburner.com/~r/evilrouters/~4/Un2YDY99IW4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://evilrouters.net/2009/07/10/configuring-md5-authentication-for-bgp-peers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://evilrouters.net/2009/07/10/configuring-md5-authentication-for-bgp-peers/</feedburner:origLink></item>
		<item>
		<title>Configuring Basic NAT with overloading</title>
		<link>http://feedproxy.google.com/~r/evilrouters/~3/BuTKmQ5KGuY/</link>
		<comments>http://evilrouters.net/2009/07/09/configuring-basic-nat-with-overloading/#comments</comments>
		<pubDate>Thu, 09 Jul 2009 21:11:04 +0000</pubDate>
		<dc:creator>jlgaddis</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[ccna]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[labs]]></category>
		<category><![CDATA[networking]]></category>

		<guid isPermaLink="false">http://evilrouters.net/2009/07/09/configuring-basic-nat-with-overloading/</guid>
		<description><![CDATA[Here&#8217;s a lab that might be helpful for those working towards the CCNA examination.

We have a simple topology consisting of three routers.  R8 will simply be used as a host on our &#8220;internal&#8221; network and R7 will be used as our border router (the serial connection between R5 and R7 will represent our connection [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s a lab that might be helpful for those working towards the CCNA examination.</p>

<p>We have a simple topology consisting of three routers.  R8 will simply be used as a host on our &#8220;internal&#8221; network and R7 will be used as our border router (the serial connection between R5 and R7 will represent our connection to the Internet):</p>

<p>The goal is to NAT any traffic originating on our internal network (R8) as it leaves the serial 0/0 interface on R7 on it&#8217;s way to the &#8220;Internet&#8221; (R5).  Overloading (having multiple clients all NAT&#8217;d to the same IP address) is probably the most common implementation (especially for those of us who run NAT on a Cisco box at home!).</p>

<p><img src="http://evilrouters.net/wp-content/uploads/2009/07/basic-nat.png" alt="" border="0"></p>

<p>Let&#8217;s get basic connectivity working first:</p>

<pre>R5# <b>configure terminal</b>
R5(config)# <b>interface serial 0/0</b>
R5(config-if)# <b>ip address 172.16.57.5 255.255.255.0</b>
R5(config-if)# <b>no shutdown</b></pre>

<pre>R7# <b>configure terminal</b>
R7(config)# <b>interface serial 0/0</b>
R7(config-if)# <b>ip address 172.16.57.7 255.255.255.0</b>
R7(config-if)# <b>no shutdown</b>
R7(config-if)# <b>interface fastethernet 0/1</b>
R7(config-if)# <b>ip address 172.16.78.7 255.255.255.0</b>
R7(config-if)# <b>no shutdown</b></pre>

<pre>R8# <b>configure terminal</b>
R8(config)# <b>no ip routing</b>
R8(config)# <b>interface fastethernet 0/1</b>
R8(config-if)# <b>ip address 172.16.78.8 255.255.255.0</b>
R8(config-if)# <b>no shutdown</b>
R8(config-if)# <b>ip default-gateway 172.16.78.7</b></pre>

<p>On R7, let&#8217;s verify we can ping both R5 and R8:</p>

<pre>R7(config-if)# <b>do ping 172.16.57.5</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.57.5, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/3/4 ms
R7(config-if)# <b>do ping 172.16.78.8</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.78.8, timeout is 2 seconds:
..!!!
Success rate is 60 percent (3/5), round-trip min/avg/max = 1/2/4 ms</pre>

<p>Alright, looks good.  Now we can start with configuring NAT.  First, let&#8217;s define our NAT inside and NAT outside interfaces (fastethernet 0/1 and serial 0/0, respectively):</p>

<pre>R7(config-if)# <b>interface fastethernet 0/1</b>
R7(config-if)# <b>ip nat inside</b>
R7(config-if)# <b>interface serial 0/0</b>
R7(config-if)# <b>ip nat outside</b></pre>

<p>Next, we need to create an access-list to match the &#8220;internal&#8221; IP addresses (the ones we want to be NAT&#8217;d).  In this case, our internal network is 172.168.78.0/24.  Our ACL to match that network is simple:</p>

<pre>R7(config-if)# <b>ip access-list standard NAT</b>
R7(config-std-nacl)# <b>permit 172.16.78.0 0.0.0.255</b></pre>

<p>Last, we&#8217;ll use the <i>&#8220;ip nat &#8230;&#8221;</i> command to actually instruct the router on what we want to NAT:</p>

<pre>R7(config)# <b>ip nat inside source list NAT interface serial 0/0 overload</b></pre>

<p>This tells IOS that any packets coming in the &#8220;inside&#8221; interface (fastethernet 0/1) that are permitted by the named access-list &#8220;NAT&#8221; will have their &#8220;source&#8221; address translated to the IP address assigned to &#8220;interface serial 0/0&#8243;.  In addition, NAT translations will be overloaded &#8212; that allows multiple devices inside to be translated to the same IP address.</p>

<p>To verify that NAT is working properly, let&#8217;s start a <i>&#8220;debug ip icmp&#8221;</i> on R5.  Then, we&#8217;ll attempt to ping R5 from R8 and see what happens:</p>

<pre>R5# <b>debug ip icmp</b> 
ICMP packet debugging is on</pre>

<pre>R8(config)# <b>do ping 172.16.57.5</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.57.5, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/8 ms</pre>

<p>We see that our pings were successful.  What did R5 see?</p>

<pre>R5# <b>debug ip icmp</b> 
ICMP packet debugging is on
R5#
*Mar  1 19:07:25.603: ICMP: echo reply sent, src 172.16.57.5, dst 172.16.57.7
*Mar  1 19:07:25.611: ICMP: echo reply sent, src 172.16.57.5, dst 172.16.57.7
*Mar  1 19:07:25.615: ICMP: echo reply sent, src 172.16.57.5, dst 172.16.57.7
*Mar  1 19:07:25.619: ICMP: echo reply sent, src 172.16.57.5, dst 172.16.57.7
*Mar  1 19:07:25.623: ICMP: echo reply sent, src 172.16.57.5, dst 172.16.57.7</pre>

<p>So R5 saw the echo requests and sent echo replies back, but notice the IP addresses.  The source IP address of the echo replies is 172.16.57.5 (R5), but the destination IP address is 172.16.57.7 (R7).  We can be sure that NAT is working, in part because R5 does not have a valid route to R8&#8217;s &#8220;real&#8221; IP address, 172.16.78.8:</p>

<pre>R5# <b>show ip route | begin Gateway</b>
Gateway of last resort is not set

     172.16.0.0/24 is subnetted, 1 subnets
C       172.16.57.0 is directly connected, Serial0/0
R5# <b>ping 172.16.78.8</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.78.8, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)</pre>

<p>Be sure to check out the NAT translation table on R7, which should show a valid translation for the ICMP traffic that originated at R8:</p>

<pre>R7(config)# <b>do show ip nat translations</b>
Pro Inside global      Inside local       Outside local      Outside global
icmp 172.16.57.7:0     172.16.78.8:0      172.16.57.5:0      172.16.57.5:0</pre>

<p>Finally, we can use <i>&#8220;debug ip nat&#8221;</i> on R7 to see what&#8217;s happening there.  Let&#8217;s turn that on, then ping R5 from R8 again:</p>

<pre>R7# <b>debug ip nat</b> 
IP NAT debugging is on</pre>

<pre>R8(config)# <b>do ping 172.16.57.5</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.57.5, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/8 ms</pre>

<p>And what do we see on R7?</p>

<pre>R7#
*Mar  1 19:15:13.695: NAT: s=172.16.78.8->172.16.57.7, d=172.16.57.5 [5]
*Mar  1 19:15:13.699: NAT*: s=172.16.57.5, d=172.16.57.7->172.16.78.8 [5]
*Mar  1 19:15:13.703: NAT*: s=172.16.78.8->172.16.57.7, d=172.16.57.5 [6]
*Mar  1 19:15:13.707: NAT*: s=172.16.57.5, d=172.16.57.7->172.16.78.8 [6]
*Mar  1 19:15:13.707: NAT*: s=172.16.78.8->172.16.57.7, d=172.16.57.5 [7]
*Mar  1 19:15:13.711: NAT*: s=172.16.57.5, d=172.16.57.7->172.16.78.8 [7]
*Mar  1 19:15:13.715: NAT*: s=172.16.78.8->172.16.57.7, d=172.16.57.5 [8]
*Mar  1 19:15:13.715: NAT*: s=172.16.57.5, d=172.16.57.7->172.16.78.8 [8]
*Mar  1 19:15:13.719: NAT*: s=172.16.78.8->172.16.57.7, d=172.16.57.5 [9]
R7#
*Mar  1 19:15:13.723: NAT*: s=172.16.57.5, d=172.16.57.7->172.16.78.8 [9]
R7#</pre>

<p>We can see that the source IP address 172.16.78.8 (R8) is being translated to 172.16.57.7 (R7&#8217;s serial 0/0 interface).  Success!</p>
<img src="http://feeds.feedburner.com/~r/evilrouters/~4/BuTKmQ5KGuY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://evilrouters.net/2009/07/09/configuring-basic-nat-with-overloading/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://evilrouters.net/2009/07/09/configuring-basic-nat-with-overloading/</feedburner:origLink></item>
		<item>
		<title>Configuring Frame Relay, Part 4</title>
		<link>http://feedproxy.google.com/~r/evilrouters/~3/scWgCypEnO0/</link>
		<comments>http://evilrouters.net/2009/07/08/configuring-frame-relay-part-4/#comments</comments>
		<pubDate>Wed, 08 Jul 2009 12:30:42 +0000</pubDate>
		<dc:creator>jlgaddis</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[ccna]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[labs]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[ospf]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://evilrouters.net/2009/07/08/configuring-frame-relay-part-4/</guid>
		<description><![CDATA[Alright, we&#8217;ve finally made it to the last of the four-part series on configuring frame-relay.  If you haven&#8217;t been following along, you may want to check out part one, part two, and part three before continuing.

In part four, we&#8217;ll continue on where we left off in part three.  Our topology is shown here:



OSPF [...]]]></description>
			<content:encoded><![CDATA[<p>Alright, we&#8217;ve finally made it to the last of the four-part series on configuring frame-relay.  If you haven&#8217;t been following along, you may want to check out <a href="http://evilrouters.net/2009/05/18/configuring-frame-relay-part-1/">part one</a>, <a href="http://evilrouters.net/2009/05/30/configuring-frame-relay-part-2/">part two</a>, and <a href="http://evilrouters.net/2009/07/07/configuring-frame-relay-part-3/">part three</a> before continuing.</p>

<p>In part four, we&#8217;ll continue on where we left off in part three.  Our topology is shown here:</p>

<p><img src="http://evilrouters.net/wp-content/uploads/2009/07/basic-frame-relay-multipoint-and-p2p.png" alt="" border="0"></p>

<p>OSPF over frame-relay presents some unique challenges, depending on just how your frame-relay network is architected.  Ours is pretty straightforward &#8212; we have a simple hub-and-spoke network (R1/R2/R3) as well as a point-to-point connection (R1/R4).  We need full reachability between all of these routers, so it&#8217;s time to add in some OSPF.</p>

<blockquote><p><b>NOTE:</b> <a href="http://ardenpackeer.com/about/">Arden Packeer</a>, CCIE 20716 wrote up an <b>excellent</b> five-part series entitled &#8220;<a href="http://ardenpackeer.com/routing-protocols/tutorial-ospf-network-types-frame-relay-series/">OSPF Network Types &#038; Frame-Relay Series</a>&#8220;.  If you&#8217;re working with frame-relay and OSPF, I would highly recommend you read them.  Because Arden did such a wonderful job (thanks!), I won&#8217;t bother repeating what he has already said.</p></blockquote>

<p>In this article, we&#8217;re going to use both point-to-multipoint (R1/R2/R3) and point-to-point (R1/R4) to gain us full reachability throughout our routing domain.  I&#8217;m a big fan of keeping things simple, and we can accomplish our goal with a minimum of effort.</p>

<p>On all routers, we&#8217;ll tell OSPF that we want all interfaces to participate in OSPF (in area 0).  On R1, R2, and R3&#8217;s serial 0/0 interfaces, we&#8217;ll also need to specify that we&#8217;re using the point-to-multipoint network type.  Let&#8217;s configure the routers, starting with R1:</p>

<pre>R1# <b>configure terminal</b>
R1(config-router)# <b>interface serial 0/0</b>
R1(config-if)# <b>ip ospf network point-to-multipoint</b>
R1(config)# <b>router ospf 1</b>
R1(config-router)# <b>network 0.0.0.0 255.255.255.255 area 0</b></pre>

<pre>R2# <b>configure terminal</b>
R2(config-router)# <b>interface serial 0/0</b>
R2(config-if)# <b>ip ospf network point-to-multipoint</b>
R2(config)# <b>router ospf 1</b>
R2(config-router)# <b>network 0.0.0.0 255.255.255.255 area 0</b></pre>

<pre>R3# <b>configure terminal</b>
R3(config-router)# <b>interface serial 0/0</b>
R3(config-if)# <b>ip ospf network point-to-multipoint</b>
R3(config)# <b>router ospf 1</b>
R3(config-router)# <b>network 0.0.0.0 255.255.255.255 area 0</b></pre>

<p>After giving time for the adjacencies to come up, we can verify proper operation on R1:</p>

<pre>R1(config-if)# <b>do show ip ospf neighbor</b>

Neighbor ID     Pri   State           Dead Time   Address         Interface
172.16.123.3      0   FULL/  -        00:01:59    172.16.123.3    Serial0/0
172.16.123.2      0   FULL/  -        00:01:34    172.16.123.2    Serial0/0</pre>

<p>Now, let&#8217;s configure OSPF on R4:</p>

<pre>R4# <b>configure terminal</b>
R4(config)# <b>router ospf 1</b>
R4(config-router)# <b>network 0.0.0.0 255.255.255.255 area 0</b></pre>

<p>On R4, we should now see routes to all other devices and networks:</p>

<pre>R4(config-router)# <b>do show ip route | begin Gateway</b>
Gateway of last resort is not set

     172.16.0.0/16 is variably subnetted, 4 subnets, 2 masks
C       172.16.14.0/24 is directly connected, Serial0/0.14
O       172.16.123.3/32 [110/128] via 172.16.14.1, 00:00:42, Serial0/0.14
O       172.16.123.2/32 [110/128] via 172.16.14.1, 00:00:42, Serial0/0.14
O       172.16.123.1/32 [110/64] via 172.16.14.1, 00:00:42, Serial0/0.14</pre>

<p>Let&#8217;s verify we have full reachability:</p>

<pre>R4(config-router)# <b>do ping 172.16.123.1</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.123.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/5/8 ms
R4(config-router)# <b>do ping 172.16.123.2</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.123.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 8/8/12 ms
R4(config-router)# <b>do ping 172.16.123.3</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.123.3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 8/8/12 ms</pre>

<p>Success!</p>

<div id="media">
            <object id="csSWF" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="378" codebase="http://active.macromedia.com/flash7/cabs/ swflash.cab#version=9,0,28,0">
                <param name="src" value="http://evilrouters.net/wp-content/uploads/2009/07/configuring-frame-relay-part-4.swf"/>
                <param name="bgcolor" value="#1a1a1a"/>
                <param name="quality" value="best"/>
                <param name="allowScriptAccess" value="always"/>
                <param name="allowFullScreen" value="true"/>
                <param name="scale" value="showall"/>
                <param name="flashVars" value="autostart=false"/>
                <embed name="csSWF" src="http://evilrouters.net/wp-content/uploads/2009/07/configuring-frame-relay-part-4.swf" width="640" height="378" bgcolor="#1a1a1a" quality="best" allowScriptAccess="always" allowFullScreen="true" scale="showall" flashVars="autostart=false" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed>
            </object>
</div>
<img src="http://feeds.feedburner.com/~r/evilrouters/~4/scWgCypEnO0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://evilrouters.net/2009/07/08/configuring-frame-relay-part-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://evilrouters.net/2009/07/08/configuring-frame-relay-part-4/</feedburner:origLink></item>
		<item>
		<title>Configuring Frame-Relay, Part 3</title>
		<link>http://feedproxy.google.com/~r/evilrouters/~3/2uVdpmvrLio/</link>
		<comments>http://evilrouters.net/2009/07/07/configuring-frame-relay-part-3/#comments</comments>
		<pubDate>Tue, 07 Jul 2009 19:51:59 +0000</pubDate>
		<dc:creator>jlgaddis</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[ccna]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[labs]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://evilrouters.net/?p=980</guid>
		<description><![CDATA[Okay, after much delay here&#8217;s part 3 of the &#8220;Configuring Frame-Relay&#8221; series.  In part 3, we&#8217;ll combine what we&#8217;ve learned from part one and part two and work with this topology:



As you can see from the diagram, we&#8217;ll be using the physical serial 0/0 interfaces to connect R1, R2, and R3.  In addition, [...]]]></description>
			<content:encoded><![CDATA[<p>Okay, after much delay here&#8217;s part 3 of the &#8220;Configuring Frame-Relay&#8221; series.  In part 3, we&#8217;ll combine what we&#8217;ve learned from <a href="http://evilrouters.net/2009/05/18/configuring-frame-relay-part-1/">part one</a> and <a href="http://evilrouters.net/2009/05/30/configuring-frame-relay-part-2/">part two</a> and work with this topology:</p>

<p><img src="http://evilrouters.net/wp-content/uploads/2009/07/basic-frame-relay-multipoint-and-p2p.png" alt="" border="0"></p>

<p>As you can see from the diagram, we&#8217;ll be using the physical serial 0/0 interfaces to connect R1, R2, and R3.  In addition, we&#8217;ve added a new router, R4, to the diagram.  R1 and R4 will be connected over a point-to-point subinterface (serial 0/0.14).  The purpose of this part three is to show how we can use both the physical interface and a point-to-point subinterface at the same time (we could also add a point-to-multipoint subinterface if we wanted, but we&#8217;ll save that for later).</p>

<p>The initial configurations for R1, R2, and R3 will be identical to what we saw in <a href="http://evilrouters.net/2009/05/18/configuring-frame-relay-part-1/">part one</a>.  If you haven&#8217;t already viewed the video in part one, I recommend you do that now.</p>

<p>For the sake of completeness, here are the initial configurations for the hub-and-spoke portion of our frame relay network:</p>

<pre>R1# <b>configure terminal</b>
R1(config)# <b>interface serial 0/0</b>
R1(config-if)# <b>encapsulation frame-relay</b>
R1(config-if)# <b>no frame-relay inverse-arp</b>
R1(config-if)# <b>ip address 172.16.123.1 255.255.255.0</b>
R1(config-if)# <b>frame-relay map ip 172.16.123.2 102 broadcast</b>
R1(config-if)# <b>frame-relay map ip 172.16.123.3 103 broadcast</b>
R1(config-if)# <b>no shutdown</b></pre>

<pre>R2# <b>configure terminal</b>
R2(config)# <b>interface serial 0/0</b>
R2(config-if)# <b>encapsulation frame-relay</b>
R2(config-if)# <b>no frame-relay inverse-arp</b>
R2(config-if)# <b>ip address 172.16.123.2 255.255.255.0</b>
R2(config-if)# <b>frame-relay map ip 172.16.123.1 201 broadcast</b>
R2(config-if)# <b>frame-relay map ip 172.16.123.3 201</b>
R2(config-if)# <b>no shutdown</b></pre>

<pre>R3# <b>configure terminal</b>
R3(config)# <b>interface serial 0/0</b>
R3(config-if)# <b>encapsulation frame-relay</b>
R3(config-if)# <b>no frame-relay inverse-arp</b>
R3(config-if)# <b>ip address 172.16.123.3 255.255.255.0</b>
R3(config-if)# <b>frame-relay map ip 172.16.123.1 301 broadcast</b>
R3(config-if)# <b>frame-relay map ip 172.16.123.2 301</b>
R3(config-if)# <b>no shutdown</b></pre>

<p>With this portion up and running (make sure to verify reachability!), we can get to work bringing up the point-to-point connection between R1 and R4.  Let&#8217;s start with R1.  The encapsulation on the physical interface is already configured, so we can skip that part and jump straight in:</p>

<pre>R1(config-if)# <b>interface serial 0/0.14 point-to-point</b>
R1(config-subif)# <b>frame-relay interface-dlci 104</b>
R1(config-fr-dlci)# <b>ip address 172.16.14.1 255.255.255.0</b></pre>

<p>Easy enough, right?  Now let&#8217;s set up R4:</p>

<pre>R4# <b>configure terminal</b>
R4(config)# <b>interface serial 0/0</b>
R4(config-if)# <b>encapsulation frame-relay</b>
R4(config-if)# <b>no shutdown</b>
R4(config-if)# <b>interface serial 0/0.14 point-to-point</b>
R4(config-subif)# <b>frame-relay interface-dlci 401</b>
R4(config-fr-dlci)# <b>ip address 172.16.14.4 255.255.255.0</b></pre>

<p>Since we&#8217;ve already saw the video in <a href="http://evilrouters.net/2009/05/30/configuring-frame-relay-part-2/">part two</a>, this is a piece of cake as well.  At this point, we should be able to ping R1 from R4 and vice versa.  Verify:</p>

<pre>R4(config-subif)# <b>do ping 172.16.14.1</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.14.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/5/8 ms</pre>

<pre>R1(config-subif)# <b>do ping 172.16.14.4</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.14.4, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/5/8 ms</pre>

<p>Success!  Our configuration is now complete.  Here&#8217;s what the routing table looks like on R1:</p>

<pre>R1(config-subif)# <b>do show ip route | begin Gateway</b>
Gateway of last resort is not set

     172.16.0.0/24 is subnetted, 2 subnets
C       172.16.14.0 is directly connected, Serial0/0.14
C       172.16.123.0 is directly connected, Serial0/0</pre>

<p>Note that we don&#8217;t have &#8220;full reachability&#8221;, however.  While R1 can talk to all the other routers, R2 and R3 and effectively segmented from R4 &#8212; they don&#8217;t have a route back and forth.  We&#8217;ll address that in part four, where we&#8217;ll continue on and configure OSPF throughout our frame-relay network.</p>

<p>Here, for your viewing pleasure, is a video walking through the complete configuration from start to finish (without narration this time):</p>

<div id="media">
            <object id="csSWF" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="378" codebase="http://active.macromedia.com/flash7/cabs/ swflash.cab#version=9,0,28,0">
                <param name="src" value="http://evilrouters.net/wp-content/uploads/2009/07/configuring-frame-relay-part-3.swf"/>
                <param name="bgcolor" value="#1a1a1a"/>
                <param name="quality" value="best"/>
                <param name="allowScriptAccess" value="always"/>
                <param name="allowFullScreen" value="true"/>
                <param name="scale" value="showall"/>
                <param name="flashVars" value="autostart=false"/>
                <embed name="csSWF" src="http://evilrouters.net/wp-content/uploads/2009/07/configuring-frame-relay-part-3.swf" width="640" height="378" bgcolor="#1a1a1a" quality="best" allowScriptAccess="always" allowFullScreen="true" scale="showall" flashVars="autostart=false" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed>
            </object>
</div>
<img src="http://feeds.feedburner.com/~r/evilrouters/~4/2uVdpmvrLio" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://evilrouters.net/2009/07/07/configuring-frame-relay-part-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://evilrouters.net/2009/07/07/configuring-frame-relay-part-3/</feedburner:origLink></item>
		<item>
		<title>Using distribute-list to filter RIP updates</title>
		<link>http://feedproxy.google.com/~r/evilrouters/~3/FQE3mk08pmE/</link>
		<comments>http://evilrouters.net/2009/07/06/using-distribute-list-to-filter-rip-updates/#comments</comments>
		<pubDate>Tue, 07 Jul 2009 02:45:49 +0000</pubDate>
		<dc:creator>jlgaddis</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[ccnp]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[labs]]></category>
		<category><![CDATA[networking]]></category>

		<guid isPermaLink="false">http://evilrouters.net/2009/07/06/using-distribute-list-to-filter-rip-updates/</guid>
		<description><![CDATA[Now that we have RIP authentication working, let&#8217;s take a look at how we can use the &#8220;distribute-list&#8221; to suppress network advertisements.

In this lab, we have three routers.  R1 and R2 are connected via their serial 0/0 interfaces, and R2 and R3 are connected over their fast ethernet 0/1 interfaces:



R1 will have four loopback [...]]]></description>
			<content:encoded><![CDATA[<p>Now that we have <a href="http://evilrouters.net/2009/07/04/rip-authentication/">RIP authentication</a> working, let&#8217;s take a look at how we can use the <i>&#8220;distribute-list&#8221;</i> to suppress network advertisements.</p>

<p>In this lab, we have three routers.  R1 and R2 are connected via their serial 0/0 interfaces, and R2 and R3 are connected over their fast ethernet 0/1 interfaces:</p>

<p><img src="http://evilrouters.net/wp-content/uploads/2009/07/distribute-lists.png" alt="" border="0"></p>

<p>R1 will have four loopback interfaces that we&#8217;ll use to simulate connected networks:<ul><li>10.1.1.1/24</li>
<li>10.1.2.1/24</li>
<li>10.1.3.1/24</li>
<li>10.1.4.1/24</li></ul></p>

<p>We&#8217;ll just use s0/0 and fa0/1 on R2 and fa0/1 on R3.</p>

<p>Let&#8217;s bring up R1 and R2&#8217;s serial interfaces&#8230;</p>

<pre>R1# <b>configure terminal</b>
R1(config)# <b>interface serial 0/0</b>
R1(config-if)# <b>ip address 172.16.12.1 255.255.255.0</b>
R1(config-if)# <b>no shutdown</b></pre>

<pre>R2# <b>configure terminal</b>
R2(config)# <b>interface serial 0/0</b>
R2(config-if)# <b>ip address 172.16.12.2 255.255.255.0</b>
R2(config-if)# <b>no shutdown</b></pre>

<p>&#8230;and the fast ethernet interfaces on R2 and R3&#8230;</p>

<pre>R2(config-if)# <b>interface fastethernet 0/1</b>
R2(config-if)# <b>ip address 172.16.23.2 255.255.255.0</b>
R2(config-if)# <b>no shutdown</b></pre>

<pre>R3# <b>configure terminal</b>
R3(config)# <b>interface fastethernet 0/1</b>
R3(config-if)# <b>ip address 172.16.23.3 255.255.255.0</b>
R3(config-if)# <b>no shutdown</b></pre>

<p>On R2, let&#8217;s verify we can ping both R1 and R3:</p>

<pre>R2(config-if)# <b>do ping 172.16.12.1</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.12.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/4 ms
R2(config-if)# <b>do ping 172.16.23.3</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.23.3, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 1/2/4 ms</pre>

<p>Excellent, now let&#8217;s bring up those four loopback interfaces on R1:</p>

<pre>R1(config-if)# <b>interface loopback 1</b>
R1(config-if)# <b>ip address 10.1.1.1 255.255.255.0</b>
R1(config-if)# <b>interface loopback 2</b>
R1(config-if)# <b>ip address 10.1.2.1 255.255.255.0</b>
R1(config-if)# <b>interface loopback 3</b>
R1(config-if)# <b>ip address 10.1.3.1 255.255.255.0</b>
R1(config-if)# <b>interface loopback 4</b>
R1(config-if)# <b>ip address 10.1.4.1 255.255.255.0</b></pre>

<p>Let&#8217;s go ahead and configure RIP (version 2) on R2 and R3:</p>

<pre>R2(config-if)# <b>router rip</b>
R2(config-router)# <b>version 2</b>
R2(config-router)# <b>no auto-summary</b>
R2(config-router)# <b>network 172.16.0.0</b></pre>

<pre>R3(config-if)# <b>router rip</b>
R3(config-router)# <b>version 2</b>
R3(config-router)# <b>no auto-summary</b>
R3(config-router)# <b>network 172.16.0.0</b></pre>

<p>Let&#8217;s take a look at R3&#8217;s RIP routing table before we go any further:</p>

<pre>R3(config-router)# <b>do sh ip route rip</b>
     172.16.0.0/24 is subnetted, 2 subnets
R       172.16.12.0 [120/1] via 172.16.23.2, 00:00:05, FastEthernet0/1</pre>

<p>As you can see, we&#8217;re receiving the route for 172.16.12.0/24 from R2.  Let&#8217;s configure RIP on R1 now:</p>

<pre>R1(config-if)# <b>router rip</b>
R1(config-router)# <b>version 2</b>
R1(config-router)# <b>no auto-summary</b>
R1(config-router)# <b>network 172.16.0.0</b>
R1(config-router)# <b>network 10.0.0.0</b></pre>

<p>Now we should see something like this on R3:</p>

<pre>R3(config-router)# <b>do sh ip route rip</b>
     172.16.0.0/24 is subnetted, 2 subnets
R       172.16.12.0 [120/1] via 172.16.23.2, 00:00:13, FastEthernet0/1
     10.0.0.0/24 is subnetted, 4 subnets
R       10.1.3.0 [120/2] via 172.16.23.2, 00:00:13, FastEthernet0/1
R       10.1.2.0 [120/2] via 172.16.23.2, 00:00:13, FastEthernet0/1
R       10.1.1.0 [120/2] via 172.16.23.2, 00:00:13, FastEthernet0/1
R       10.1.4.0 [120/2] via 172.16.23.2, 00:00:13, FastEthernet0/1</pre>

<p>Now let&#8217;s say that, for whatever reason, we:<ul><li><b>do</b> want R1 to advertise all the 10.1.x.0/24 networks to R2, but</li>
<li><b>don&#8217;t</b> want R3 to receive the route for 10.1.3.0/24</li></ul></p>

<p>How would we accomplish that?  <i>&#8220;distribute-list out&#8221;</i>, of course!</p>

<p>Okay, so the first thing we need to do is create an access-list.  Since we simply want to block 10.1.3.0/24 from being advertised, we can accomplish this fairly easily:</p>

<pre>R2(config-router)# <b>exit</b>
R2(config)# <b>access-list 3 deny 10.1.3.0 0.0.0.255</b>
R2(config)# <b>access-list 3 permit any</b></pre>

<p>Here, our access list just deny&#8217;s the 10.1.3.0/24 network and allows all others (note that we could use prefix-lists, too).  Now we need to tell R2 to suppress the affected networks from being advertised:</p>

<pre>R2(config)# <b>router rip</b>
R2(config-router)# <b>distribute-list 3 out</b></pre>

<p>Easy, right!?  Let&#8217;s take a quick look at R3&#8217;s routes again:</p>

<pre>R3(config-router)# <b>do sh ip route rip</b>
     172.16.0.0/24 is subnetted, 2 subnets
R       172.16.12.0 [120/1] via 172.16.23.2, 00:00:09, FastEthernet0/1
     10.0.0.0/24 is subnetted, 4 subnets
<i>R       10.1.3.0 [120/2] via 172.16.23.2, 00:00:36, FastEthernet0/1</i>
R       10.1.2.0 [120/2] via 172.16.23.2, 00:00:09, FastEthernet0/1
R       10.1.1.0 [120/2] via 172.16.23.2, 00:00:09, FastEthernet0/1
R       10.1.4.0 [120/2] via 172.16.23.2, 00:00:09, FastEthernet0/1</pre>

<p>Look at the route for 10.1.3.0/24.  Note that it&#8217;s been 36 seconds since R3 received an update for this network.  Let&#8217;s give it a few minutes (four, by default) for the &#8220;flush&#8221; timer to expire, then check out R3&#8217;s routes again:</p>

<pre>R3(config-router)# <b>do sh ip route rip</b>
     172.16.0.0/24 is subnetted, 2 subnets
R       172.16.12.0 [120/1] via 172.16.23.2, 00:00:00, FastEthernet0/1
     10.0.0.0/24 is subnetted, 3 subnets
R       10.1.2.0 [120/2] via 172.16.23.2, 00:00:00, FastEthernet0/1
R       10.1.1.0 [120/2] via 172.16.23.2, 00:00:00, FastEthernet0/1
R       10.1.4.0 [120/2] via 172.16.23.2, 00:00:00, FastEthernet0/1</pre>

<p>See that the route for 10.1.3.0/24 has disappeared?  Is it still on R2?  It certainly is:</p>

<pre>R2(config-router)# <b>do sh ip route rip</b>
     10.0.0.0/24 is subnetted, 4 subnets
R       10.1.3.0 [120/1] via 172.16.12.1, 00:00:12, Serial0/0
R       10.1.2.0 [120/1] via 172.16.12.1, 00:00:12, Serial0/0
R       10.1.1.0 [120/1] via 172.16.12.1, 00:00:12, Serial0/0
R       10.1.4.0 [120/1] via 172.16.12.1, 00:00:12, Serial0/0</pre>

<p>It seems that our distribute-list is doing the job we wanted it to do.  Just for good measure, let&#8217;s make sure that we can ping 10.1.3.1 from R2, but not from R3:</p>

<pre>R2(config-router)# <b>do ping 10.1.3.1</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.3.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/4 ms</pre>

<pre>R3(config-router)# <b>do ping 10.1.3.1</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.3.1, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)</pre>

<p>All of the other 10.1.x.1 addresses are, of course, still reachable from R3:</p>

<pre>R3(config-router)# <b>do ping 10.1.1.1</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/4 ms
R3(config-router)# <b>do ping 10.1.2.1</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.2.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/4 ms
R3(config-router)# <b>do ping 10.1.4.1</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.4.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/4 ms</pre>

<p>Note that there&#8217;s also a <i>&#8220;distribute-list in&#8221;</i> command that we could have used on R3 instead of <i>&#8220;distribute-list out&#8221;</i> on R2.  If, for example, there was another interface on R2, we may not have wanted to filter out the updates going out that interface.  In that case, we would have two options:  we could use <i>&#8220;distribute-list in&#8221;</i> on R3, or we could have specified an interface with <i>&#8220;distribute-list out&#8221;</i>, such as this:</p>

<pre>R2(config-router)# <b>no distribute-list 3 out</b>
R2(config-router)# <b>distribute-list 3 out fastethernet 0/1</b></pre>
<img src="http://feeds.feedburner.com/~r/evilrouters/~4/FQE3mk08pmE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://evilrouters.net/2009/07/06/using-distribute-list-to-filter-rip-updates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://evilrouters.net/2009/07/06/using-distribute-list-to-filter-rip-updates/</feedburner:origLink></item>
		<item>
		<title>EIGRP Authentication</title>
		<link>http://feedproxy.google.com/~r/evilrouters/~3/Y_75GJ5WOvU/</link>
		<comments>http://evilrouters.net/2009/07/04/eigrp-authentication/#comments</comments>
		<pubDate>Sat, 04 Jul 2009 18:03:39 +0000</pubDate>
		<dc:creator>jlgaddis</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[ccna]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[labs]]></category>
		<category><![CDATA[networking]]></category>

		<guid isPermaLink="false">http://evilrouters.net/2009/07/04/eigrp-authentication/</guid>
		<description><![CDATA[Here&#8217;s another quick little lab, using the same topology as last time:



Two routers, R1 and R2, directly connected via their serial 0/0 interfaces.  In the previous lab, we were using RIP.  This time we&#8217;ll use EIGRP and authenticate our routing updates.

Basic configuration

Just like last time, let&#8217;s bring up a loopback interface, our serial [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s another quick little lab, using the same topology as last time:</p>

<p><img src="http://evilrouters.net/wp-content/uploads/2009/03/serial-and-ppp.png"></p>

<p>Two routers, R1 and R2, directly connected via their serial 0/0 interfaces.  In the <a href="http://evilrouters.net/2009/07/04/rip-authentication/">previous lab</a>, we were using RIP.  This time we&#8217;ll use EIGRP and authenticate our routing updates.</p>

<p><b><u>Basic configuration</u></b></p>

<p>Just like last time, let&#8217;s bring up a loopback interface, our serial 0/0 interfaces and verify connectivity:</p>

<pre>R1# <b>configure terminal</b>
R1(config)# <b>interface loopback 0</b>
R1(config-if)# <b>ip address 1.1.1.1 255.255.255.255</b>
R1(config-if)# <b>interface serial 0/0</b>
R1(config-if)# <b>ip address 172.16.12.1 255.255.255.252</b>
R1(config-if)# <b>no shutdown</b>
R1(config-if)# <b>end</b></pre>

<pre>R2# <b>configure terminal</b>
R2(config)# <b>interface loopback 0</b>
R2(config-if)# <b>ip address 2.2.2.2 255.255.255.255</b>
R2(config-if)# <b>interface serial 0/0</b>
R2(config-if)# <b>ip address 172.16.12.2 255.255.255.252</b>
R2(config-if)# <b>no shutdown</b>
R2(config-if)# <b>end</b></pre>

<pre>R1# <b>ping 172.16.12.2</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.12.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 8/18/36 ms
R1#</pre>

<p><b><u>Configure EIGRP</u></b></p>

<p>Now that we have connectivity, let&#8217;s get EIGRP up and running on R1 and R2 (without authentication, at first).  We just want to make sure they&#8217;re exchanging EIGRP routing updates at this point.</p>

<pre>R1# <b>configure terminal</b>
R1(config)# <b>router eigrp 42</b>
R1(config-router)# <b>no auto-summary</b>
R1(config-router)# <b>network 172.16.12.1 0.0.0.0</b>
R1(config-router)# <b>network 1.1.1.1 0.0.0.0</b>
R1(config-router)# <b>end</b></pre>

<pre>R2# <b>configure terminal</b>
R2(config)# <b>router eigrp 42</b>
R2(config-router)# <b>no auto-summary</b>
R2(config-router)# <b>network 2.2.2.2 0.0.0.0</b>
R2(config-router)# <b>network 172.16.12.2 0.0.0.0</b>
R2(config-router)# <b>end</b></pre>

<p>Very quickly (EIGRP is &#42;FAST&#42;), we should see an adjacency come up (ignore the timestamps, they&#8217;re obviously not correct!):</p>

<p>On R1:</p>

<pre>*Mar  1 00:13:12.243: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 42: Neighbor 172.16.12.2 (Serial0/0) is up: new adjacency</pre>

<p>On R2:</p>

<pre>*Mar  1 00:12:47.935: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 42: Neighbor 172.16.12.1 (Serial0/0) is up: new adjacency</pre>

<p><b><u>Verify EIGRP</u></b></p>

<p>On R1:</p>

<pre>R1# <b>sh ip route eigrp</b>
     2.0.0.0/32 is subnetted, 1 subnets
D       2.2.2.2 [90/2297856] via 172.16.12.2, 00:01:26, Serial0/0</pre>

<p>On R2:</p>

<pre>R2# <b>sh ip route eigrp</b>
     1.0.0.0/32 is subnetted, 1 subnets
D       1.1.1.1 [90/2297856] via 172.16.12.1, 00:02:00, Serial0/0</pre>

<p>We can see that the loopbacks are being advertised by both routers.  If we want, we can ping R2&#8217;s loopback from R1&#8217;s loopback just for good measure:</p>

<pre>R1# <b>ping 2.2.2.2 source 1.1.1.1</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2.2.2.2, timeout is 2 seconds:
Packet sent with a source address of 1.1.1.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 8/11/16 ms</pre>

<p><b><u>Configure EIGRP authentication</u></b></p>

<p>Now that we have full reachability and &#8220;basic&#8221; EIGRP working, it&#8217;s time to configure MD5 authentication.</p>

<p>Just like <a href="http://evilrouters.net/2009/07/04/rip-authentication/">RIP authentication</a>, we need to create a key chain, key identifier, and key string that will be used for authentication.  We&#8217;ll use the same values as last time, except that we&#8217;ll call our key chain &#8220;EIGRP&#8221; instead of &#8220;RIP&#8221;:</p>

<pre>R1# <b>configure terminal</b>
R1(config)# <b>key chain EIGRP</b>
R1(config-keychain)# <b>key 1</b>
R1(config-keychain-key)# <b>key-string RGjtl5ANYa</b>
R1(config-keychain-key)# <b>end</b></pre>

<pre>R2# <b>configure terminal</b>
R2(config)# <b>key chain EIGRP</b>
R2(config-keychain)# <b>key 1</b>
R2(config-keychain-key)# <b>key-string RGjtl5ANYa</b>
R2(config-keychain-key)# <b>end</b></pre>

<p>We have two steps left to complete on each router:  we have to specify the keychain that we want to use for authentication, then we enabled EIGRP authentication.  Both of these are done in interface configuration mode under (in our case) the serial 0/0 interfaces.  Let&#8217;s configure R1 first:</p>

<pre>R1# <b>configure terminal</b>
R1(config)# <b>interface serial 0/0</b>
R1(config-if)# <b>ip authentication key-chain eigrp 42 EIGRP</b>
R1(config-if)#
*Mar  1 00:21:51.919: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 42: Neighbor 172.16.12.2 (Serial0/0) is down: keychain changed
*Mar  1 00:21:52.567: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 42: Neighbor 172.16.12.2 (Serial0/0) is up: new adjacency
R1(config-if)# <b>ip authentication mode eigrp 42 md5</b>
R1(config-if)# <b>end</b>
R1#
*Mar  1 00:22:06.083: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 42: Neighbor 172.16.12.2 (Serial0/0) is down: authentication mode changed</pre>

<p>Note that our adjancency bounced right after we configured the key chain.  Then, after actually enabling MD5 authentication, we see in the last log message that the adjacency went down.  This is because R1 is now using MD5 authentication, but R2 has not yet been configured to do the same.  Let&#8217;s run a <i>&#8220;debug eigrp packets&#8221;</i> and see what&#8217;s going on over there:</p>

<pre>R2# <b>debug eigrp packets</b>
R2#
*Mar  1 00:24:18.751: EIGRP: Sending HELLO on Serial0/0
*Mar  1 00:24:18.755:   AS 42, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0
<i>*Mar  1 00:24:19.087: EIGRP: Serial0/0: ignored packet from 172.16.12.1, opcode = 5 (authentication off or key-chain missing)</i>
R2# <b>undebug all</b>
All possible debugging has been turned off</pre>

<p>Now let&#8217;s enable authentication on R2&#8217;s side and we should see the adjacency come right back up:</p>

<pre>R2# <b>configure terminal</b>
R2(config)# <b>interface serial 0/0</b>
R2(config-if)# <b>ip authentication key-chain eigrp 42 EIGRP</b>
R2(config-if)# <b>ip authentication mode eigrp 42 md5</b>
R2(config-if)# <b>end</b>
R2#
*Mar  1 00:26:23.495: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 42: Neighbor 172.16.12.1 (Serial0/0) is up: new adjacency</pre>

<p><b><u>Verifying EIGRP authentication</u></b></p>

<p>We can verify that authentication is being used using <i>&#8220;debug eigrp packets&#8221;</i> again:</p>

<pre>R2# <b>debug eigrp packets</b>
R2#
<i>*Mar  1 00:28:32.711: EIGRP: received packet with MD5 authentication, key id = 1</i>
*Mar  1 00:28:32.711: EIGRP: Received HELLO on Serial0/0 nbr 172.16.12.1
*Mar  1 00:28:32.711:   AS 42, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
R2# <b>undebug all</b>
All possible debugging has been turned off</pre>

<p>Looks good, let&#8217;s verify we still have full reachability:</p>

<pre>R1# <b>ping 2.2.2.2 source 1.1.1.1</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2.2.2.2, timeout is 2 seconds:
Packet sent with a source address of 1.1.1.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 8/12/16 ms</pre>
<img src="http://feeds.feedburner.com/~r/evilrouters/~4/Y_75GJ5WOvU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://evilrouters.net/2009/07/04/eigrp-authentication/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://evilrouters.net/2009/07/04/eigrp-authentication/</feedburner:origLink></item>
		<item>
		<title>RIP Authentication</title>
		<link>http://feedproxy.google.com/~r/evilrouters/~3/kX9_WZv20XY/</link>
		<comments>http://evilrouters.net/2009/07/04/rip-authentication/#comments</comments>
		<pubDate>Sat, 04 Jul 2009 05:42:09 +0000</pubDate>
		<dc:creator>jlgaddis</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[ccna]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[labs]]></category>
		<category><![CDATA[networking]]></category>

		<guid isPermaLink="false">http://evilrouters.net/2009/07/04/rip-authentication/</guid>
		<description><![CDATA[I found this post saved and realized that it had never been uploaded to the site, so here you go.



Two routers, R1 and R2, directly connected via their serial 0/0 interfaces.  We want to authenticate the routing updates sent and received by these two routers.  Note that we have to use RIP version [...]]]></description>
			<content:encoded><![CDATA[<p>I found this post saved and realized that it had never been uploaded to the site, so here you go.</p>

<p><img src="http://evilrouters.net/wp-content/uploads/2009/03/serial-and-ppp.png"></p>

<p>Two routers, R1 and R2, directly connected via their serial 0/0 interfaces.  We want to authenticate the routing updates sent and received by these two routers.  Note that we have to use RIP version 2 (RIPv2), since RIP version 1 does not support authentication.</p>

<p>For RIP authentication, we have two options:  plain text or MD5.  I would recommend never using plain-text anything, but we&#8217;ll configure both for the sake of completeness.  Let&#8217;s get started:</p>

<p>Let&#8217;s configure a loopback interface on each router and then get our serial connection up and running:</p>

<pre>R1# <b>configure terminal</b>
R1(config)# <b>interface loopback 0</b>
R1(config-if)# <b>ip address 1.1.1.1 255.255.255.255</b>
R1(config-if)# <b>interface serial 0/0</b>
R1(config-if)# <b>ip address 172.16.12.1 255.255.255.252</b>
R1(config-if)# <b>no shutdown</b>
R1(config-if)# <b>end</b></pre>

<pre>R2# <b>configure terminal</b>
R2(config)# <b>interface loopback 0</b>
R2(config-if)# <b>ip address 2.2.2.2 255.255.255.255</b>
R2(config-if)# <b>interface serial 0/0</b>
R2(config-if)# <b>ip address 172.16.12.2 255.255.255.252</b>
R2(config-if)# <b>no shutdown</b>
R2(config-if)# <b>end</b></pre>

<p>Verify connectivity:</p>

<pre>R1# <b>ping 172.16.12.2</b>

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.12.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/25/64 ms
R1#</pre>

<p><b><u>Configure RIPv2</u></b></p>

<p>It&#8217;s back to basics time.  Before we jump right into authentication, let&#8217;s get just basic RIP working and exchanging updates first:</p>

<pre>R1# <b>configure terminal</b>
R1(config)# <b>router rip</b>
R1(config-router)# <b>no auto-summary</b>
R1(config-router)# <b>version 2</b>
R1(config-router)# <b>network 1.0.0.0</b>
R1(config-router)# <b>network 172.16.0.0</b>
R1(config-router)# <b>end</b></pre>

<pre>R2# <b>configure terminal</b>
R2(config)# <b>router rip</b>
R2(config-router)# <b>no auto-summary</b>
R2(config-router)# <b>version 2</b>
R2(config-router)# <b>network 2.0.0.0</b>
R2(config-router)# <b>network 172.16.0.0</b>
R2(config-router)# <b>end</b></pre>

<p><b><u>Verify RIP</u></b></p>

<p>Verify that the routers are exchanging routes via RIP:</p>

<pre>R1# <b>sh ip route rip</b>
     2.0.0.0/32 is subnetted, 1 subnets
R       2.2.2.2 [120/1] via 172.16.12.2, 00:00:02, Serial0/0</pre>

<pre>R2# <b>sh ip route rip</b>
     1.0.0.0/32 is subnetted, 1 subnets
R       1.1.1.1 [120/1] via 172.16.12.1, 00:00:11, Serial0/0</pre>

<p>Excellent!  Let&#8217;s create our key chain, key, and key string that we&#8217;ll use for authentication:</p>

<p><b><u>Configure authentication parameters</u></b></p>

<pre>R1# <b>configure terminal</b>
R1(config)# <b>key chain RIP</b>
R1(config-keychain)# <b>key 1</b>
R1(config-keychain-key)# <b>key-string RGjtl5ANYa</b>
R1(config-keychain-key)# <b>end</b></pre>

<pre>R2# <b>configure terminal</b>
R2(config)# <b>key chain RIP</b>
R2(config-keychain)# <b>key 1</b>
R2(config-keychain-key)# <b>key-string RGjtl5ANYa</b>
R2(config-keychain-key)# <b>end</b></pre>

<p>A couple of quick notes:
<ul><li>The key chain name, &#8220;RIP&#8221;, is user-defined and can be whatever you want it to be.  It does not need to be the same on both routers.</li>
<li>The identifier number of the authentication key, &#8220;key 1&#8243;, does not need to be identical <b>UNLESS</b> you are using MD5 authentication.</li>
<li>The key string, &#8220;key-string RGjtl5ANYa&#8221;, is the actual password.  It does, of course, need to match on both sides.</li></ul></p>

<p>The only things left to do are enable authentication on the serial 0/0 interfaces and to specify the authentication method we&#8217;re going to use.  Plain text authentication is the default, and can be left out.</p>

<p><b><u>Configure plain-text authentication</u></b></p>

<pre>R1# <b>configure terminal</b>
R1(config)# <b>interface serial 0/0</b>
R1(config-if)# <b>ip rip authentication key-chain RIP</b>
R1(config-if)# <b>end</b></pre>

<pre>R2# <b>configure terminal</b>
R2(config)# <b>interface serial 0/0</b>
R2(config-if)# <b>ip rip authentication key-chain RIP</b>
R2(config-if)# <b>end</b></pre>

<p><b><u>Verify plain-text authentication</u></b></p>

<p>We can verify that authentication is enabled by using <i>&#8220;debug ip rip&#8221;</i>, as shown here:</p>

<pre>R1# <b>debug ip rip</b>
RIP protocol debugging is on
R1#
*Mar  1 01:36:50.743: RIP: sending v2 update to 224.0.0.9 via Serial0/0 (172.16.12.1)
*Mar  1 01:36:50.747: RIP: build update entries
*Mar  1 01:36:50.747:   1.1.1.1/32 via 0.0.0.0, metric 1, tag 0
R1#
<i>*Mar  1 01:37:02.695: RIP: received packet with <b>text authentication</b> RGjtl5ANYa</i>
*Mar  1 01:37:02.695: RIP: received v2 update from 172.16.12.2 on Serial0/0
*Mar  1 01:37:02.695:      2.2.2.2/32 via 0.0.0.0 in 1 hops
R1#
*Mar  1 01:37:05.111: RIP: sending v2 update to 224.0.0.9 via Loopback0 (1.1.1.1)
*Mar  1 01:37:05.111: RIP: build update entries
*Mar  1 01:37:05.111:   2.2.2.2/32 via 0.0.0.0, metric 2, tag 0
*Mar  1 01:37:05.111:   172.16.12.0/30 via 0.0.0.0, metric 1, tag 0
*Mar  1 01:37:05.111: RIP: ignored v2 packet from 1.1.1.1 (sourced from one of our addresses)
R1# <b>undebug all</b></pre>

<p>Note that our password (key string) is plainly visible in the received RIP updates.  Not only are they visible to us, but they would be visible to any eavesdroppers on the network as well.  Plain-text authentication really gets us nothing.  A much better choice is MD5 authentication.</p>

<p><b><u>Configure and verify MD5 authentcation</u></b></p>

<p>With everything else in place, MD5 authentication is just one command away.  In interface configuration mode, we specify the type of authentication being used with the <i>&#8220;ip rip authentication mode &#8230;&#8221;</i> command.  It defaults to plain-text, which is why we did not need to specify it above.</p>

<p>Let&#8217;s set the authentication mode to MD5 on R1, then we&#8217;ll start a debug on R2 before setting MD5 authentication there as well:</p>

<pre>R1# <b>configure terminal</b>
R1(config)# <b>interface serial 0/0</b>
R1(config-if)# <b>ip rip authentication mode md5</b>
R1(config-if)# <b>end</b></pre>

<pre>R2# <b>debug ip rip</b>
RIP protocol debugging is on
R2#
<i>*Mar  1 01:50:29.963: RIP: ignored v2 packet from 172.16.12.1 (<b>invalid authentication</b>)</i>
R2# <b>configure terminal</b>
R2(config)# <b>interface serial 0/0</b>
R2(config-if)# <b>ip rip authentication mode md5</b>
R2(config-if)# <b>end</b>
R2#
<i>*Mar  1 01:50:56.823: RIP: received packet with <b>MD5 authentication</b></i>
*Mar  1 01:50:56.827: RIP: received v2 update from 172.16.12.1 on Serial0/0
*Mar  1 01:50:56.831:      1.1.1.1/32 via 0.0.0.0 in 1 hops
R2# <b>undebug all</b></pre>

<p>In the <i>&#8220;debug ip rip&#8221;</i> on R2, we see that we have ignored a packet due to &#8220;invalid authentication&#8221;.  This is because MD5 authentication had already been enabled on R1, but not on R2.  R1 was sending MD5 authenticated updates but R2 was still configured to use plain-text authentication so it discarded the update.  Once we configured MD5 authentication on R2 as well, we see that we received an update &#8220;with MD5 authentication&#8221;.  Note that the authentication key is <b>NOT</b> visible, as opposed to when we used plain-text authentication.</p>

<p>RIP authentication is extremely easy to configure and there is no good reason not to use MD5 authentication, as is (hopefully) clearly visible from the exercises above.</p>

<p>May all your updates be secure!</p>
<img src="http://feeds.feedburner.com/~r/evilrouters/~4/kX9_WZv20XY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://evilrouters.net/2009/07/04/rip-authentication/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://evilrouters.net/2009/07/04/rip-authentication/</feedburner:origLink></item>
		<item>
		<title>Video of HP ProCurve “anomaly”</title>
		<link>http://feedproxy.google.com/~r/evilrouters/~3/7TGStYcm-Eg/</link>
		<comments>http://evilrouters.net/2009/06/03/video-of-hp-procurve-anomaly/#comments</comments>
		<pubDate>Wed, 03 Jun 2009 09:28:23 +0000</pubDate>
		<dc:creator>jlgaddis</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[hp]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[vendors]]></category>

		<guid isPermaLink="false">http://evilrouters.net/?p=961</guid>
		<description><![CDATA[Several months ago, I wrote about discovering an &#8220;anomaly&#8221; in ProCurve firmware version K.13.45.  Because I apparently already have some folks at HP pissed off, I thought I&#8217;d take a look and see if anything had changed.

Although the case hasn&#8217;t been updated since January 5th and still hasn&#8217;t been resolved, it is still listed [...]]]></description>
			<content:encoded><![CDATA[<p>Several months ago, I wrote about <a href="http://evilrouters.net/2008/12/19/hp-it-seems-that-you-have-discovered-an-anomaly/">discovering an &#8220;anomaly&#8221;</a> in <a href="http://www.procurve.com/">ProCurve</a> firmware version <a href="http://www.hp.com/rnd/software/j86921345.htm">K.13.45</a>.  Because I apparently already have some folks at <a href="http://www.hp.com">HP</a> pissed off, I thought I&#8217;d take a look and see if anything had changed.</p>

<p>Although the case hasn&#8217;t been updated since January 5th and still hasn&#8217;t been resolved, it <b>is</b> still listed as &#8220;in progress&#8221;.</p>

<p>Since simply copy/pasting the output doesn&#8217;t really show the true nature of the &#8220;anomaly&#8221;, I thought I&#8217;d go ahead and put together a video.  What I didn&#8217;t mention originally (and, perhaps, should have) is that CPU utilization skyrockets to 99% while these <i>&#8220;show&#8221;</i> commands are running (running very slowly, that is).  Originally, and in this video, I used <i>&#8220;show ip igmp config&#8221;</i> to demonstrate, but there are other show commands that have the same effect on CPU.</p>

<p>In the video, I have two SSH sessions open to an HP ProCurve 5406zl switch running version <a href="http://www.hp.com/rnd/software/j86921360.htm">K.13.60</a> firmware (yes, I know it&#8217;s not the latest &#8212; read <a href="http://evilrouters.net/2009/05/27/and-people-wonder-why-i-hate-hp/">this</a> to find out why I&#8217;m not running <a href="http://www.hp.com/rnd/software/j86921363.htm">K.13.63</a>).  In the top session, you see me execute these commands:</p>

<pre>HP5406# <b>sh system</b>
HP5406# <b>repeat delay 1</b></pre>

<p>The first command runs <i>&#8220;show system-information&#8221;</i>.  The second causes it to be repeatedly executed, in one second intervals.  (I would&#8217;ve preferred <i>&#8220;sh system | in CPU&#8221;</i> since HP <b><em>FINALLY</em></b> gave us that feature, but apparently the piping isn&#8217;t taken into account when the <i>&#8220;repeat&#8221;</i> command is used.)  I let this run for maybe ten seconds, to give a good &#8220;baseline&#8221; of what the CPU utilization of the switch is.  It hovers mostly around 3-4%.</p>

<p>In the bottom session, you see me execute:</p>

<pre>HP5406# <b>show ip igmp config</b></pre>

<p>Immediately after executing this show command, notice how <u>SLOOOOOOW</u> the output to the terminals become.  It takes two or three iterations of the <i>&#8220;sh system&#8221;</i> command, but the switch quickly hits 99% CPU utilization.  This, of course, is why the output is being taking so long to display.  I&#8217;m not sure what&#8217;s happening behind the scenes, but apparently the ProCurve doesn&#8217;t like it.  I cut the video off just a bit too quickly, but it should be noted that CPU utilization returns to normal immediately after the <i>&#8220;show&#8221;</i> command has finished executing.</p>

<p>Anyway, here&#8217;s the video:</p>

<div id="media">
            <object id="csSWF" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="668" height="546" codebase="http://active.macromedia.com/flash7/cabs/ swflash.cab#version=9,0,28,0">
                <param name="src" value="http://evilrouters.net/wp-content/uploads/2009/06/show-ip-igmp-config-procurve.swf"/>
                <param name="bgcolor" value="#1a1a1a"/>
                <param name="quality" value="best"/>
                <param name="allowScriptAccess" value="always"/>
                <param name="allowFullScreen" value="true"/>
                <param name="scale" value="showall"/>
                <param name="flashVars" value="autostart=false"/>
                <embed name="csSWF" src="http://evilrouters.net/wp-content/uploads/2009/06/show-ip-igmp-config-procurve.swf" width="668" height="546" bgcolor="#1a1a1a" quality="best" allowScriptAccess="always" allowFullScreen="true" scale="showall" flashVars="autostart=false" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed>
            </object>
        </div>
<img src="http://feeds.feedburner.com/~r/evilrouters/~4/7TGStYcm-Eg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://evilrouters.net/2009/06/03/video-of-hp-procurve-anomaly/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://evilrouters.net/2009/06/03/video-of-hp-procurve-anomaly/</feedburner:origLink></item>
		<item>
		<title>10 Things Your IT Guy Wants You to Know</title>
		<link>http://feedproxy.google.com/~r/evilrouters/~3/fHAeYzAZBR4/</link>
		<comments>http://evilrouters.net/2009/05/31/10-things-your-it-guy-wants-you-to-know/#comments</comments>
		<pubDate>Sun, 31 May 2009 16:48:14 +0000</pubDate>
		<dc:creator>jlgaddis</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[funny]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://evilrouters.net/2009/05/31/10-things-your-it-guy-wants-you-to-know/</guid>
		<description><![CDATA[
If you come to me to ask technical questions, please don&#8217;t argue when you don&#8217;t like my answer.  If you think you know more about what you&#8217;re asking than I do, then why even ask?  On that same note, if I am arguing with you, it&#8217;s because I&#8217;m certain that I am correct; [...]]]></description>
			<content:encoded><![CDATA[<ol>
<li><p>If you come to me to ask technical questions, please don&#8217;t argue when you don&#8217;t like my answer.  If you think you know more about what you&#8217;re asking than I do, then why even ask?  On that same note, if I <b>am</b> arguing with you, it&#8217;s because I&#8217;m certain that I am correct; otherwise I&#8217;d just tell you &#8220;I don&#8217;t know&#8221; or perhaps point you somewhere that you could look it up.  We don&#8217;t argue just for the sake of arguing.</p></li>
<li><p>When you start a conversation by insulting yourself (e.g. <i>&#8220;I&#8217;m such an idiot&#8221;</i>), you will not make me laugh or feel sorry for you; all you will succeed in doing is reminding me that yes, you are, indeed, an idiot, and that I&#8217;m going to hate having to talk to you.  Trust me, you don&#8217;t want to start out this way.</p></li>
<li><p>We&#8217;re okay with you making mistakes; fixing them is part of our job.  We are <b><strong>NOT</strong></b>, however, okay with you lying to us about a mistake that you made.  It just makes it that much harder to resolve and thus makes our job more difficult.  Be honest and we&#8217;ll get the problem fixed and both of us can continue on with our business.  Lying to us and, therefore, costing us twice as much of <b>our</b> time will not win you any brownie points with IT.</p></li>
<li><p>There is no magic <i>&#8220;Fix it&#8221;</i> button.  Everything takes some amount of work to fix, and not everything is worth fixing or &#8212; <i>gasp!</i> &#8212; even possible to fix.  If I tell you that you&#8217;re going to have to re-do a document that you accidentally deleted two months ago, please don&#8217;t get mad at <b><strong>ME</strong></b>.  I&#8217;m not ignoring your problem and it&#8217;s not that I don&#8217;t like you, we just can&#8217;t always fix everything.</p></li>
<li><p>Not everything you ask us to do is &#8220;urgent&#8221;.  In fact, by marking things as &#8220;urgent&#8221; every time, you&#8217;ll almost certainly ensure that we treat none of it as a priority.</p></li>
<li><p>You are not the only one who needs help, and you usually don&#8217;t have the most urgent issue.  Give us some time to get to your problem; it will get fixed.</p></li>
<li><p>E-mailing us several times about the same issue is not only unnecessary, it&#8217;s highly annoying as well.  We record issues in a database so that we don&#8217;t lose track of them (remember how we ask that you create a ticket?  That&#8217;s why.)  We will typically respond as soon as we have a useful update to make.  If your problem is urgent, please do let us know (but see number five).</p></li>
<li><p>Yes, we prefer e-mail over phone calls.  It has nothing to do with being friendly or anti-social, it&#8217;s about efficiency.  It is much faster and easier for us to list out a set of questions that we need answers to than it is for us to call and ask you them one by one.  You can find the answers at your leisure and, while we&#8217;re waiting, we can work on other problems.</p></li>
<li><p>We may, at times, seem blunt and rude.  It&#8217;s not that we mean to, we just don&#8217;t have the time to sugar coat things for you.  We assume that we are both adults and can handle the reality of a problem.  If you did something wrong, don&#8217;t be surprised when we tell you.  We don&#8217;t care that it was a mistake because, honestly, it makes no difference to us.  Please don&#8217;t take it personal, we just don&#8217;t want it to happen again.</p></li>
<li><p>Finally, <i>yes, I can read your e-mail, yes, I can see what web pages you look at while you&#8217;re at work, yes, I can access every file on your work computer, and yes, I can tell if you are chatting with people on instant messenger</i> (and can read what you&#8217;re typing, as well).  <b>But no, we don&#8217;t do it.  It&#8217;s highly unethical and, perhaps more importantly, in all reality you really aren&#8217;t that interesting.</b>  Unless I am instructed to specifically monitor or investigate your actions, I don&#8217;t do it.  There really are much more interesting things on the Internet than you.</p></li>
</ol>

<p>I hope this didn&#8217;t come off the wrong way because, even as much as us IT guys refer to &#8220;users&#8221; as &#8220;lusers&#8221;, we do like (most of) you.  Just like you, we&#8217;re here to do a job and we try to do it the best that we can.  It&#8217;s easiest to do that if we all work together, stop pointing fingers, and give other people the space that we would like to get as well.  If we can do that more often than not, things will go well and work out for all of us.</p>

<p>P.S.  IT guys are easily bribed with food and/or beer (personally, I prefer the latter).  That&#8217;s a sure way to get your problems moved to the top of the list.  &#42;<em>wink</em>&#42;</p>
<img src="http://feeds.feedburner.com/~r/evilrouters/~4/fHAeYzAZBR4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://evilrouters.net/2009/05/31/10-things-your-it-guy-wants-you-to-know/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		<feedburner:origLink>http://evilrouters.net/2009/05/31/10-things-your-it-guy-wants-you-to-know/</feedburner:origLink></item>
		<item>
		<title>Configuring Frame-Relay, Part 2</title>
		<link>http://feedproxy.google.com/~r/evilrouters/~3/pAt5y6Kin8E/</link>
		<comments>http://evilrouters.net/2009/05/30/configuring-frame-relay-part-2/#comments</comments>
		<pubDate>Sat, 30 May 2009 18:51:52 +0000</pubDate>
		<dc:creator>jlgaddis</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[ccna]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[labs]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://evilrouters.net/2009/05/30/configuring-frame-relay-part-2/</guid>
		<description><![CDATA[In &#8220;Configuring Frame-Relay, Part 1&#8243;, I demonstrated how to configure a basic frame-relay hub and spoke network.

In Part 2, we have the same three routers with the same physical topology, but we&#8217;ll be using point-to-point connections between each of the routers.

Here&#8217;s the topology&#8230;



&#8230;and the walkthrough&#8230;















In Part 3, we&#8217;ll add another router, R4, to the topology [...]]]></description>
			<content:encoded><![CDATA[<p>In <a href="http://evilrouters.net/2009/05/18/configuring-frame-relay-part-1/">&#8220;Configuring Frame-Relay, Part 1&#8243;</a>, I demonstrated how to configure a basic frame-relay hub and spoke network.</p>

<p>In Part 2, we have the same three routers with the same physical topology, but we&#8217;ll be using point-to-point connections between each of the routers.</p>

<p>Here&#8217;s the topology&#8230;</p>

<p><img src="http://evilrouters.net/wp-content/uploads/2009/05/basic-frame-relay-full-mesh-p2p.png" title="" border="0"></p>

<p>&#8230;and the walkthrough&#8230;</p>

<div id="media">
<object id="csSWF" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="644" height="342" codebase="http://active.macromedia.com/flash7/cabs/swflash.cab#version=9,0,28,0">
<param name="src" value="http://evilrouters.net/wp-content/uploads/2009/05/configuring-frame-relay-part-2.swf"/>

<param name="bgcolor" value="#1a1a1a"/>
<param name="quality" value="best"/>
<param name="allowScriptAccess" value="always"/>
<param name="allowFullScreen" value="true"/>
<param name="scale" value="showall"/>
<param name="flashVars" value="autostart=false"/>
<embed name="csSWF" src="http://evilrouters.net/wp-content/uploads/2009/05/configuring-frame-relay-part-2.swf" width="644" height="342" bgcolor="#1a1a1a" quality="best" allowScriptAccess="always" allowFullScreen="true" scale="showall" flashVars="autostart=false" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed>
</object>
</div>

<p>In Part 3, we&#8217;ll add another router, R4, to the topology and use a combination of the physical interface and point-to-point subinterface on R1 to demonstrate how to use both simultaneously.  We&#8217;ll follow that up in Part 4 by adding OSPF to the whole network to show the differences over various types of networks.</p>
<img src="http://feeds.feedburner.com/~r/evilrouters/~4/pAt5y6Kin8E" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://evilrouters.net/2009/05/30/configuring-frame-relay-part-2/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://evilrouters.net/2009/05/30/configuring-frame-relay-part-2/</feedburner:origLink></item>
	</channel>
</rss>
