<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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/"
	>

<channel>
	<title> &#187; Cisco</title>
	<atom:link href="http://www.richstevenson.com/tag/cisco/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.richstevenson.com</link>
	<description></description>
	<lastBuildDate>Thu, 22 Dec 2011 18:41:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Upgrading a Cisco Catalyst Switch</title>
		<link>http://www.richstevenson.com/2009/04/15/upgrading-a-cisco-catalyst-switch/</link>
		<comments>http://www.richstevenson.com/2009/04/15/upgrading-a-cisco-catalyst-switch/#comments</comments>
		<pubDate>Wed, 15 Apr 2009 04:00:39 +0000</pubDate>
		<dc:creator>Rich Stevenson</dc:creator>
				<category><![CDATA[Cisco]]></category>
		<category><![CDATA[Catalyst]]></category>
		<category><![CDATA[IOS]]></category>

		<guid isPermaLink="false">http://www.richstevenson.com/?p=275</guid>
		<description><![CDATA[Today I&#8217;m starting to upgrade my almost 40 Cisco Catalyst 3560G switches to a newer version of the IOS. Since these switches were installed over the course of about 2 years, a lot of them are running different IOS versions, so it&#8217;s time to get everything up to snuff and running the same version across [...]]]></description>
			<content:encoded><![CDATA[<p>Today I&#8217;m starting to upgrade my almost 40 Cisco Catalyst 3560G switches to a newer version of the IOS. Since these switches were installed over the course of about 2 years, a lot of them are running different IOS versions, so it&#8217;s time to get everything up to snuff and running the same version across the board. The latest version that&#8217;s installed on any of them is 12.2(25) SEE3 and according to Cisco support that version is now in deferral and it&#8217;s suggested to move to version 12.2(44) SE5. But&#8230;that version is also in deferral so the suggested is 12.2(44) SE6. Now at the time of this writing, the latest version is 12.2.50-SE. But I&#8217;m going to stick with version 12.2(44) SE6 for now as I&#8217;m not one to jump on the latest version of anything unless I absolutely have to.<br />
<span id="more-275"></span></p>
<h2>Downloading the software</h2>
<p>As you know, you have to have a Cisco maintenance agreement as well as an online account linked to that agreement so you can legally download the new IOS. So assuming you meet that criteria and have already downloaded your desired IOS, let&#8217;s get started on the upgrade process. If you haven&#8217;t downloaded the IOS yet, you can do so at <a href="http://support.cisco.com" target="_blank">http://support.cisco.com</a></p>
<h2>Prepare for disaster</h2>
<p>Ok, maybe that title was a little strong. But you need to backup your existing IOS image as well as your current configuration. If something goes wrong during the upgrade, you&#8217;ll want to bring things back as quickly as possible.</p>
<ul>
<li>So first, let&#8217;s run the TFTP server software. I&#8217;m using Tftpd32 available for free at <a href="http://tftpd32.jounin.net/" target="_blank">http://tftpd32.jounin.net</a></li>
<li>Now from the switch CLI determine your current IOS version by typing:</li>
</ul>
<p><span style="color: #99ccff;"><code>Router# show version</code></span></p>
<p style="text-align: left;">On my switch the version, as mentioned before, is 12.2(25) SEE3.</p>
<ul>
<li>Now locate the current IOS image using the dir command as shown:</li>
</ul>
<p><span style="color: #99ccff;"><code>Router# dir</code></span></p>
<p style="text-align: left;">From here I can see a directory named c3560-ipbasek9-mz.122-25.SEE3 which matches my version number above. Obviously depending on the version of IOS you&#8217;re running, this directory name will be different.</p>
<ul>
<li>So we now see the directory that contains the current IOS. Change to that directory and issue the dir command again to view the image file name.</li>
</ul>
<p><span style="color: #99ccff;"><code>Router# cd c3560-ipbasek9-mz.122-25.SEE3</code></span></p>
<p><span style="color: #99ccff;"><code>Router# dir</code><br />
</span></p>
<ul>
<li>I can now see the image file c3560-ipbasek9-mz.122-25.SEE3.bin and that&#8217;s the file that we want to backup. So with our TFTP program running we have what we need to back up the current IOS. From the switch CLI type the following to start the IOS backup:</li>
</ul>
<p style="text-align: left;"><span style="color: #99ccff;"><code>Router# copy flash:c3560-ipbasek9-mz.122-25.SEE3.bin tftp</code></span></p>
<p style="text-align: left;"><span style="color: #99ccff;"><code>Address or name of remote host []? 192.168.28.1</code></span></p>
<p style="text-align: left;"><span style="color: #99ccff;"><code>Destination filename [c3560-ipbasek9-mz.122-25.SEE3.bin]?</code></span></p>
<p style="text-align: left;">The remote host IP address is the IP displayed in the Server Interface field of the Tftpd32 program. After a little time, the download will finish and you should see a copy of the IOS in the directory shown in the Current Directory field of Tftpd32 as shown in <strong>Figure A</strong>.</p>
<p style="text-align: left;"><img class="aligncenter size-full wp-image-276" src="http://www.richstevenson.com/wp-content/uploads/2009/04/figurea1.jpg" alt="" width="401" height="335" /></p>
<p style="text-align: center;"><strong>Figure A:</strong> <em>You&#8217;ll need TFTP software to be able to upgrade and backup your switch.</em></p>
<p style="text-align: left;">
<ul>
<li>Next you need to back up your current configuration as follows:</li>
</ul>
<p><span style="color: #99ccff;"><code>Router# cd ..</code></span></p>
<p style="text-align: left;"><span style="color: #99ccff;"><code>Router# copy flash:config.text tftp</code></span></p>
<p style="text-align: left;"><span style="color: #99ccff;"><code>Address or name of remote host []? 192.168.28.1</code></span></p>
<p><span style="color: #99ccff;"><code>Destination filename [config.txt]?</code></span></p>
<h2 style="text-align: left;">Upgrading the switch</h2>
<p style="text-align: left;">So now that we have a good copy of both the current IOS and configuration, we&#8217;re ready to upload the new image. I&#8217;ve downloaded the tar package named c3560-ipbasek9-tar.122-44.SE6.tar form Cisco and placed it in my Tftpd32 Current Directory location. Also, on my switch I have enough room in flash to leave the current IOS and still be able to upload the newer image. This allows me to specify which image to boot from and test the upgrade before actually removing the older version. If you have the space, I suggest you do the same. It&#8217;s just another safety net in case something goes awry. If you don&#8217;t have the space, then you&#8217;ll have to delete the existing image first before performing the upgrade.</p>
<ul>
<li>To start the upgrade, from the switch CLI type the following:</li>
</ul>
<p><span style="color: #99ccff;"><code>Router# archive tar /xtract tftp://192.168.28.1/c3560-ipbasek9-tar.122-44.SE6.tar flash:</code></span></p>
<p>After a few minutes the tar file will complete the upload and extraction and you&#8217;ll receive an OK when it has finished. Since I left the original IOS in place, I need to specify which IOS I want the switch to load at boot up. I did so with this command and then saved and reloaded the switch.</p>
<p><span style="color: #99ccff;"><code>Router(config)# boot system flash:c3560-ipbasek9-mz.122-44.SE6/c3560-ipbasek9-mz.122-44.SE6.bin</code></span></p>
<p><span style="color: #99ccff;"><code>Router# write memory</code></span></p>
<p><span style="color: #99ccff;"><code>Router# reload</code><br />
</span></p>
<p><span style="color: #99ccff;"><code>Proceed with reload? [confirm]</code></span></p>
<ul>
<li>Once the switch loads, login and confirm the new IOS version is running.</li>
</ul>
<p><span style="color: #99ccff;"><code>Router# show version</code></span></p>
<ul>
<li>Now that the new image loaded successfully, I can delete the older version and remove the boot system command.</li>
</ul>
<p><span style="color: #99ccff;"><code>Router# delete /force /recursive flash:c3560-ipbasek9-mz.122-25.SEE3</code></span></p>
<p><span style="color: #99ccff;"><code>Router# no boot system</code><br />
</span></p>
<p>And that&#8217;s it. The switch has been upgraded, tested, and the older version removed.</p>
<g:plusone href="http://www.richstevenson.com/2009/04/15/upgrading-a-cisco-catalyst-switch/"  size="standard"   count="false"  ></g:plusone>]]></content:encoded>
			<wfw:commentRss>http://www.richstevenson.com/2009/04/15/upgrading-a-cisco-catalyst-switch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using Active Directory to authenticate to your Cisco routers &amp; switches</title>
		<link>http://www.richstevenson.com/2009/04/14/using-active-directory-to-authenticate-to-your-cisco-routers-switches/</link>
		<comments>http://www.richstevenson.com/2009/04/14/using-active-directory-to-authenticate-to-your-cisco-routers-switches/#comments</comments>
		<pubDate>Wed, 15 Apr 2009 00:04:06 +0000</pubDate>
		<dc:creator>Rich Stevenson</dc:creator>
				<category><![CDATA[Cisco]]></category>
		<category><![CDATA[AAA]]></category>
		<category><![CDATA[IAS]]></category>
		<category><![CDATA[RADIUS]]></category>

		<guid isPermaLink="false">http://www.richstevenson.com/?p=208</guid>
		<description><![CDATA[If you&#8217;re managing your Cisco routers, switches, etc. using local accounts created on each device, you need to read this article. Being relatively new to the Cisco IOS myself, I get excited when I find a time saver such as this. It&#8217;s one of those things that I knew could be done, but just never [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re managing your Cisco routers, switches, etc. using local accounts created on each device, you need to read this article. Being relatively new to the Cisco IOS myself, I get excited when I find a time saver such as this. It&#8217;s one of those things that I knew could be done, but just never took the time to investigate it. What I&#8217;m talking about it leveraging Active Directory as the authentication method into the Cisco IOS. So instead of creating and managing user accounts on the Cisco equipment, you can use the existing user accounts in AD. I&#8217;ll start by setting up and configuring the Internet Authentication Service, Microsoft&#8217;s version of a RADIUS server, in which the Cisco equipment will use to access AD for authentication.</p>
<p><span id="more-208"></span>Setting up the Internet Authentication Service</p>
<p>Windows Server 2003 ships with IAS so all you need to do is install it from the Add/Remove Programs. Make sure to login to the server with administrator privileges and follow these steps:</p>
<ul>
<li>Open the Add or Remove Programs applet from the Control Panel.</li>
<li>Click Add/Remove Windows Components, select Networking Services, and click Details.</li>
<li>Place a check mark at Internet Authentication Service and click OK, Next, and then Finish.</li>
</ul>
<p>Now that you have IAS installed, let&#8217;s take a look at how to configure it.</p>
<h2>Configuring IAS</h2>
<p>For my configuration, since I only have two in house people that would require access to the Cisco equipment, I&#8217;ve created an AD security group named CiscoAdmin. Any members of this group are granted access to the Cisco devices as well as level 15 privileges. So let&#8217;s first start with setting up the Remote Access Policy on the IAS.</p>
<ul>
<li>Launch the Internet Authentication Service from the Administrative Tools applet in the Control Panel.</li>
<li>Select Remote Access Policies from the left pane and right-click the Default policy in the right pane and select Delete.</li>
<li>In the right pane, right-click select New Remote Access Policy to invoke the Remote Access Policy Wizard.</li>
<li>Click Next, select Set up a custom policy,  type a name for your new policy in the Policy name text field and click Next. I used CiscoAuthentication for my policy name as seen in <strong>Figure A</strong>:</li>
</ul>
<p style="text-align: center;"><img class="size-full wp-image-215 aligncenter" src="http://www.richstevenson.com/wp-content/uploads/2009/04/figurea.jpg" alt="Creating a custom remote access policy" width="503" height="397" /></p>
<p style="text-align: center;"><strong>Figure A</strong>: <em>Creating a custom remote access policy.</em></p>
<ul>
<li>In the resulting dialog box click Add, select the Windows-Groups attribute type, and click Add as shown in <strong>Figure B</strong>:</li>
</ul>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-231" title="figureb" src="http://www.richstevenson.com/wp-content/uploads/2009/04/figureb.jpg" alt="figureb" width="384" height="374" /><strong>Figure B:</strong> <em>Specify that Windows groups will be used for authentication.</em></p>
<ul>
<li>Next, click Add in the resulting Groups dialog box and select the AD group that will contain the members who will be granted access to your Cisco equipment and Click OK. As mentioned previously, I created a group named CiscoAdmin so that will be the group I&#8217;m adding here. Once the group is selected, you&#8217;ll see the dialog shown in <strong>Figure C:</strong></li>
</ul>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-232" src="http://www.richstevenson.com/wp-content/uploads/2009/04/figurec.jpg" alt="" width="503" height="397" /><strong>Figure C: </strong><em>Specify the condition to meet to be granted access.</em></p>
<ul>
<li>Now click Next, select &#8216;Grant remote access permission&#8217;, and click Next. On the Profile dialog, click Edit Profile and click the Authentication tab. Now deselect all of the options and select &#8216;Unencrypted Authentication (PAP, SPAP)&#8217;. The Authentication tab should now look like the one shown in <strong>Figure D:</strong></li>
</ul>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-233" src="http://www.richstevenson.com/wp-content/uploads/2009/04/figured.jpg" alt="" width="404" height="466" /><strong>Figure D:</strong> <em>Set the Authentication type to only what&#8217;s shown in this figure.</em></p>
<ul>
<li>Now click the Advanced tab, highlight the Service-Type attribute and click Edit. Set the Attribute value to Administrative and click OK. Next, select the Framed-Protocol attribute and click Remove. The Advanced tab now looks like the one shown in<strong> Figure E:</strong> Click Ok.</li>
</ul>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-234" src="http://www.richstevenson.com/wp-content/uploads/2009/04/figuree.jpg" alt="" width="404" height="466" /><strong>Figure E: </strong><em>Configuring the service type as a RADIUS server.</em></p>
<p style="text-align: left;">At this point the system will warn about the authentication method that you&#8217;ve selected and ask if you&#8217;d like to view the help files for configuration. Click No and continue with the following steps.</p>
<ul>
<li>Now click Next and then Finish to complete the new Remote Access Policy.</li>
</ul>
<h2 style="text-align: left;">Adding a RADIUS client</h2>
<p>Now that you&#8217;ve setup the IAS, you ready to start adding clients. These clients are your Cisco routers, switches, etc that will use the RADIUS box for authentication. In this example we&#8217;ll be adding a router with the IP address of 192.168.1.1.</p>
<ul>
<li>In the Internet Authentication Service window, right-click on the RADIUS Clients folder and select New Radius Client form the resulting menu.</li>
<li>In the Friendly name field enter a name to identify your client by. This name can be whatever you want, I&#8217;ve chosen to use the host name of the router so I typed CLE_ROUTER.</li>
<li>Enter the IP address of the router in the Client address (IP or DNS) field. As mentioned previously the IP of my router is 192.168.1.1 so that&#8217;s what is entered here. <strong>Figure F</strong> shows this information entered as described. Click Next to contiue.</li>
</ul>
<p><img class="aligncenter size-full wp-image-243" src="http://www.richstevenson.com/wp-content/uploads/2009/04/figuref.jpg" alt="" width="503" height="386" /></p>
<p style="text-align: center;"><strong>Figure F:</strong> <em>Specify a name and the IP of the client.</em></p>
<ul>
<li>In the Client-Vendor pulldown menu, select Cisco.</li>
<li>In the Shared/Confirm secret fields enter a secret word or phrase using a combination of letters, numbers, upper &amp; lower case, etc and then click Finish. Remember what you type here. This shared secret needs to also be entered into your routers configuration which I&#8217;ll cover later in this article.  If they don&#8217;t match, authentication will fail. For simplicity, I&#8217;ve neglected my own advice and just entered &#8216;stevenson&#8217; as my shared secret. <strong>Figure G</strong> shows the dialog completed with the vendor and shared secret.</li>
</ul>
<p><img class="aligncenter size-full wp-image-244" src="http://www.richstevenson.com/wp-content/uploads/2009/04/figureg.jpg" alt="" width="503" height="386" /></p>
<p style="text-align: center;"><strong>Figure G:</strong> <em>Your shared secret must match the shared secret that you&#8217;ll enter into your router for authentication to succeed.</em></p>
<p>That completes the IAS configuration part of the article. Next I&#8217;ll show you how to configure the router to authenticate against the IAS server.</p>
<h2>Configuring the router for authentication</h2>
<p>Before we forge forward, you should make sure that you have a secret password enabled on the router.  You should also maintain a local user account on the router itself. That way, you still have a way back into the router if it loses connectivity to the IAS server. Once you have these two items in place, you&#8217;re ready for the next step. Enter the following commands into the router configuration:</p>
<p><span style="color: #99ccff;"><code>CLE_Router(config)# </code>aaa new-model</span></p>
<p>In this line, the IP address is the IP of your IAS server that you configured in the last section. Where you see &#8216;stevenson&#8217;, that&#8217;s the same shared secret that we entered when creating the RADIUS client on the IAS server.</p>
<p><span style="color: #99ccff;"><code>CLE_Router(config)# radius-server host 192.168.1.100 auth-port 1645 acct-port 1646 key stevenson</code></span></p>
<p>These lines setup the authentication &amp; authorization using the list &#8216;StevensonList&#8217; which obviously can be named whatever you choose. Notice where you see &#8216;radius local&#8217;. This means access the RADIUS server for authentication but if the server cannot be reached, then use the routers local database for authentication.<br />
<code><br />
<span style="color: #99ccff;">CLE_Router(config)#aaa authentication login StevensonList group radius local<br />
CLE_Router(config)# aaa authorization console<br />
CLE_Router(config)# aaa authorization exec  StevensonList group radius local</span></code></p>
<p>If you&#8217;re using the web interface for managing your router, add these commands.</p>
<p><span style="color: #99ccff;"><code>CLE_Router(config)# ip http authentication aaa login-authentication StevensonList<br />
CLE_Router(config)# ip http authentication aaa exec-authorization  StevensonList</code></span></p>
<p>And add these lines for console port access and terminal access.</p>
<p style="text-align: left;">
<p style="text-align: left;">
<p><span style="color: #99ccff;"><code>CLE_Router(config)# line con 0<br />
CLE_Router(config)# authorization exec StevensonList<br />
CLE_Router(config)# login authentication StevensonList<br />
CLE_Router(config)# line vty 0 4<br />
CLE_Router(config)# authorization exec StevensonList<br />
CLE_Router(config)# login authentication StevensonList<br />
CLE_Router(config)# line vty 5 15<br />
CLE_Router(config)# authorization exec StevensonList<br />
CLE_Router(config)# login authentication  StevensonList</code></span></p>
<p>And that completes the router side configuration. I&#8217;d leave your current telnet/ssh session open and test logging in from a new telnet/ssh using the AD credentials. Once everything seems to be working as expected, save the changes.</p>
<p>If you have over 50 pieces of equipment that you want to authenticate against the IAS server you&#8217;ll have to be running Windows 2003 Enterprise Edition or higher. The Standard Edition tops out at 50 RADIUS clients.</p>
<g:plusone href="http://www.richstevenson.com/2009/04/14/using-active-directory-to-authenticate-to-your-cisco-routers-switches/"  size="standard"   count="false"  ></g:plusone>]]></content:encoded>
			<wfw:commentRss>http://www.richstevenson.com/2009/04/14/using-active-directory-to-authenticate-to-your-cisco-routers-switches/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Automatically backup your Cisco IOS configurations</title>
		<link>http://www.richstevenson.com/2009/03/30/automatically-backup-your-cisco-ios-configurations/</link>
		<comments>http://www.richstevenson.com/2009/03/30/automatically-backup-your-cisco-ios-configurations/#comments</comments>
		<pubDate>Tue, 31 Mar 2009 01:36:39 +0000</pubDate>
		<dc:creator>Rich Stevenson</dc:creator>
				<category><![CDATA[Cisco]]></category>
		<category><![CDATA[achive]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[IOS]]></category>

		<guid isPermaLink="false">http://www.richstevenson.com/?p=61</guid>
		<description><![CDATA[So you have your router and switches all setup the way you want and everything is running smoothly within your network. Then one day it happens. Your router has a hardware failure and needs to be replaced. You expedite the replacement, mount it in the rack, power her up, and then realize that you don&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p><!--adsensestart--><br />
So you have your router and switches all setup the way you want and everything is running smoothly within your network. Then one day it happens. Your router has a hardware failure and needs to be replaced. You expedite the replacement, mount it in the rack, power her up, and then realize that you don&#8217;t have a copy of the most recent configuration or worse yet, you don&#8217;t have a copy at all!</p>
<p><span id="more-61"></span>Of course this can be avoided by manually copying the running configuration for safe keeping, but we like automatic. The kind of automatic that we don&#8217;t have to worry about. The kind of automatic that Cisco provided to us with the &#8216;archive&#8217; command starting with the IOS versions shown in <strong>Table A</strong>.</p>
<table id="wp1021247table1021245" style="height: 264px;" border="1" cellspacing="0" cellpadding="0" width="439" bordercolor="#808080">
<tbody>
<tr align="left" valign="bottom">
<th scope="col">
<div class="pCH1_CellHead1">Release</div>
</th>
<th scope="col">
<div class="pCH1_CellHead1">Modification</div>
</th>
</tr>
<tr align="left" valign="top">
<td>
<p class="pB1_Body1">12.3(7)T</p>
</td>
<td>
<p class="pB1_Body1">This command was introduced.</p>
</td>
</tr>
<tr align="left" valign="top">
<td>
<p class="pB1_Body1">12.2(25)S</p>
</td>
<td>
<p class="pB1_Body1">This command was integrated into Cisco IOS Release 12.2(25)S.</p>
</td>
</tr>
<tr align="left" valign="top">
<td>
<p class="pB1_Body1">12.2(28)SB</p>
</td>
<td>
<p class="pB1_Body1">This command was integrated into Cisco IOS Release 12.2(28)SB.</p>
</td>
</tr>
<tr align="left" valign="top">
<td>
<p class="pB1_Body1">12.2(33)SRA</p>
</td>
<td>
<p class="pB1_Body1">This command was integrated into Cisco IOS Release 12.2(33)SRA.</p>
</td>
</tr>
<tr align="left" valign="top">
<td>
<p class="pB1_Body1">12.2(31)SB2</p>
</td>
<td>
<p class="pB1_Body1">This command was implemented on the Cisco 10000 series.</p>
</td>
</tr>
<tr align="left" valign="top">
<td>
<p class="pB1_Body1">12.2(33)SXH</p>
</td>
<td>
<p class="pB1_Body1">This command was integrated into Cisco IOS Release 12.2(33)SXH.</p>
</td>
</tr>
<tr align="left" valign="top">
<td>
<p class="pB1_Body1">12.2(33)SB</p>
</td>
<td>
<p class="pB1_Body1">This command was integrated into Cisco IOS Release 12.2(33)SB and implemented on the Cisco 10000 series.</p>
</td>
</tr>
</tbody>
</table>
<p><em><strong>Table A</strong>: Archive command release history from Cisco.</em></p>
<p>The <span style="color: #800000;"><code>archive</code></span> command allows you to create a copy of your configuration manually, periodically, or when the configuration is stored in NVRAM via FTP, TFTP, HTTP, or RCP.</p>
<p>In this example, I&#8217;ll being configuring the router to copy the configuration to a Windows 2003 FTP server  every time the &#8216;write memory&#8217; command is issued. The file name is built on the routers host name, appended with &#8220;-x&#8221;, where &#8220;x&#8221; is an incremental number.  I&#8217;m also using the credentials of an Active Directory user, that I created for this purpose,  to allow the router to connect to the FTP server.</p>
<p>The FTP server address is: 192.168.1.50<br />
Username: stevenson\netadmin<br />
Password: n3t4dm1n</p>
<p>First we&#8217;ll configure the router with the FTP username and password.</p>
<p style="padding-left: 30px;"><span style="color: #800000;"><code>Router(config)# ip ftp username stevenson\netadmin<br />
Router(config)# ip ftp password n3t4dm1n</code></span></p>
<p>Now execute the &#8216;archive&#8217; command.</p>
<p style="padding-left: 30px;"><code> <span style="color: #800000;">Router(config)# archive</span></code></p>
<p>Now specify the path for the configuration archives</p>
<p style="padding-left: 30px;"><code> <span style="color: #800000;">Router(config-archive)# path ftp://192.168.1.50/$h<br />
Router(config-archive)# write-memory</span><br />
</code></p>
<p>The <span style="color: #800000;"><code>&amp;h</code></span> in the path instructs the system to use the hostname of the router when naming the archived configuration. And <span style="color: #800000;"><code>write-memory</code></span> causes the configuration to be archived each time the <span style="color: #800000;"><code>write memory</code></span> command is issued.</p>
<p>That&#8217;s it! You now have your router setup to automatically archive/copy your most recent configuration file to an FTP server for safe keeping. To test it out either enter:</p>
<p style="padding-left: 30px;"><span style="color: #800000;"><code>Router# write memory</code></span></p>
<p>or</p>
<p style="padding-left: 30px;"><span style="color: #800000;"><code>Router# archive config</code></span></p>
<p>Now check your FTP server and you should find the archived copy of your routers configuration.</p>
<p>If you want the router to archive your configuration at a desired interval, you can do that too by using the <span style="color: #800000;"><code>time-period</code></span> command followed by the number of minutes that you want the archiving to wait between archive creation.</p>
<p style="padding-left: 30px;"><span style="color: #800000;"><code>Router(config-archive)# time-period 10080</code></span></p>
<p>If you want to see a list of archives with the most recent highlighted, simply use this command:</p>
<p style="padding-left: 30px;"><span style="color: #800000;"><code>Router# show archive</code></span></p>
<p>Now that you have the configuration backed up and can see the listed archives, lets look at restoring from one of the archived configuration files. Decide which archive file that you want to restore, from the list you saw when you issued the <span style="color: #800000;"><code>show archive</code></span> command and enter that name as shown:</p>
<p><span style="color: #800000;"><code>Router# configure replace ftp://192.168.1.50/Router-1</code></span></p>
<p><span style="color: #800000;"><code>This will apply all necessary additions and deletions<br />
to replace the current running configuration with the<br />
contents of the specified configuration file, which is<br />
assumed to be a complete configuration, not a partial<br />
configuration. Enter Y if you are sure you want to proceed. ? [no]:y<br />
Total number of passes: 1<br />
Rollback Done</code></span></p>
<p>After you see &#8220;Rollback Done&#8221;, your selected archived configuration is now back in place on your router.</p>
<p>I&#8217;ve deployed this solution to a mix of Cisco routers, switches, and voice gateways and let me tell ya, it&#8217;s a nice feeling to know that all of those configs are being backed up automatically. Now if I have a failure or issue a bad command I can quickly and easily get things back to the way they were previously.<br />
<!--adsensestart--></p>
<g:plusone href="http://www.richstevenson.com/2009/03/30/automatically-backup-your-cisco-ios-configurations/"  size="standard"   count="false"  ></g:plusone>]]></content:encoded>
			<wfw:commentRss>http://www.richstevenson.com/2009/03/30/automatically-backup-your-cisco-ios-configurations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

