<?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>CleverWorkarounds &#187; Linksys</title>
	<atom:link href="http://www.cleverworkarounds.com/category/infrastructure/networking/linksys/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.cleverworkarounds.com</link>
	<description>After much frustration, it seems DEFAULT is the way to go...</description>
	<lastBuildDate>Thu, 02 Feb 2012 09:39:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>An annotated IPSEC example</title>
		<link>http://www.cleverworkarounds.com/2007/10/08/an-annotated-ipsec-example/</link>
		<comments>http://www.cleverworkarounds.com/2007/10/08/an-annotated-ipsec-example/#comments</comments>
		<pubDate>Mon, 08 Oct 2007 05:36:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Cisco]]></category>
		<category><![CDATA[IPSEC]]></category>
		<category><![CDATA[Linksys]]></category>
		<category><![CDATA[VPN]]></category>

		<guid isPermaLink="false">http://www.cleverworkarounds.com/2007/10/08/an-annotated-ipsec-example/</guid>
		<description><![CDATA[IPSEC.. WTF? Isn&#8217;t this supposed to by SharePoint? Well, yeah you got me.. but a few years back I was a Cisco nerd in the ISP industry and got pretty handy at it. I wrote this article 3 years ago but then forgot about it until recently.. so it may as well see the light [...]<p class="tags">No Tags</p>]]></description>
			<content:encoded><![CDATA[<p><script type="text/javascript"><!--
google_ad_client = "pub-6551570212921028";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_ad_channel = "";
google_ui_features = "rc:6";
//-->
</script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>   <br />IPSEC.. WTF? Isn&#8217;t this supposed to by SharePoint?</p>
<p>Well, yeah you got me.. but a few years back I was a Cisco nerd in the ISP industry and got pretty handy at it. I wrote this article 3 years ago but then forgot about it until recently.. so it may as well see the light of day because at the time I wrote it, there was very little info out there on this subject.</p>
<p><span id="more-36"></span></p>
<p>Linksys to Cisco IOS IPSEC Tunnel</p>
<p><strong>The network</strong></p>
<p>Site 1:&#160; (Linksys WAG54G)</p>
<ul>
<li>Inside Network: 172.18.30.0/24 </li>
<li>Gateway IP 200.100.1.1 </li>
<li>Inside IP 172.18.30.1 </li>
<li>NAT: Overloaded on Outside interface </li>
<li>LinkSys WAG54G. Software Version: 1.02.9, Dec 22 2004Site2: </li>
</ul>
<p>Site 2: (Cisco 3725)</p>
<ul>
<li>Inside Network: 192.168.100.0/24 </li>
<li>Gateway IP: 200.56.4.1 </li>
<li>Inside IP 192.168.100.1 </li>
<li>NAT: Overloaded on Outside interface </li>
<li>Cisco 3725 Router. IOS. IOS &#8482; 3700 Software (C3725-IK9O3S-M), Version 12.3(6), RELEASE SOFTWARE (fc3)      <br />System image file is &quot;slot0:c3725-ik9o3s-mz.123-6.bin&quot; </li>
</ul>
<p><strong>The IPSEC Parameters      <br /></strong></p>
<p>Probably the most common combination for IPSEC is to use 3DES/SHA/DH Group 2. For transforms ESP-3DES-SHA</p>
<ul>
<li>3DES, SHA1, ESP (no AH). </li>
<li>PFS is OFF! </li>
<li>DH Group 2 (Group1 and 2 only supported on the linksys) </li>
</ul>
<p><strong>The IKE Parameters      <br /></strong></p>
<ul>
<li>3DES, SHA, DH Group 2 </li>
<li>All IP traffic to traverse VPN tunnel. </li>
</ul>
<p><strong>Linksys Configuration</strong></p>
<ul>
<li>Security Tab &#8211; Choose VPN </li>
<li>You do not need to enable IPSEC passthrough. You would only do this if another device behind the linksys was actually doing the IPSEC tunnel. </li>
<li>Create a new tunnel entry and give it a name. Specify a subnet for the local security group (the local subnet) and set 172.18.30.0 with a 255.255.255.0 subnet mask </li>
<li>Specify a subnet for the remote security group. 192.168.100.0/255.255.255.0 </li>
</ul>
<p><a title="ls1.JPG" href="http://www.cleverworkarounds.com/?attachment_id=14"><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100807-0536-anannotated13.jpg" border="0" /></a></p>
<ul>
<li>Now we have to specify the IP address of the remote IPSEC peer. In our example we are using an IP address not a domain name </li>
</ul>
<p><a title="ls2.JPG" href="http://www.cleverworkarounds.com/?attachment_id=15"><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100807-0536-anannotated23.jpg" border="0" /></a></p>
<ul>
<li>Encryption should be set to 3DES and hash (authentication) to SHA. This is Phase II encryption (as will be confirmed in advanced settings screen). Set PFS to OFF in this example (Cisco defaults to off).&#160; The Key Lifetime here actually is Phase II key lifetime. Phase 1 key lifetime is in the advanced screen. </li>
<li>IKE is used, rather than manual.&#160; Cisco default setting for Key Lifetime is 86400 seconds. So change this end to match. Set the shared key as well. </li>
<li>Now click the advanced tab. Here we configure the phase 2 config. Repeat 3DES and SHA everywhere with 1024bit group (DH Group 2) </li>
</ul>
<p><a title="ls3.JPG" href="http://www.cleverworkarounds.com/?attachment_id=16"><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100807-0536-anannotated33.jpg" border="0" /></a></p>
<p>Note how this says that the linksys will try and offer DES/MD5/768, 3DES/SHA/1024 and 3DES/MD5/1024. In fact proposal 1 and 3 are therefore identical. I have not looked deeply into this, although it increases the Phase 1 work required when the two peers negotiate phase 1.</p>
<p><strong>CIsco Configuration</strong></p>
<p>Note that this particular router has 6 IPSEC tunnels to different peers. In this example, the connection to the WAG54G is the latest IPSEC tunnel. Comments are in itallics</p>
<p><span style="font-family: courier new">SITEB#sh run      <br />Building configuration&#8230;       <br /></span></p>
<p><em>First we define the ISAKMP policies that this router will accept. 4 are defined here. This is because the other 5 IPSEC tunnels have unique IKE requirements. Each different IPSEC peers have different capabilities.</em></p>
<p><span style="font-family: courier new">crypto isakmp policy 1 (3DES/SHA/DH Group 5)      <br />encr 3des       <br />authentication pre-share       <br />group 5       <br />!       <br />crypto isakmp policy 2 (3DES/MD5/DH Group 5)       <br />encr 3des       <br />hash md5       <br />authentication pre-share       <br />group 5       <br />!       <br />crypto isakmp policy 3 (DES/SHA/DH Group 5)       <br />authentication pre-share       <br />group 5       <br />!       <br /></span><em>This is the ISAKMP policy that will match the LINKSYS router at Site A.      <br /></em><span style="font-family: courier new">crypto isakmp policy 4 (3DES/SHA/DH Group 2)      <br />encr 3des       <br />authentication pre-share       <br />group 2</span></p>
<p><em>Note that all ISAKMP use pre-shared keys for authentication. These are defined below.      <br /></em><span style="font-family: courier new">crypto isakmp key xxxxxxxxx address yyyyyy      <br />crypto isakmp key xxxxxxxxx address yyyyyy       <br />crypto isakmp key xxxxxxxxx address yyyyyy       <br />crypto isakmp key xxxxxxxxxx address yyyyyy       <br />crypto isakmp key xxxxxxxxxx address yyyyyy       <br />crypto isakmp key thisisasecretpassword address 200.100.1.1       <br />!       <br />!</span>     <br /><em>This is the IPSEC Parameters. (Phase II) &#8211; explain here..</em></p>
<p><span style="font-family: courier new">crypto ipsec transform-set Default esp-3des esp-sha-hmac      <br />!       <br /></span><em>Now we define the crypto map itself. We specify the ACL that needs to be matched for each peer and then the transform set to use. Remember the first 5 crypto map entires are for other VPN&#8217;s.</em></p>
<p><span style="font-family: courier new">crypto map IPSEC 5 ipsec-isakmp      <br />set peer yyyyyy       <br />set transform-set Default       <br />match address xxxxxx       <br />crypto map IPSEC 10 ipsec-isakmp       <br />set peer yyyyyy       <br />set transform-set Default       <br />match address xxxxxx       <br />crypto map IPSEC 15 ipsec-isakmp       <br />set peer yyyyyy       <br />set transform-set Default       <br />set pfs group5       <br />match address xxxxxx       <br />crypto map IPSEC 30 ipsec-isakmp       <br />set peer yyyyyy       <br />set transform-set Default       <br />match address xxxxxx       <br />crypto map IPSEC 40 ipsec-isakmp       <br />set peer yyyyyy       <br />set transform-set Default       <br />match address xxxxxx       <br />crypto map IPSEC 50 ipsec-isakmp       <br />set peer yyyyyy       <br />set transform-set Default       <br />match address xxxxxx       <br />crypto map IPSEC 60 ipsec-isakmp       <br />set peer 200.100.1.1       <br />set transform-set Default       <br />match address SITEB_to_SITEA       <br />!       <br />!       <br />!       <br />!       <br />interface FastEthernet0/0       <br />no ip address       <br />shutdown       <br />speed auto       <br />full-duplex       <br />!       <br /></span><em>Now we apply the crypto map to the externally facing interface. </em></p>
<p><span style="font-family: courier new">interface FastEthernet0/1      <br />ip address 200.56.4.1 255.255.255.252       <br />ip access-group Firewall in       <br />no ip redirects       <br />ip nat outside       <br />duplex auto       <br />speed auto       <br />no cdp enable       <br />crypto map IPSEC       <br />!       <br />interface FastEthernet1/0       <br />description Inside       <br />ip address 192.168.100.1&#160; 255.255.255.0       <br />ip nat inside       <br />duplex auto       <br />speed auto       <br />!       <br />ip nat inside source list inside_net interface FastEthernet0/1 overload       <br />ip route 0.0.0.0 0.0.0.0 200.56.4.2       <br />!       <br /></span><em>This is the ACL that the policy map called IPSEC uses to identify traffic to be IPSEC encrypted      <br /></em><span style="font-family: courier new">ip access-list extended SITEB_to_SITEA      <br />permit ip 192.168.100.0 0.0.0.255 172.18.30.0 0.0.0.255       <br /></span></p>
<p><span style="font-family: courier new">ip access-list extended Firewall      <br />remark       <br />remark Allow TCP replys       <br />remark       <br />permit tcp any any established       <br />remark       <br />remark For VPN IPSec       <br />remark       <br />permit esp host 200.100.1.1 host 200.56.4.1       <br />permit udp host 200.100.1.1 host 200.56.4.1 eq isakmp       <br />permit icmp any any parameter-problem       <br />permit icmp any any source-quench       <br />permit icmp any any echo-reply       <br />permit icmp any any time-exceeded       <br />permit icmp any any unreachable       <br />deny&#160;&#160; ip any any log</span></p>
<p><em>This ACL is used to Network address translate all outgoing packets *except* the stuff for IPSEC. That has to stay with source address preserve. Therefore by using a deny entry we stop the router NATting any traffic from 192.168.100.0/24 to 172.18.30.0/24</em></p>
<p><span style="font-family: courier new">ip access-list extended inside_net      <br />deny&#160;&#160; ip 192.168.100.0 0.0.0.255 172.18.30.0 0.0.0.255       <br />permit ip 192.168.100.0 0.0.0.255 any       <br />!       <br />end       <br /></span></p>
<p><strong>Example 1: Tunnel initiated from Linksys end</strong></p>
<p>Logs (linksys). Linksys logs are quite basic, but you can see the 3 IKE Phase 1 packet exchange and tell that its using Main Mode (eg MM_I1) and then the Phase II Quick Mode (QM_I1) exchange.</p>
<p>Main mode Phase 1 happens first    <br /><span style="font-family: courier new">2005-02-06 22:29:39 IKE[1] Tx &gt;&gt; MM_I1 : 200.56.4.1 SA      <br />2005-02-06 22:29:39 IKE[1] Rx &lt;&lt; MM_R1 : 200.56.4.1 SA       <br />2005-02-06 22:29:39 IKE[1] ISAKMP SA CKI=[9ddfe293 4d8be14b] CKR=[cca2f07a 9045af27]       <br />2005-02-06 22:29:39 IKE[1] ISAKMP SA 3DES / SHA / PreShared / MODP_1024 / 86400 sec (*86400 sec)       <br />2005-02-06 22:29:39 IKE[1] Tx &gt;&gt; MM_I2 : 200.56.4.1 KE, NONCE       <br />2005-02-06 22:29:40 IKE[1] Rx &lt;&lt; MM_R2 : 200.56.4.1 KE, NONCE, VID, VID, VID, VID       <br />2005-02-06 22:29:40 IKE[1] Tx &gt;&gt; MM_I3 : 200.56.4.1 ID, HASH       <br />2005-02-06 22:29:41 IKE[1] Rx &lt;&lt; MM_R3 : 200.56.4.1 ID, HASH       <br />Great &#8211; we got this far. Once you see QM you know you have made it to Phase II       <br />2005-02-06 22:29:41 IKE[1] Tx &gt;&gt; QM_I1 : 200.56.4.1 HASH, SA, NONCE, KE, ID, ID       <br />2005-02-06 22:29:42 IKE[1] Rx &lt;&lt; QM_R1 : 200.56.4.1 HASH, SA, NONCE, KE, ID, ID, NOTIFY       <br />2005-02-06 22:29:42 IKE[1] Tx &gt;&gt; QM_I2 : 200.56.4.1 HASH       <br />2005-02-06 22:29:42 IKE[1] ESP_SA 3DES / SHA / 86400 sec / SPI=[c243f13f:a213c248]       <br />2005-02-06 22:29:42 IKE[1] Set up ESP tunnel with 200.56.4.1 Success !       <br />2005-02-06 22:29:42       <br /></span></p>
<p>Logs (Cisco). Below is the output from the commands <strong>Debug crypto ipsec</strong> and <strong>debug crypto isakmp</strong></p>
<p>Now for Cisco logs there is a massive amount of detail for better or worse <img src='http://www.cleverworkarounds.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> , So we will break it up. Recall that this sample setup has been taken from a live Cisco router that is loaded with 4 IPSEC policies. They are:</p>
<p>3DES/SHA/DH Group 5    <br />3DES/MD5/DH Group 5     <br />DES/SHA/DH Group 5     <br />3DES/SHA/DH Group 2</p>
<p>Now also recall that in addition to the defined policy, the Linksys does:</p>
<p>3DES/SHA/DH Group 2    <br />DES/MD5/DH Group 1     <br />3DES/SHA/DH Group 2     <br />3DES/MD5/DH Group 2.</p>
<p>Now the first part of the logs shows the linksys trying its 4 combinations against the 4 Cisco combinations. This takes a while.. Annotated comments inline</p>
<p>Feb&#160; 6 21:43:04.394 GMT: ISAKMP (0:0): received packet from 200.100.1.1 dport 500 sport 500 Global (N) NEW SA    <br />Feb&#160; 6 21:43:04.394 GMT: ISAKMP: local port 500, remote port 500     <br />Feb&#160; 6 21:43:04.394 GMT: ISAKMP: insert sa successfully sa = 64008FCC     <br />Feb&#160; 6 21:43:04.394 GMT: ISAKMP (0:709): Input = IKE_MESG_FROM_PEER, IKE_MM_EXCH</p>
<p><em>This is a MAIN MODE exchange. Not an aggressive mode exchange</em></p>
<p>Feb&#160; 6 21:43:04.394 GMT: ISAKMP (0:709): Old State = IKE_READY&#160; New State = IKE_R_MM1    <br />Feb&#160; 6 21:43:04.394 GMT: ISAKMP (0:709): processing SA payload. message ID = 0     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP: Looking for a matching key for 200.100.1.1 in default : success     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): found peer pre-shared key matching 200.100.1.1     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709) local preshared key found<em>&#160;</em></p>
<p><em>The preshared keys match and therefore the IKE peer is authenticated. Now we have to negotiate a common IKE SA policy between the peers to protect the IKE Exchange</em></p>
<p>Feb&#160; 6 21:43:04.398 GMT: ISAKMP : Scanning profiles for xauth &#8230;</p>
<p>Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): Checking ISAKMP transform 1 against priority 1 policy    <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; encryption 3DES-CBC     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; hash SHA     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; auth pre-share     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; default group 2     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life type in seconds     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life duration (VPI) of&#160; 0&#215;0 0&#215;1 0&#215;51 0&#215;80     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): Diffie-Hellman group offered does not match policy!</p>
<p><em>The cisco&#8217;s policy 1 is 3DES/SHA/DH Group 5 and this does not match Linksys polic 1 of DES/SHA/DH2</em></p>
<p>Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): atts are not acceptable. Next payload is 3    <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): Checking ISAKMP transform 2 against priority 1 policy     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; encryption DES-CBC     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; hash MD5     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; auth pre-share     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; default group 1     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life type in seconds     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life duration (VPI) of&#160; 0&#215;0 0&#215;1 0&#215;51 0&#215;80     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): Encryption algorithm offered does not match policy!</p>
<p><em>The cisco&#8217;s policy 1 is 3DES/SHA/DH Group 5 and this does not match Linksys policy 2 of DES/MD5/DH2</em></p>
<p>Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): atts are not acceptable. Next payload is 3    <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): Checking ISAKMP transform 3 against priority 1 policy     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; encryption 3DES-CBC     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; hash SHA     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; auth pre-share     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; default group 2     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life type in seconds     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life duration (VPI) of&#160; 0&#215;0 0&#215;1 0&#215;51 0&#215;80     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): Diffie-Hellman group offered does not match policy!</p>
<p><em>Same as offer 1. The cisco&#8217;s policy 1 is 3DES/SHA/DH Group 5 and this does not match Linksys of 3DES/SHA/DH2</em></p>
<p>Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): atts are not acceptable. Next payload is 3    <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): Checking ISAKMP transform 4 against priority 1 policy     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; encryption 3DES-CBC     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; hash MD5     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; auth pre-share     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; default group 2     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life type in seconds     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life duration (VPI) of&#160; 0&#215;0 0&#215;1 0&#215;51 0&#215;80     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): Hash algorithm offered does not match policy!</p>
<p><em>The cisco&#8217;s policy 1 is 3DES/SHA/DH Group 5 and this does not match Linksys of 3DES/MD5/DH2</em></p>
<p>Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): atts are not acceptable. Next payload is 0    <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): Checking ISAKMP transform 1 against priority 2 policy     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; encryption 3DES-CBC     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; hash SHA     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; auth pre-share     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; default group 2     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life type in seconds     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life duration (VPI) of&#160; 0&#215;0 0&#215;1 0&#215;51 0&#215;80     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): Hash algorithm offered does not match policy!</p>
<p><em>The cisco&#8217;s policy 2 (note priority 2 policy above) is 3DES/MD5/DH Group 5 and this does not match Linksys of 3DES/SHA/DH2      <br /></em></p>
<p>Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): atts are not acceptable. Next payload is 3</p>
<p>Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): Checking ISAKMP transform 2 against priority 2 policy    <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; encryption DES-CBC     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; hash MD5     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; auth pre-share     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; default group 1     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life type in seconds     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life duration (VPI) of&#160; 0&#215;0 0&#215;1 0&#215;51 0&#215;80     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): Encryption algorithm offered does not match policy!The cisco&#8217;s policy 2 is 3DES/MD5/DH Group 5 and this does not match Linksys of DES/MD5/DH1Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): atts are not acceptable. Next payload is 3     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): Checking ISAKMP transform 3 against priority 2 policy     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; encryption 3DES-CBC     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; hash SHA     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; auth pre-share     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; default group 2     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life type in seconds     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life duration (VPI) of&#160; 0&#215;0 0&#215;1 0&#215;51 0&#215;80     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): Hash algorithm offered does not match policy!The cisco&#8217;s policy 2 is 3DES/MD5/DH Group 5 and this does not match Linksys of 3DES/SHA/DH2Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): atts are not acceptable. Next payload is 3     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP (0:709): Checking ISAKMP transform 4 against priority 2 policy     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; encryption 3DES-CBC     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; hash MD5     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; auth pre-share     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; default group 2     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life type in seconds     <br />Feb&#160; 6 21:43:04.398 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life duration (VPI) of&#160; 0&#215;0 0&#215;1 0&#215;51 0&#215;80     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): Diffie-Hellman group offered does not match policy!The cisco&#8217;s policy 2 is 3DES/MD5/DH Group 5 and this does not match Linksys of 3DES/MD5/DH2Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): atts are not acceptable. Next payload is 0     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): Checking ISAKMP transform 1 against priority 3 policy     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; encryption 3DES-CBC     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; hash SHA     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; auth pre-share     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; default group 2     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life type in seconds     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life duration (VPI) of&#160; 0&#215;0 0&#215;1 0&#215;51 0&#215;80     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): Encryption algorithm offered does not match policy!     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): atts are not acceptable. Next payload is 3The cisco&#8217;s policy 3 is DES/SHA/DH Group 5 and this does not match Linksys of 3DES/SHA/DH2</p>
<p>Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): Checking ISAKMP transform 2 against priority 3 policy    <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; encryption DES-CBC     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; hash MD5     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; auth pre-share     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; default group 1     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life type in seconds     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life duration (VPI) of&#160; 0&#215;0 0&#215;1 0&#215;51 0&#215;80     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): Hash algorithm offered does not match policy!     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): atts are not acceptable. Next payload is 3</p>
<p><em>The cisco&#8217;s policy 3 is DES/SHA/DH Group 5 and this does not match Linksys of DES/MD5/DH1</em></p>
<p>Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): Checking ISAKMP transform 3 against priority 3 policy    <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; encryption 3DES-CBC     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; hash SHA     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; auth pre-share     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; default group 2     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life type in seconds     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life duration (VPI) of&#160; 0&#215;0 0&#215;1 0&#215;51 0&#215;80     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): Encryption algorithm offered does not match policy!     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): atts are not acceptable. Next payload is 3</p>
<p><em>The cisco&#8217;s policy 3 is DES/SHA/DH Group 5 and this does not match Linksys of 3DES/SHA/DH2</em></p>
<p>Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): Checking ISAKMP transform 4 against priority 3 policy    <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; encryption 3DES-CBC     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; hash MD5     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; auth pre-share     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; default group 2     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life type in seconds     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life duration (VPI) of&#160; 0&#215;0 0&#215;1 0&#215;51 0&#215;80     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): Encryption algorithm offered does not match policy!     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): atts are not acceptable. Next payload is 0</p>
<p><em>The cisco&#8217;s policy 3 is DES/SHA/DH Group 5 and this does not match Linksys of 3DES/MD5/DH2</em></p>
<p>Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): Checking ISAKMP transform 1 against priority 4 policy    <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; encryption 3DES-CBC     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; hash SHA     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; auth pre-share     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; default group 2     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life type in seconds     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; life duration (VPI) of&#160; 0&#215;0 0&#215;1 0&#215;51 0&#215;80     <br />Feb&#160; 6 21:43:04.402 GMT: ISAKMP (0:709): atts are acceptable. Next payload is 3</p>
<p><em>Aha! We finally Hit policy 4 on the Cisco! 3DES/SHA/DH Group 2.</em></p>
<p><em>(This illustrates how advantageous it is to agree on a common IKE policy. Since each end has multiple combinations, there can be an increased number of combinations! Can be difficult though when dealing with vendor interoperability and 3DES export restrictions)</em></p>
<p><em>Now we deal with the second Main Mode Exchange. This is a DH exchange to generate shared secret keys.</em></p>
<p><em>You will see MMx which is Cisco&#8217;s state transitions as each sequence is performed. </em></p>
<p><em>MM1 &#8211; send an SA setup packet. </em></p>
<p>Feb&#160; 6 21:43:04.434 GMT: ISAKMP (0:709): Input = IKE_MESG_INTERNAL, IKE_PROCESS_MAIN_MODE    <br />Feb&#160; 6 21:43:04.438 GMT: ISAKMP (0:709): Old State = IKE_R_MM1&#160; New State = IKE_R_MM1     <br />Feb&#160; 6 21:43:04.438 GMT: ISAKMP (0:709): sending packet to 200.100.1.1 my_port 500 peer_port 500 (R) MM_SA_SETUP     <br />Feb&#160; 6 21:43:04.438 GMT: ISAKMP (0:709): Input = IKE_MESG_INTERNAL, IKE_PROCESS_COMPLETE</p>
<p><em>Packet send successfully therefore transition to MM2</em></p>
<p>Feb&#160; 6 21:43:04.438 GMT: ISAKMP (0:709): Old State = IKE_R_MM1&#160; New State = IKE_R_MM2    <br />Feb&#160; 6 21:43:05.378 GMT: ISAKMP (0:709): received packet from 200.100.1.1 dport 500 sport 500 Global (R) MM_SA_SETUP     <br />Feb&#160; 6 21:43:05.378 GMT: ISAKMP (0:709): Input = IKE_MESG_FROM_PEER, IKE_MM_EXCH</p>
<p><em>We received the IKE packet back from the peer. Now we move from MM2 to MM3</em></p>
<p>Feb&#160; 6 21:43:05.378 GMT: ISAKMP (0:709): Old State = IKE_R_MM2&#160; New State = IKE_R_MM3    <br />Feb&#160; 6 21:43:05.382 GMT: ISAKMP (0:709): processing KE payload. message ID = 0     <br />Feb&#160; 6 21:43:05.422 GMT: ISAKMP (0:709): processing NONCE payload. message ID = 0     <br />Feb&#160; 6 21:43:05.422 GMT: ISAKMP: Looking for a matching key for 200.100.1.1 in default : success     <br />Feb&#160; 6 21:43:05.422 GMT: ISAKMP (0:709): found peer pre-shared key matching 200.100.1.1     <br />Feb&#160; 6 21:43:05.422 GMT: ISAKMP (0:709): SKEYID state generated     <br />Feb&#160; 6 21:43:05.422 GMT: ISAKMP (0:709): Input = IKE_MESG_INTERNAL, IKE_PROCESS_MAIN_MODE     <br />Feb&#160; 6 21:43:05.422 GMT: ISAKMP (0:709): Old State = IKE_R_MM3&#160; New State = IKE_R_MM3     <br />Feb&#160; 6 21:43:05.422 GMT: ISAKMP (0:709): sending packet to 200.100.1.1 my_port 500 peer_port 500 (R) MM_KEY_EXCH     <br />Feb&#160; 6 21:43:05.422 GMT: ISAKMP (0:709): Input = IKE_MESG_INTERNAL, IKE_PROCESS_COMPLETE</p>
<p><em>We received the DH key info from the peer and it checks out! Great. Now we do the thirsd MM exchange. We verify the peers identity uising IP address</em></p>
<p><em>Sending our packet out. Transition to MM4</em></p>
<p>Feb&#160; 6 21:43:05.422 GMT: ISAKMP (0:709): Old State = IKE_R_MM3&#160; New State = IKE_R_MM4    <br />Feb&#160; 6 21:43:06.942 GMT: ISAKMP (0:709): received packet from 200.100.1.1 dport 500 sport 500 Global (R) MM_KEY_EXCH     <br />Feb&#160; 6 21:43:06.942 GMT: ISAKMP (0:709): Input = IKE_MESG_FROM_PEER, IKE_MM_EXCH</p>
<p><em>Successfully received packet from peer. to MM5</em></p>
<p>Feb&#160; 6 21:43:06.942 GMT: ISAKMP (0:709): Old State = IKE_R_MM4&#160; New State = IKE_R_MM5    <br />Feb&#160; 6 21:43:06.942 GMT: ISAKMP (0:709): processing ID payload. message ID = 0     <br />Feb&#160; 6 21:43:06.942 GMT: ISAKMP (0:709): ID payload     <br />next-payload : 8     <br />type&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; : 1     <br />address&#160;&#160;&#160;&#160;&#160; : 200.100.1.1     <br />protocol&#160;&#160;&#160;&#160; : 0     <br />port&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; : 0     <br />length&#160;&#160;&#160;&#160;&#160;&#160; : 12</p>
<p><em>At this point, the peer (the Linksys) has sent its identity info as per the 3rd main mode exchange of IKE Phase 1. The error message below is a bit of a red herring. It relates to a specific IPSEC config the router checks for. See here for more info. <a href="http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122newft/122t/122t15/ft_vrfip.htm"><span style="color: blue; text-decoration: underline">http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122newft/122t/122t15/ft_vrfip.htm</span></a></em>     <br /><em>It can be safely ignored..</em></p>
<p>Feb&#160; 6 21:43:06.942 GMT: ISAKMP (0:709): peer matches *none* of the profiles</p>
<p><em>Now we need to check the hash of the identity data</em></p>
<p>Feb&#160; 6 21:43:06.942 GMT: ISAKMP (0:709): processing HASH payload. message ID = 0    <br />Feb&#160; 6 21:43:06.946 GMT: ISAKMP (0:709): SA authentication status:     <br />Feb&#160; 6 21:43:06.946 GMT:&#160; authenticated     <br />Feb&#160; 6 21:43:06.946 GMT: ISAKMP (0:709): SA has been authenticated with 200.100.1.1</p>
<p><em>Great &#8211; everything checks out. Again, ignore the next message</em></p>
<p>Feb&#160; 6 21:43:06.946 GMT: ISAKMP (0:709): peer matches *none* of the profiles</p>
<p><em>Now we send our ID info to the Linksys peer to complete the 3rd exchange of Main Mode Phase 1.</em></p>
<p>Feb&#160; 6 21:43:06.946 GMT: ISAKMP (0:709): Input = IKE_MESG_INTERNAL, IKE_PROCESS_MAIN_MODE    <br />Feb&#160; 6 21:43:06.946 GMT: ISAKMP (0:709): Old State = IKE_R_MM5&#160; New State = IKE_R_MM5     <br />Feb&#160; 6 21:43:06.946 GMT: ISAKMP (0:709): SA is doing pre-shared key authentication using id type ID_IPV4_ADDR     <br />Feb&#160; 6 21:43:06.946 GMT: ISAKMP (0:709): ID payload     <br />next-payload : 8     <br />type&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; : 1     <br />address&#160;&#160;&#160;&#160;&#160; : 200.56.4.1     <br />protocol&#160;&#160;&#160;&#160; : 17     <br />port&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; : 500     <br />length&#160;&#160;&#160;&#160;&#160;&#160; : 12     <br />Feb&#160; 6 21:43:06.946 GMT: ISAKMP (709): Total payload length: 12     <br />Feb&#160; 6 21:43:06.946 GMT: ISAKMP (0:709): sending packet to 200.100.1.1 my_port 500 peer_port 500 (R) MM_KEY_EXCH     <br />Feb&#160; 6 21:43:06.946 GMT: ISAKMP (0:709): Input = IKE_MESG_INTERNAL, IKE_PROCESS_COMPLETE</p>
<p><em>Great! It looks like it all has worked as expected.</em></p>
<p>Feb&#160; 6 21:43:06.946 GMT: ISAKMP (0:709): Old State = IKE_R_MM5&#160; New State = IKE_P1_COMPLETE    <br />Feb&#160; 6 21:43:06.946 GMT: ISAKMP (0:709): Input = IKE_MESG_INTERNAL, IKE_PHASE1_COMPLETE     <br />Feb&#160; 6 21:43:06.946 GMT: ISAKMP (0:709): Old State = IKE_P1_COMPLETE&#160; New State = IKE_P1_COMPLETE</p>
<p><em>Wohoo! Phase 1 is complete. Now we move to Phase 2 and do some real work. Now in Phase II, there is one mode called Quick mode and it is a 3 way exchange. First we get a packet from the originating peer &#8211; the Linksys. We check the hash and then the security association payload.</em></p>
<p>Feb&#160; 6 21:43:07.894 GMT: ISAKMP (0:709): received packet from 200.100.1.1 dport 500 sport 500 Global (R) QM_IDLE&#160;&#160;&#160;&#160;&#160; <br />Feb&#160; 6 21:43:07.894 GMT: ISAKMP: set new node -841765728 to QM_IDLE&#160;&#160;&#160;&#160;&#160; <br />Feb&#160; 6 21:43:07.894 GMT: ISAKMP (0:709): processing HASH payload. message ID = -841765728     <br />Feb&#160; 6 21:43:07.894 GMT: ISAKMP (0:709): processing SA payload. message ID = -841765728</p>
<p><em>We have an IPSEC proposal to examine. Does it match our end?</em></p>
<p>Feb&#160; 6 21:43:07.894 GMT: ISAKMP (0:709): Checking IPSec proposal 1    <br />Feb&#160; 6 21:43:07.894 GMT: ISAKMP: transform 1, ESP_3DES     <br />Feb&#160; 6 21:43:07.894 GMT: ISAKMP:&#160;&#160; attributes in transform:     <br />Feb&#160; 6 21:43:07.894 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; SA life type in seconds     <br />Feb&#160; 6 21:43:07.894 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; SA life duration (VPI) of&#160; 0&#215;0 0&#215;1 0&#215;51 0&#215;80     <br />Feb&#160; 6 21:43:07.898 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; group is 2     <br />Feb&#160; 6 21:43:07.898 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; encaps is 1 (Tunnel)     <br />Feb&#160; 6 21:43:07.898 GMT: ISAKMP:&#160;&#160;&#160;&#160;&#160; authenticator is HMAC-SHA</p>
<p><em>Yes this proposal matches! Now we send our proposal and acceptance!</em></p>
<p>Feb&#160; 6 21:43:07.898 GMT: ISAKMP (0:709): atts are acceptable.    <br />Feb&#160; 6 21:43:07.898 GMT: IPSEC(validate_proposal_request): proposal part #1,     <br />&#160; (key eng. msg.) INBOUND local= 200.56.4.1, remote= 200.100.1.1,     <br />&#160;&#160;&#160; local_proxy= 192.168.100.0/255.255.255.0/0/0 (type=4),     <br />&#160;&#160;&#160; remote_proxy= 172.18.30.0/255.255.255.0/0/0 (type=4),     <br />&#160;&#160;&#160; protocol= ESP, transform= esp-3des esp-sha-hmac&#160; (Tunnel),     <br />&#160;&#160;&#160; lifedur= 0s and 0kb,     <br />&#160;&#160;&#160; spi= 0&#215;0(0), conn_id= 0, keysize= 0, flags= 0&#215;22</p>
<p>Feb&#160; 6 21:43:07.930 GMT: ISAKMP (0:709): processing NONCE payload. message ID = -841765728    <br />Feb&#160; 6 21:43:07.930 GMT: ISAKMP (0:709): processing KE payload. message ID = -841765728     <br />Feb&#160; 6 21:43:07.974 GMT: ISAKMP (0:709): processing ID payload. message ID = -841765728     <br />Feb&#160; 6 21:43:07.974 GMT: ISAKMP (0:709): processing ID payload. message ID = -841765728     <br />Feb&#160; 6 21:43:07.974 GMT: ISAKMP (0:709): asking for 1 spis from ipsec     <br />Feb&#160; 6 21:43:07.974 GMT: ISAKMP (0:709): Node -841765728, Input = IKE_MESG_FROM_PEER, IKE_QM_EXCH     <br />Feb&#160; 6 21:43:07.974 GMT: ISAKMP (0:709): Old State = IKE_QM_READY&#160; New State = IKE_QM_SPI_STARVE     <br />Feb&#160; 6 21:43:07.974 GMT: IPSEC(key_engine): got a queue event&#8230;     <br />Feb&#160; 6 21:43:07.974 GMT: IPSEC(spi_response): getting spi 1387857340 for SA     <br />from 200.56.4.1&#160;&#160; to 200.100.1.1&#160; for prot 3     <br />Feb&#160; 6 21:43:07.974 GMT: ISAKMP: received ke message (2/1)     <br />Feb&#160; 6 21:43:08.226 GMT: ISAKMP (0:709): sending packet to 200.100.1.1 my_port 500 peer_port 500 (R) QM_IDLE</p>
<p><em>Okay we have sent our Quick Mode reply packet to the Linksys</em></p>
<p>Feb&#160; 6 21:43:08.226 GMT: ISAKMP (0:709): Node -841765728, Input = IKE_MESG_FROM_IPSEC, IKE_SPI_REPLY    <br />Feb&#160; 6 21:43:08.226 GMT: ISAKMP (0:709): Old State = IKE_QM_SPI_STARVE&#160; New State = IKE_QM_R_QM2</p>
<p><em>We have received the acknoweledgement from the peer and can proceed to build the IPSEC Security Association!</em></p>
<p>Feb&#160; 6 21:43:09.758 GMT: ISAKMP (0:709): received packet from 200.100.1.1 dport 500 sport 500 Global (R) QM_IDLE&#160;&#160;&#160;&#160;&#160; <br />Feb&#160; 6 21:43:09.758 GMT: ISAKMP (0:709): Creating IPSec SAs     <br />Feb&#160; 6 21:43:09.758 GMT:&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; inbound SA from 200.100.1.1 to 200.56.4.1 (f/i)&#160; 0/ 0     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; (proxy 172.18.30.0 to 192.168.100.0)     <br />Feb&#160; 6 21:43:09.762 GMT:&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; has spi 0&#215;52B905BC and conn_id 5810 and flags 23     <br />Feb&#160; 6 21:43:09.762 GMT:&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; lifetime of 86400 seconds     <br />Feb&#160; 6 21:43:09.762 GMT:&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; has client flags 0&#215;0     <br />Feb&#160; 6 21:43:09.762 GMT:&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; outbound SA from 200.56.4.1&#160;&#160; to 200.100.1.1&#160; (f/i)&#160; 0/ 0 (proxy 192.168.100.0&#160;&#160; to 172.18.30.0&#160;&#160;&#160; )     <br />Feb&#160; 6 21:43:09.762 GMT:&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; has spi -841765728 and conn_id 5811 and flags 2B     <br />Feb&#160; 6 21:43:09.762 GMT:&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; lifetime of 86400 seconds     <br />Feb&#160; 6 21:43:09.762 GMT:&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; has client flags 0&#215;0     <br />Feb&#160; 6 21:43:09.762 GMT: ISAKMP (0:709): deleting node -841765728 error FALSE reason &quot;quick mode done (await)&quot;     <br />Feb&#160; 6 21:43:09.762 GMT: ISAKMP (0:709): Node -841765728, Input = IKE_MESG_FROM_PEER, IKE_QM_EXCH     <br />Feb&#160; 6 21:43:09.762 GMT: ISAKMP (0:709): Old State = IKE_QM_R_QM2&#160; New State = IKE_QM_PHASE2_COMPLETE</p>
<p><em>Yay! Phase II completed as well. Build that SA then!</em></p>
<p>Feb&#160; 6 21:43:09.762 GMT: IPSEC(key_engine): got a queue event&#8230;    <br />Feb&#160; 6 21:43:09.762 GMT: IPSEC(initialize_sas): ,     <br />&#160; (key eng. msg.) INBOUND local= 200.56.4.1, remote= 200.100.1.1,     <br />&#160;&#160;&#160; local_proxy= 192.168.100.0/255.255.255.0/0/0 (type=4),     <br />&#160;&#160;&#160; remote_proxy= 172.18.30.0/255.255.255.0/0/0 (type=4),     <br />&#160;&#160;&#160; protocol= ESP, transform= esp-3des esp-sha-hmac&#160; (Tunnel),     <br />&#160;&#160;&#160; lifedur= 86400s and 0kb,     <br />&#160;&#160;&#160; spi= 0&#215;52B905BC(1387857340), conn_id= 5810, keysize= 0, flags= 0&#215;23     <br />Feb&#160; 6 21:43:09.762 GMT: IPSEC(initialize_sas): ,     <br />&#160; (key eng. msg.) OUTBOUND local= 200.56.4.1, remote= 200.100.1.1,     <br />&#160;&#160;&#160; local_proxy= 192.168.100.0/255.255.255.0/0/0 (type=4),     <br />&#160;&#160;&#160; remote_proxy= 172.18.30.0/255.255.255.0/0/0 (type=4),     <br />&#160;&#160;&#160; protocol= ESP, transform= esp-3des esp-sha-hmac&#160; (Tunnel),     <br />&#160;&#160;&#160; lifedur= 86400s and 0kb,     <br />&#160;&#160;&#160; spi= 0xCDD3ACA0(3453201568), conn_id= 5811, keysize= 0, flags= 0&#215;2B     <br />&#160; <br />Feb&#160; 6 21:43:09.762 GMT: IPSEC(crypto_ipsec_sa_find_ident_head): reconnecting with the same proxies and 200.100.1.1     <br />Feb&#160; 6 21:43:09.762 GMT: IPSEC(add mtree): src 192.168.100.0, dest 172.18.30.0, dest_port 0Feb&#160; 6 21:43:09.762 GMT: IPSEC(create_sa): sa created,     <br />&#160; (sa) sa_dest= 200.56.4.1, sa_prot= 50,     <br />&#160;&#160;&#160; sa_spi= 0&#215;52B905BC(1387857340),     <br />&#160;&#160;&#160; sa_trans= esp-3des esp-sha-hmac , sa_conn_id= 5810     <br />Feb&#160; 6 21:43:09.762 GMT: IPSEC(create_sa): sa created,     <br />&#160; (sa) sa_dest= 200.100.1.1, sa_prot= 50,     <br />&#160;&#160;&#160; sa_spi= 0xCDD3ACA0(3453201568),     <br />&#160;&#160;&#160; sa_trans= esp-3des esp-sha-hmac , sa_conn_id= 5811     <br />&#160; <br />Done! Now lets use the Cisco show commands to have a look at the ISAKMP SA and IPSEC sa&#8217;s.</p>
<p><strong>Checking IPSEC Status</strong></p>
<p><span style="font-family: courier new">RTCI01#sh cry      <br />RTCI01#sh crypto isa       <br />RTCI01#sh crypto isakmp sa       <br />dst&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; src&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; state&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; conn-id slot       <br />xxxxxx&#160;&#160; 200.100.1.1&#160;&#160; QM_IDLE&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 673&#160;&#160;&#160; 0       <br />200.56.4.1&#160;&#160; 200.100.1.1&#160; QM_IDLE&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 709&#160;&#160;&#160; 0       <br />xxxxxx&#160;&#160; 200.100.1.1&#160;&#160; QM_IDLE&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 697&#160;&#160;&#160; 0       <br />xxxxxx&#160;&#160; 200.100.1.1&#160;&#160; QM_IDLE&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 674&#160;&#160;&#160; 0       <br /></span></p>
<p><span style="font-family: courier new">RTCI01#sh crypto ipsec sa      <br /></span></p>
<p><span style="font-family: courier new">interface: FastEthernet0/1      <br />&#160;&#160;&#160; Crypto map tag: IPSEC, local addr. 200.56.4.1       <br /></span></p>
<p><span style="font-family: courier new">&#160;&#160; protected vrf:      <br />&#160;&#160; local&#160; ident (addr/mask/prot/port): (192.168.100.0/255.255.255.0/0/0)       <br />&#160;&#160; remote ident (addr/mask/prot/port): (172.18.30.0/255.255.255.0/0/0)       <br />&#160;&#160; current_peer: 200.100.1.1:500       <br />&#160;&#160;&#160;&#160; PERMIT, flags={origin_is_acl,}       <br />&#160;&#160;&#160; #pkts encaps: 0, #pkts encrypt: 0, #pkts digest 0       <br />&#160;&#160;&#160; #pkts decaps: 0, #pkts decrypt: 0, #pkts verify 0       <br />&#160;&#160;&#160; #pkts compressed: 0, #pkts decompressed: 0       <br />&#160;&#160;&#160; #pkts not compressed: 0, #pkts compr. failed: 0       <br />&#160;&#160;&#160; #pkts not decompressed: 0, #pkts decompress failed: 0       <br />&#160;&#160;&#160; #send errors 0, #recv errors 0       <br /></span></p>
<p><span style="font-family: courier new">&#160;&#160;&#160;&#160; local crypto endpt.: 200.56.4.1, remote crypto endpt.: 200.100.1.1      <br />&#160;&#160;&#160;&#160; path mtu 1500, media mtu 1500       <br />&#160;&#160;&#160;&#160; current outbound spi: CDD3ACA0       <br /></span></p>
<p><span style="font-family: courier new">&#160;&#160;&#160;&#160; inbound esp sas:      <br />&#160;&#160;&#160;&#160;&#160; spi: 0&#215;52B905BC(1387857340)       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; transform: esp-3des esp-sha-hmac ,       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; in use settings ={Tunnel, }       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; slot: 0, conn id: 5810, flow_id: 2827, crypto map: PIVoD       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; sa timing: remaining key lifetime (k/sec): (4573743/3565)       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; IV size: 8 bytes       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; replay detection support: Y       <br /></span></p>
<p><span style="font-family: courier new">&#160;&#160;&#160;&#160; inbound ah sas:      <br /></span></p>
<p><span style="font-family: courier new">&#160;&#160;&#160;&#160; inbound pcp sas:      <br /></span></p>
<p><span style="font-family: courier new">&#160;&#160;&#160;&#160; outbound esp sas:      <br />&#160;&#160;&#160;&#160;&#160; spi: 0xCDD3ACA0(3453201568)       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; transform: esp-3des esp-sha-hmac ,       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; in use settings ={Tunnel, }       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; slot: 0, conn id: 5811, flow_id: 2828, crypto map: PIVoD       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; sa timing: remaining key lifetime (k/sec): (4573743/3562)       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; IV size: 8 bytes       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; replay detection support: Y       <br /></span></p>
<p><span style="font-family: courier new">&#160;&#160;&#160;&#160; outbound ah sas:      <br /></span></p>
<p><span style="font-family: courier new">&#160;&#160;&#160;&#160; outbound pcp sas:      <br /></span></p>
<p><script type="text/javascript"><!--
google_ad_client = "pub-6551570212921028";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_ad_channel = "";
google_ui_features = "rc:6";
//-->
</script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
<div id="spreadx">&nbsp;<a href="http://digg.com/submit?phase=2&url=http://www.cleverworkarounds.com/2007/10/08/an-annotated-ipsec-example/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/digg.gif" alt="Digg" border="0" /></a>&nbsp;&nbsp;<a href="http://www.facebook.com/share.php?u=http://www.cleverworkarounds.com/2007/10/08/an-annotated-ipsec-example/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/facebook.gif" alt="Facebook" border="0" /></a>&nbsp;&nbsp;<a href="http://www.stumbleupon.com/submit?url=http://www.cleverworkarounds.com/2007/10/08/an-annotated-ipsec-example/&title=An+annotated+IPSEC+example" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/stumble.gif" alt="StumbleUpon" border="0" /></a>&nbsp;&nbsp;<a href="http://technorati.com/faves?add=http://www.cleverworkarounds.com/2007/10/08/an-annotated-ipsec-example/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/technorati.gif" alt="Technorati" border="0" /></a>&nbsp;&nbsp;<a href="http://del.icio.us/post?url=http://www.cleverworkarounds.com/2007/10/08/an-annotated-ipsec-example/&title=An+annotated+IPSEC+example" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/delicious.gif" alt="Deli.cio.us" border="0" /></a>&nbsp;&nbsp;<a href="http://slashdot.org/submit.pl?url=http://www.cleverworkarounds.com/2007/10/08/an-annotated-ipsec-example/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/slashdot.gif" alt="Slashdot" border="0" /></a>&nbsp;&nbsp;<a href="http://www.twitter.com/home?status=http://www.cleverworkarounds.com/2007/10/08/an-annotated-ipsec-example/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/twitter.gif" alt="Twitter" border="0" /></a>&nbsp;&nbsp;<a href="http://www.sphinn.com/submit.php?url=http://www.cleverworkarounds.com/2007/10/08/an-annotated-ipsec-example/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/sphinn.gif" alt="Sphinn" border="0" /></a>&nbsp;&nbsp;<a href="http://www.mixx.com/submit?page_url=http://www.cleverworkarounds.com/2007/10/08/an-annotated-ipsec-example/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/mixx.gif" alt="Mixx" border="0" /></a>&nbsp;&nbsp;<a href="http://www.google.com/bookmarks/mark?op=edit&bkmk=http://www.cleverworkarounds.com/2007/10/08/an-annotated-ipsec-example/&title=An+annotated+IPSEC+example" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/google.gif" alt="Google" border="0" /></a>&nbsp;&nbsp;<a href="http://www.dzone.com/links/add.html?url=http://www.cleverworkarounds.com/2007/10/08/an-annotated-ipsec-example/&title=An+annotated+IPSEC+example" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/dzone.gif" alt="DZone" border="0" /></a>&nbsp;</div><p class="tags">No Tags</p>]]></content:encoded>
			<wfw:commentRss>http://www.cleverworkarounds.com/2007/10/08/an-annotated-ipsec-example/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

