<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Mike Poulson's Thoughts on lots of stuff : IPv6</title><link>http://blogs.msdn.com/mpoulson/archive/tags/IPv6/default.aspx</link><description>Tags: IPv6</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>IPv6 6over4 tunnels with Windows and Cisco</title><link>http://blogs.msdn.com/mpoulson/archive/2005/01/18/355305.aspx</link><pubDate>Tue, 18 Jan 2005 18:27:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:355305</guid><dc:creator>mpoulson</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/mpoulson/comments/355305.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mpoulson/commentrss.aspx?PostID=355305</wfw:commentRss><description>&lt;p&gt;A few years ago I began working with Art Shelest here at Microsoft to get Native IPv6 running in my lab.&amp;nbsp; After a few weeks we had it up and running.&amp;nbsp; &lt;/p&gt; &lt;p&gt;We had to work with MSIT (was known as ITG at the time) to get a 6over4 tunnel setup so that we could connect to the 6bone even though my upstream routers did not support IPv6 (still don't at this time).&amp;nbsp; Once the tunnel was setup on the&amp;nbsp;ITG Router we ran a command on my Windows IPv6 Router in my lab and it was up and running.&amp;nbsp; &lt;/p&gt; &lt;p&gt;We run our entire lab IPv6 network on Windows Routers.&amp;nbsp; We use Windows Server 2003 but you could use Windows XP Pro if you wanted.&amp;nbsp; Unlike RRAS the IPv6 routing stack is included in Windows XP.&amp;nbsp; And after Windows XP SP1 this stack was fully supported by Microsoft support.&amp;nbsp; So if you follow the steps at &lt;a href="http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/sag_ip_v6_imp_lab_node.mspx"&gt;http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/sag_ip_v6_imp_lab_node.mspx&lt;/a&gt;&amp;nbsp;you can get your internal test network setup.&lt;/p&gt; &lt;p&gt;Now to create a 6over4 tunnel to another router you simply run the below commands from a cmd prompt on your main IPv6&amp;nbsp; router&lt;/p&gt; &lt;ol&gt; &lt;li&gt;netsh&lt;/li&gt; &lt;li&gt;int ipv6&lt;/li&gt; &lt;li&gt;add v6v4tunnel interface="V6v4 Tunnel" localaddress=&amp;lt;local ipv4 address&amp;gt; remoteaddress=&amp;lt;remote ipv4 address&amp;gt;&lt;/li&gt; &lt;li&gt;set interface "v6v4 Tunnel for=en&lt;/li&gt; &lt;li&gt;add address int="v6v4 tunnel" address=&amp;lt;IPv6 address from provider&amp;gt;&lt;/li&gt; &lt;li&gt;add route ::/0 "v6v4 tunnel" &amp;lt;remote IPv6 address&amp;gt; publish=yes&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;Key things to note with the above&lt;/p&gt; &lt;ul&gt; &lt;li&gt;The Local IPv4 address is the IP address that the tunnel is going to use to talk to the Upstream V6 Router (With my example below it would be 1.1.1.1).&amp;nbsp; &lt;/li&gt; &lt;li&gt;The Remote IPv4 Address is the IP address of the upstream V6 router (with my example below it would be 2.2.2.1).&lt;/li&gt; &lt;li&gt;The IPv6 address from provider would be a IPv6 address that you get from your v6 provider (with my example below it would be 3ffe:ffee:100:2::2)&lt;/li&gt; &lt;li&gt;The Remote IPv6 address is the IPv6 address of the upstream IPv6 router (with my example below it would be &lt;font face="Arial" size="2"&gt;3FFE:FFEE:100:2::1)&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;The Cisco side of the config looks like this&lt;/p&gt; &lt;p&gt;&lt;span class="883125323"&gt;&lt;font color="#000000" size="2"&gt;interface Tunnel1&lt;br /&gt;&amp;nbsp;description v6in4 tunnel to&amp;nbsp; lab 1.1.1.1/3FFE:FFEE:100:2::2&lt;br /&gt;&amp;nbsp;no ip address&lt;br /&gt;&amp;nbsp;ipv6 address 3FFE:FFEE:100:2::1/64&lt;br /&gt;&amp;nbsp;tunnel source&amp;nbsp;2.2.2.1&lt;br /&gt;&amp;nbsp;tunnel destination&amp;nbsp;1.1.1.1&lt;br /&gt;&amp;nbsp;tunnel mode ipv6ip&lt;br /&gt;&lt;/font&gt;&lt;/span&gt;&lt;span class="883125323"&gt;&lt;font color="#000000" size="2"&gt;&lt;font size="3"&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span class="883125323"&gt;&lt;font color="#000000" size="2"&gt;&lt;font size="3"&gt;Once the machines are all setup important things to know are "how do you back up your ipv6 configuration?" Well with netsh it could not be easier.&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span class="883125323"&gt;&lt;font color="#000000" size="2"&gt;&lt;font size="3"&gt;Simply run 'netsh int ipv6 dump &amp;gt; c:\ipv6backup.txt'&amp;nbsp; this will dump all the ipv6 config out to the txt file.&amp;nbsp; Now if the router was to ever go down you can run the command&amp;nbsp; 'netsh exec c:\ipv6backup.txt'.&amp;nbsp;&amp;nbsp; With these 2 commands it will backup and restore your ipv6 configuration..&amp;nbsp; You can also modify the backup command to be 'netsh dump &amp;gt; c:\netshbackup.txt' and it will back up 99% of all the settings for your network configuration.&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span class="883125323"&gt;&lt;font color="#000000" size="2"&gt;&lt;font size="3"&gt;If you would like to know more about how I have my IPv6 network setup please let me know.&amp;nbsp; Also&amp;nbsp;I recommend the Microsoft Press Book Understanding IPv6&amp;nbsp;(&lt;/font&gt;&lt;a href="http://www.microsoft.com/MSPress/books/4883.asp"&gt;&lt;font size="3"&gt;http://www.microsoft.com/MSPress/books/4883.asp&lt;/font&gt;&lt;/a&gt;&lt;font size="3"&gt;) ISBN: 0-7356-1245-5&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span class="883125323"&gt;&lt;font face="Arial" color="#000000" size="2"&gt;&lt;/p&gt;&lt;/font&gt;&lt;/span&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=355305" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mpoulson/archive/tags/IPv6/default.aspx">IPv6</category><category domain="http://blogs.msdn.com/mpoulson/archive/tags/ISP/default.aspx">ISP</category></item><item><title>Regular Expressions and IP addresses (ipv4 and IPv6)</title><link>http://blogs.msdn.com/mpoulson/archive/2005/01/10/350037.aspx</link><pubDate>Mon, 10 Jan 2005 17:37:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:350037</guid><dc:creator>mpoulson</dc:creator><slash:comments>5</slash:comments><comments>http://blogs.msdn.com/mpoulson/comments/350037.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mpoulson/commentrss.aspx?PostID=350037</wfw:commentRss><description>&lt;p&gt;Over the last year or so I have been writing automation that uses IPv4 and IPv6 addresses.&amp;nbsp; In the beginning I had to dig up and make some regular expressions for verifying that a given value was a valid IPv4 or IPv6 address.&amp;nbsp; &lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p&gt;The ones I came up with are (in VB.net)&lt;/p&gt; &lt;p&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue"&gt;Const&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt"&gt; strIPv4Pattern &lt;span style="COLOR: blue"&gt;as&lt;/span&gt; &lt;span style="COLOR: blue"&gt;string&lt;/span&gt; = "\A(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}\z" &lt;span style="COLOR: green"&gt;'IPv4 Address Regex pattern (x.x.x.x)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue"&gt;Const&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt"&gt; strIPv6Pattern &lt;span style="COLOR: blue"&gt;as&lt;/span&gt; &lt;span style="COLOR: blue"&gt;string&lt;/span&gt; = "\A(?:[0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}\z"&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue"&gt;Const&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt"&gt; strIPv6Pattern_HEXCompressed &lt;span style="COLOR: blue"&gt;as&lt;/span&gt; &lt;span style="COLOR: blue"&gt;string&lt;/span&gt; = "\A((?:[0-9A-Fa-f]{1,4}(?::[0-9A-Fa-f]{1,4})*)?)::((?:[0-9A-Fa-f]{1,4}(?::[0-9A-Fa-f]{1,4})*)?)\z"&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue"&gt;Const&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt"&gt; StrIPv6Pattern_6Hex4Dec &lt;span style="COLOR: blue"&gt;as&lt;/span&gt; &lt;span style="COLOR: blue"&gt;string&lt;/span&gt; = "\A((?:[0-9A-Fa-f]{1,4}:){6,6})(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}\z"&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue"&gt;Const&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt"&gt; StrIPv6Pattern_Hex4DecCompressed &lt;span style="COLOR: blue"&gt;as&lt;/span&gt; &lt;span style="COLOR: blue"&gt;string&lt;/span&gt; = "\A((?:[0-9A-Fa-f]{1,4}(?::[0-9A-Fa-f]{1,4})*)?) ::((?:[0-9A-Fa-f]{1,4}:)*)(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}\z"&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;Now because an IPv6 address can take a few forms we have 4 different expressions for IPv6.&amp;nbsp; If someone finds a bug in one of these please let me know.&amp;nbsp; Because RegExp is something that I am not good at.&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;Hope these will help some one.&lt;/span&gt;&lt;font size="2"&gt;&lt;/p&gt;&lt;/font&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=350037" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mpoulson/archive/tags/IPv6/default.aspx">IPv6</category><category domain="http://blogs.msdn.com/mpoulson/archive/tags/Networking/default.aspx">Networking</category><category domain="http://blogs.msdn.com/mpoulson/archive/tags/Security/default.aspx">Security</category></item></channel></rss>