<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.technet.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">Port 53</title><subtitle type="html">Shyam Seshadri's blog on Windows DNS and more...</subtitle><id>http://blogs.technet.com/sseshad/atom.xml</id><link rel="alternate" type="text/html" href="http://blogs.technet.com/sseshad/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.technet.com/sseshad/atom.xml" /><generator uri="http://communityserver.org" version="2.1.61025.2">Community Server</generator><updated>2008-10-21T20:12:00Z</updated><entry><title>DNSSEC deployment guide (Beta) for Windows Server 2008 R2</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/sseshad/archive/2009/02/13/dnssec-deployment-guide-beta-for-windows-server-2008-r2.aspx" /><id>http://blogs.technet.com/sseshad/archive/2009/02/13/dnssec-deployment-guide-beta-for-windows-server-2008-r2.aspx</id><published>2009-02-14T02:07:00Z</published><updated>2009-02-14T02:07:00Z</updated><content type="html">&lt;P&gt;Check out the Windows Server 2008 R2 DNSSEC Deployment Guide here:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=7a005a14-f740-4689-8c43-9952b5c3d36f&amp;amp;DisplayLang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyID=7a005a14-f740-4689-8c43-9952b5c3d36f&amp;amp;DisplayLang=en&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Please note that this is a Beta guide.&amp;nbsp; Your feedback is most welcome!&lt;/P&gt;
&lt;P&gt;DNSSEC also features in the "What's New in DNS in Windows 2008 R2 page": &lt;A href="http://technet.microsoft.com/en-us/library/dd378952.aspx"&gt;http://technet.microsoft.com/en-us/library/dd378952.aspx&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3202047" width="1" height="1"&gt;</content><author><name>sseshad</name><uri>http://blogs.technet.com/members/sseshad.aspx</uri></author><category term="DNSSEC Windows 7" scheme="http://blogs.technet.com/sseshad/archive/tags/DNSSEC+Windows+7/default.aspx" /></entry><entry><title>Secondary DNS zones on Windows 2008 RTM</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/sseshad/archive/2009/02/13/secondary-dns-zones-on-windows-2008-rtm.aspx" /><id>http://blogs.technet.com/sseshad/archive/2009/02/13/secondary-dns-zones-on-windows-2008-rtm.aspx</id><published>2009-02-13T20:18:00Z</published><updated>2009-02-13T20:18:00Z</updated><content type="html">&lt;P&gt;Folks, there's an important issue that I'd like to draw your attention to.&amp;nbsp; This has to do with Windows 2008 RTM DNS server.&amp;nbsp; Here's a quick blurb on what the issue is:&lt;/P&gt;
&lt;P&gt;If you're hosting a secondary DNS server with hevay traffic, what you may see is that all the records in the secondary DNS server get deleted.&amp;nbsp; This is because of a bug, which causes the secondary server to treat the zone as "expired".&amp;nbsp; The fix is available, and we want to make sure that you're aware of it and know how to fix it.&lt;/P&gt;
&lt;P&gt;The directory services team has written a much more extensive blog post about this in their blog&amp;nbsp;&lt;A href="http://blogs.technet.com/askds/"&gt;http://blogs.technet.com/askds/&lt;/A&gt;.&amp;nbsp; Check out Craig Landis' blog post here:&amp;nbsp; &lt;A href="http://blogs.technet.com/askds/archive/2009/02/12/headache-prevention-install-hotfix-953317-to-prevent-dns-records-from-disappearing.aspx"&gt;http://blogs.technet.com/askds/archive/2009/02/12/headache-prevention-install-hotfix-953317-to-prevent-dns-records-from-disappearing.aspx&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;KB 953317 (&lt;A href="http://support.microsoft.com/kb/953317"&gt;http://support.microsoft.com/kb/953317&lt;/A&gt;) has the link to the hotfix that will fix this issue.&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3201912" width="1" height="1"&gt;</content><author><name>sseshad</name><uri>http://blogs.technet.com/members/sseshad.aspx</uri></author><category term="Windows 2008" scheme="http://blogs.technet.com/sseshad/archive/tags/Windows+2008/default.aspx" /></entry><entry><title>Windows DNS and the Kaminsky bug</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/sseshad/archive/2008/12/03/windows-dns-and-the-kaminsky-bug.aspx" /><id>http://blogs.technet.com/sseshad/archive/2008/12/03/windows-dns-and-the-kaminsky-bug.aspx</id><published>2008-12-04T00:59:00Z</published><updated>2008-12-04T00:59:00Z</updated><content type="html">&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Yeah…it’s about time we talk about this, isn’t it?&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;As part of mitigating the threat posed by the Kaminsky vulnerability, which Dan explains in detail in a &lt;/FONT&gt;&lt;A href="http://www.doxpara.com/?p=1185" mce_href="http://www.doxpara.com/?p=1185"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;blog&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt; post he published a while ago, Microsoft released patches to the Windows DNS servers that included a feature called “socket pool”.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;This was released as &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/technet/security/Bulletin/MS08-037.mspx" mce_href="http://www.microsoft.com/technet/security/Bulletin/MS08-037.mspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;Microsoft Security Bulletin MS 08-037&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt;.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;In Windows 7, there is another additional feature that adds another layer of security called “cache locking”.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;I’ll talk a bit about both these features now.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;The &lt;B style="mso-bidi-font-weight: normal"&gt;Socket Pool &lt;/B&gt;is the way Windows DNS achieves source port randomization.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Instead of using a predicable source port when issuing queries, the DNS server will now randomly pick a source port from a pool of sockets that it opens when the service starts.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Depending on the OS version, the socket pool is opened either in the 49k to 64k range or the 10k to 49k range.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;An attacker will have to guess this source port in addition to the random transaction ID to be able to successfully execute the cache poisoning attack.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;The size of the socket pool is stored in the registry under HKLM\SYSTEM\CurrentControlSet\Services\DNS\Parameters\SocketPoolSize.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;If you open regedit and don’t see this key present, then that means that the DNS server is using a default of 2,500 ports. The registry key only gets created when you attempt to modify this value.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;When the DNS service starts up, it reads the value of the socket pool size from this registry location.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;It then calls the TCP/IP stack and begins to open up these sockets.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Once they’re all open, the DNS server randomly picks a socket for each query it sends. &lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;By default, the socket pool size is 2,500.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Note that this means 2,500 ports for IPv4 and 2,500 ports for IPv6.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The max value for the socket pool is 10,000.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;How do you control the value of this setting?&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.75in; mso-add-space: auto; mso-list: l0 level1 lfo1" class=MsoListParagraphCxSpFirst&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;Ø&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;SPAN style="FONT-FAMILY: 'Lucida Console'"&gt;Dnscmd /Info /SocketPoolSize&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; will tell you the current size of the socket pool&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.75in; mso-add-space: auto; mso-list: l0 level1 lfo1" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;Ø&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;SPAN style="FONT-FAMILY: 'Lucida Console'"&gt;Dnscmd /Config /SocketPoolSize &amp;lt;val&amp;gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; sets the socket pool size to #val&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 10pt 0.75in; mso-add-space: auto; mso-list: l0 level1 lfo1" class=MsoListParagraphCxSpLast&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;Ø&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Once you reset the size, you must restart the DNS service.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Use &lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: 'Lucida Console'"&gt;net stop dns&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; to stop the service, and &lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: 'Lucida Console'"&gt;net start dns&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; to restart the service.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Once the service has restarted, the new socket pool will come into effect.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Now some customers experienced loss of Internet connectivity after installing this patch on computers that had certain versions of ZoneAlarm installed.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;ZoneAlarm released a &lt;/FONT&gt;&lt;A href="http://download.zonealarm.com/bin/free/pressReleases/2008/LossOfInternetAccessIssue.html" mce_href="http://download.zonealarm.com/bin/free/pressReleases/2008/LossOfInternetAccessIssue.html"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;bulletin&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt; to address this issue.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Last week NetworkWorld.com published an article that said that &lt;/FONT&gt;&lt;A href="http://www.networkworld.com/news/2008/111008-dns-server-kaminsky.html" mce_href="http://www.networkworld.com/news/2008/111008-dns-server-kaminsky.html"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;one in four DNS servers are still vulnerable to Kaminsky flaw&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt;.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;If you’re running Windows DNS and haven’t patched yet, do so!&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Do it now.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Remember, this mainly affects recursive DNS servers, so if you have no recursive DNS servers, you can panic less.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;In Windows Server 2008 R2 DNS server, we’ve made an additional tweak to the socket pool.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The patch released only allows you to turn on/off the socket pool and specify a socket pool size.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;However in R2, you can now specify an exclusion list – i.e. a list of ports/port ranges that the DNS server &lt;I style="mso-bidi-font-style: normal"&gt;should not &lt;/I&gt;bind to.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Therefore, if you have another application on your DNS server that you know binds to a specific port in the 49k – 65k range, then you can add that port to the exclusion list.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;DNS server will not bind to that port (or ports) and leave them free for the other application to use.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;To set up this exclusion list (available only on Windows Server 2008 R2), use:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 10pt 0.5in; mso-list: l1 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;Ø&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;SPAN style="FONT-FAMILY: 'Lucida Console'"&gt;Dnscmd /Config /SocketPoolPortExclusionList&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Now Windows Server 2008 R2 DNS server (aka Windows 7 server) contains an additional layer of security with a feature called &lt;B style="mso-bidi-font-weight: normal"&gt;cache locking&lt;/B&gt;.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Understanding TTLs is key to understanding this feature. &lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Each DNS resource record comes with a Time-To-Live (TTL) value.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;This tells another caching server/resolver how long to keep the record in the cache before deleting it.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Accordingly, until the TTL expires, the server will retain the record in the cache.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;However there is nothing preventing the server from &lt;I style="mso-bidi-font-style: normal"&gt;overwriting &lt;/I&gt;the entry in the cache before the TTL expires if it receives updated information about that name.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;One of the most dangerous aspects of the Kaminsky attack is that it allows an attacker to overwrite a pre-existing cached delegation. A reasonably valid assumption is that for any domain that is worth attacking, all DNS servers that are serving a typical set of clients will have a valid cached delegation in memory in the steady state. As soon as the valid cached delegation expires, another client is likely to fairly quickly submit a query for a name in the zone, causing the delegation to be re-cached.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Cache locking is measured as a % value.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;For example, if the cache locking value is set to 50%, then the DNS server will not overwrite a cached entry for 50% of its TTL.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;So, if the DNS server has a cached entry for &lt;/FONT&gt;&lt;A href="http://www.contoso.com/" mce_href="http://www.contoso.com/"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;www.contoso.com&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt; with a TTL of 60 minutes, for the first 30 minutes after creating the cache entry, the DNS server will not overwrite the entry even if it receives different data about &lt;/FONT&gt;&lt;A href="http://www.contoso.com/" mce_href="http://www.contoso.com/"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;www.contoso.com&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt;.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;How does this protect against the Kaminsky vulnerability?&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Think about what the attacker is doing – he is running the race over and over again, by querying for 1.contoso.com, 2.contoso.com, 3.contoso.com and bombarding a reply that essentially says “Don’t know where n.contoso.com is, but ask &lt;/FONT&gt;&lt;A href="http://www.contoso.com/" mce_href="http://www.contoso.com/"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;www.contoso.com&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt;, who by the way is at &amp;lt;attacker’s IP&amp;gt;.”&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;And, to successfully complete the attack, he’s counting on the fact that if/when he does win the race, &lt;I style="mso-bidi-font-style: normal"&gt;his&lt;/I&gt; IP address gets cached against &lt;/FONT&gt;&lt;A href="http://www.contoso.com/" mce_href="http://www.contoso.com/"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;www.contoso.com&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt;, overwriting what already may be there.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;By default, the cache locking percent value is 100.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;This means that cached entries will not be overwritten for the &lt;I style="mso-bidi-font-style: normal"&gt;entire&lt;/I&gt; duration of the TTL.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;The value is stored in this registry location: HKLM\SYSTEM\CurrentControlSet\Services\DNS\Parameters\CacheLockingPercent.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;As with the socket pool, if you look at the registry and &lt;I style="mso-bidi-font-style: normal"&gt;don’t &lt;/I&gt;see this registry key, then the DNS server will assume a default of 100.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The registry key only gets created when you attempt to modify the value.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Here’s the magic that makes it work (available only on Windows Server 2008 R2):&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.75in; mso-add-space: auto; mso-list: l0 level1 lfo1" class=MsoListParagraphCxSpFirst&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;Ø&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;SPAN style="FONT-FAMILY: 'Lucida Console'"&gt;Dnscmd /Info /CacheLockingPercent&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; will tell you what the current value of the cache locking percent is.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.75in; mso-add-space: auto; mso-list: l0 level1 lfo1" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;Ø&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;SPAN style="FONT-FAMILY: 'Lucida Console'"&gt;Dnscmd /Config /CacheLockingPercent &amp;lt;val&amp;gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; will set the cache locking percentage to #val.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 10pt 0.75in; mso-add-space: auto; mso-list: l0 level1 lfo1" class=MsoListParagraphCxSpLast&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;Ø&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Once you reset the size, you must restart the DNS service.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Use &lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: 'Lucida Console'"&gt;net stop dns&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; to stop the service, and &lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: 'Lucida Console'"&gt;net start dns&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; to restart the service.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Once the service has restarted, the new socket pool will come into effect.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3163564" width="1" height="1"&gt;</content><author><name>sseshad</name><uri>http://blogs.technet.com/members/sseshad.aspx</uri></author><category term="Kaminsky bug" scheme="http://blogs.technet.com/sseshad/archive/tags/Kaminsky+bug/default.aspx" /></entry><entry><title>DNSSEC on Windows 7 DNS client</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/sseshad/archive/2008/11/11/dnssec-on-windows-7-dns-client.aspx" /><id>http://blogs.technet.com/sseshad/archive/2008/11/11/dnssec-on-windows-7-dns-client.aspx</id><published>2008-11-11T19:48:00Z</published><updated>2008-11-11T19:48:00Z</updated><content type="html">&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Wow, the response to Windows 7 so far has been fantastic!&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;PDC and WinHEC are over, the world has had a chance to finally get a preview of what we’ve been working on for over a year, and it is immensely satisfying to see such positive feedback.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Now let’s start talking about the different pieces of DNSSEC in Windows 7.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Let’s begin with the DNS client since I think it would be easier to digest to start off with. &lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;So in my last blog post, I used a rather gory term to describe the DNS client in Windows 7.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;I said it is a “non-validating security-aware stub-resolver”. It may sound scary, but if you look at it carefully, it is rather self-explanatory.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Still, let me help you understand this a bit better. &lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;In a nutshell, what this means is that the DNS client will not perform DNSSEC validation on its own.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The client relies on its configured DNS server to perform validation on its behalf.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;One positive side-effect of this is that Trust Anchors do not need to be configured on the clients, thus saving a big chunk of the deployment burden.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;It is however &lt;B style="mso-bidi-font-weight: normal"&gt;security-aware&lt;/B&gt;, so it will expect the configured DNS server to indicate results of the validation when returning the response.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;This is done so by setting the “AD” bit in the response.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;If the DNS server failed to validate successfully (indicated by the AD bit not being set in the response), the DNS client will fail the query.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;The security-aware behavior of the client is not a binary on/off.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;It is a policy based mechanism whereby the “Name Resolution Policy Table” will tell the client on which domains it is to expect DNSSEC.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Only for those domains will the DNS client set the DO bit in the query and expect the AD bit in the response.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The Name Resolution Policy Table (or NRPT for short) is a table of settings and configuration which defines the DNS client’s behavior when sending out queries and tells it what to do when receiving responses.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The NRPT contains settings that pertain to DNSSEC as well as another new Windows 7 technology known as Direct Access.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;I won’t go into Direct Access here though.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Let’s look at an example of the NRPT.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Below are a couple of rules in the table.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Note that I have simplified the table contents a little for illustration purposes.&lt;/FONT&gt;&lt;/P&gt;
&lt;TABLE style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-COLLAPSE: collapse; BORDER-TOP: medium none; BORDER-RIGHT: medium none; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt" class=MsoTableGrid border=1 cellSpacing=0 cellPadding=0 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes"&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 90.9pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-alt: solid black .5pt; mso-border-themecolor: text1" vAlign=top width=121&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Namespace&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 148.5pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1" vAlign=top width=198&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;DNSSEC validation&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 119.7pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1" vAlign=top width=160&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Last hop – IPsec&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 119.7pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1" vAlign=top width=160&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;IPsec encryption level&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 1"&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 90.9pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1" vAlign=top width=121&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;*.example.com&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 148.5pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=198&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Set DO bit; Expect server to validate &lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 119.7pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=160&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Secure last hop with IPsec&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 119.7pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=160&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;High encryption&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 2; mso-yfti-lastrow: yes"&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 90.9pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1" vAlign=top width=121&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;*.foo.example.com&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 148.5pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=198&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Don’t set DO bit; don’t expect server to validate&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 119.7pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=160&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Don’t secure last hop with IPsec&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 119.7pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=160&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;n/a&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;So, rule 1 (*.example.com) applies to the example.com domain and all its subdomains.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;If an application passes in a query such as &lt;/FONT&gt;&lt;A href="http://www.example.com/"&gt;&lt;FONT size=3 face=Calibri&gt;www.example.com&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt; to the DNS client, that query will match this rule in the NRPT.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The rule then says that the DNS client must set the DO bit when issuing the query and check for the AD bit in the response.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The rule also says it must use IPsec when issuing this query to the DNS server.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;And that’s exactly what the DNS client will do in this case.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Rule 2 is what we’d call an “exception”.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;If you look at the namespaces for rule 1 and rule 2, foo.example.com is a subdomain of example.com, hence the rule for example.com would apply to queries for foo.example.com as well.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;However, because a &lt;I style="mso-bidi-font-style: normal"&gt;more specific&lt;/I&gt; rule is present in the table, any query under *.foo.example.com will match rule 2 and not rule 1.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Rule 2 says no DNSSEC, hence the DNS client won’t set the DO bit, won’t look for the AD bit in the response and won’t use IPsec either. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;(Note that the above is what you’d do when you have a signed-to-unsigned delegation).&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;And there you have it…that in a nutshell is the DNS client’s behavior with respect to IPsec.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3151106" width="1" height="1"&gt;</content><author><name>sseshad</name><uri>http://blogs.technet.com/members/sseshad.aspx</uri></author><category term="DNSSEC Windows 7" scheme="http://blogs.technet.com/sseshad/archive/tags/DNSSEC+Windows+7/default.aspx" /></entry><entry><title>Cairo!</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/sseshad/archive/2008/11/11/cairo.aspx" /><id>http://blogs.technet.com/sseshad/archive/2008/11/11/cairo.aspx</id><published>2008-11-11T19:33:00Z</published><updated>2008-11-11T19:33:00Z</updated><content type="html">&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;A week went by very quickly!&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Cairo was fabulous.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;I certainly want to go back to the city at some point of time.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;To be honest, I didn’t quite know what to expect going in.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Of course, I had seen pictures of Cairo the city and even some YouTube videos, but that can only tell you so much.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;I tried to draw an image of Cairo in my head, and that turned out to be more difficult than I imagined.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Still, I left New York with a hybrid image of what I thought Cairo would be like.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;What surprised me the most was that when I actually got there was that it wasn’t at all like how I had imagined.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Several thoughts crossed my mind in the week before I left and even on the 12 hour flight from JFK to Cairo.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;It’s Cairo, Egypt.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Egypt!&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Pyramids, Pharaohs, mummies, mystical pagan worshippers… But wait.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Egypt is also in Africa!&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;And you know what that means – Elephants, safari, forests.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;No, actually, Egypt is very much covered by the Sahara desert.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Ah, the desert – sand everywhere (including inside my shoes), scorching heat and camels!&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The Nile…river, water, oasis?&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;And then I spoke to my father who reassured me that Egypt is more an extension of the Middle East and would resemble Dubai or Doha more than it would any African city.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;So I added skyscrapers, the Cornish and men in white robes to the melting pot in my head as well.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;By the time I landed in Cairo, I was expecting a city full of elephants and camels side by side, with the sun beating down while Brendon Frasier guarded the three great Pyramids of Giza, while I roamed the city in a fancy Mitsubishi SUV on American-style disciplined roads lined with palm and date trees.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;When I finally got to Cairo, I took a taxi and left the airport complex.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;I was just about absorbing all the Arabic and the statue of Ramses when it hit me – wait a second…did I somehow end up in India?&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Now having spent almost a week there, in my opinion the best way to describe Cairo would be to take any large Indian city including the traffic indiscipline, the honking, the crowds and the pedestrians and merge it with Arabic signboards, some sand on the side of the streets and a lot of sunshine.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;That, my friends, is Cairo.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Cairo, where the amount you pay to a taxi driver depends on…what he feels like.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Cairo, where telling someone that you’re an Indian immediately draws a smile on their face and prompts a reference to Amitabh Bachchan.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Cairo, where people &lt;I style="mso-bidi-font-style: normal"&gt;seriously&lt;/I&gt; speak Arabic at a breakneck pace.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Cairo, where there are absolutely no traffic lights or roundabouts (seriously, I saw &lt;I style="mso-bidi-font-style: normal"&gt;one &lt;/I&gt;traffic light in Nasr City near Anwar Sadat’s memorial, and that too was blinking orange). &lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Fantastic.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3151100" width="1" height="1"&gt;</content><author><name>sseshad</name><uri>http://blogs.technet.com/members/sseshad.aspx</uri></author></entry><entry><title>Windows DNSSEC at the ICANN meeting in Cairo</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/sseshad/archive/2008/11/03/windows-dnssec-at-the-icann-meeting-in-cairo.aspx" /><id>http://blogs.technet.com/sseshad/archive/2008/11/03/windows-dnssec-at-the-icann-meeting-in-cairo.aspx</id><published>2008-11-04T00:26:00Z</published><updated>2008-11-04T00:26:00Z</updated><content type="html">&lt;P&gt;The 33rd ICANN meeting is underway in Cairo, Egypt. On Wednesday, Nov 5th, I will be talking about Windows DNSSEC at the DNSSEC workshop. Check out the agenda for the session here: &lt;A href="http://cai.icann.org/en/node/1649"&gt;http://cai.icann.org/en/node/1649&lt;/A&gt;.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3146717" width="1" height="1"&gt;</content><author><name>sseshad</name><uri>http://blogs.technet.com/members/sseshad.aspx</uri></author><category term="DNSSEC" scheme="http://blogs.technet.com/sseshad/archive/tags/DNSSEC/default.aspx" /></entry><entry><title>DNSSEC features in one of the 10 best features in Windows 7 for IT Pros</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/sseshad/archive/2008/10/30/dnssec-features-in-one-of-the-10-best-features-in-windows-7-for-it-pros.aspx" /><id>http://blogs.technet.com/sseshad/archive/2008/10/30/dnssec-features-in-one-of-the-10-best-features-in-windows-7-for-it-pros.aspx</id><published>2008-10-30T22:42:00Z</published><updated>2008-10-30T22:42:00Z</updated><content type="html">&lt;P&gt;Check out Jonathan Hassell's article on computerworld.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.computerworld.com/action/article.do?command=printArticleBasic&amp;amp;taxonomyName=NOSes+and+Server+Software&amp;amp;articleId=9118322&amp;amp;taxonomyId=156" mce_href="http://www.computerworld.com/action/article.do?command=printArticleBasic&amp;amp;taxonomyName=NOSes+and+Server+Software&amp;amp;articleId=9118322&amp;amp;taxonomyId=156"&gt;http://www.computerworld.com/action/article.do?command=printArticleBasic&amp;amp;taxonomyName=NOSes+and+Server+Software&amp;amp;articleId=9118322&amp;amp;taxonomyId=156&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3144867" width="1" height="1"&gt;</content><author><name>sseshad</name><uri>http://blogs.technet.com/members/sseshad.aspx</uri></author><category term="DNSSEC" scheme="http://blogs.technet.com/sseshad/archive/tags/DNSSEC/default.aspx" /></entry><entry><title>DNSSEC in Windows 7</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/sseshad/archive/2008/10/30/dnssec-in-windows-7.aspx" /><id>http://blogs.technet.com/sseshad/archive/2008/10/30/dnssec-in-windows-7.aspx</id><published>2008-10-30T22:25:00Z</published><updated>2008-10-30T22:25:00Z</updated><content type="html">&lt;P&gt;I'm excited that I finally get to talk about what the DNS team has been working on for over a year.&amp;nbsp; That's right - DNSSEC.&amp;nbsp; It's in Windows, and it's on its way. &lt;/P&gt;
&lt;P&gt;DNSSEC is a suite of security extensions to the DNS which provide origin authority, data intergity and authenticated denial of existance. Putting that in plain English, DNSSEC allows for a DNS zone to be cryptographically&amp;nbsp;signed (which produces digital signatures), and provides a mechanism for validating the authenticity of the data received using these digital signatures.&amp;nbsp; Validating resolvers and servers must be pre-configured with a Trust Anchor, using which a "chain of trust" will be established to the signed zone. Data from this signed zone can then be validated.&lt;/P&gt;
&lt;P&gt;The new and improved DNSSEC RFCs were published in 2005, and since then DNSSEC has seen a steady growth in attention.&amp;nbsp; However this year, things took a much more dramatic turn mainly because of the vulnerabilities that were revealed at BlackHat by researcher Dan Kaminsky.&amp;nbsp; More and more people are showing interest in DNSSEC as a good solution to lock down their DNS infrastructures.&lt;/P&gt;
&lt;P&gt;Well, the timing is just perfect.&amp;nbsp; Windows Server 2008 R2 DNS server will offer support for DNSSEC as per these new RFCs.&amp;nbsp; The DNS server is now capable of generating keys and signing DNS zones using a sign-tool that we are providing with the product.&amp;nbsp; The server will also be able to host these signed zones either as a primary or secondary zone, or as an Active Directory-integrated zone.&amp;nbsp; Once configured with a Trust Anchor, the server will be able to perform full validation of data obtained from other signed zones.&lt;/P&gt;
&lt;P&gt;On the DNS client, we have implemented a non-validating security-aware stub resolver.&amp;nbsp; Doesn't roll off the tongue very easily, does it [:)]?&amp;nbsp; Breaking it down, all this means is that the DNS client relies on its local DNS server to perform DNSSEC validation and will check to make sure that the server has indeed done so.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Pre-Beta builds of Windows are already available to those who attened the Professional Developers's Conference in LA that ended today.&amp;nbsp; I would strongly encourage those of you who do have Windows 7 to test out DNSSEC and tell us what you think about it. &lt;/P&gt;
&lt;P&gt;Over the next few days, I will blog more about what is and isn't in the product, so stay tuned!&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3144861" width="1" height="1"&gt;</content><author><name>sseshad</name><uri>http://blogs.technet.com/members/sseshad.aspx</uri></author><category term="DNSSEC Windows 7" scheme="http://blogs.technet.com/sseshad/archive/tags/DNSSEC+Windows+7/default.aspx" /></entry><entry><title>Let's get you started on DNS...</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/sseshad/archive/2008/10/22/let-s-get-you-started-on-dns.aspx" /><id>http://blogs.technet.com/sseshad/archive/2008/10/22/let-s-get-you-started-on-dns.aspx</id><published>2008-10-23T06:20:00Z</published><updated>2008-10-23T06:20:00Z</updated><content type="html">&lt;P&gt;TechNet has a plethora of information on Windows DNS and Active Directory.&amp;nbsp; Check out &lt;A href="http://www.microsoft.com/dns"&gt;http://www.microsoft.com/dns&lt;/A&gt;.&amp;nbsp; This is your first stop to anything-Windows DNS.&amp;nbsp; You'll find great links to content on DNS for Windows 2000, Windows 2003 and Windows 2008.&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3140586" width="1" height="1"&gt;</content><author><name>sseshad</name><uri>http://blogs.technet.com/members/sseshad.aspx</uri></author></entry><entry><title>Hello hello!</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/sseshad/archive/2008/10/21/hello-hello.aspx" /><id>http://blogs.technet.com/sseshad/archive/2008/10/21/hello-hello.aspx</id><published>2008-10-22T06:12:00Z</published><updated>2008-10-22T06:12:00Z</updated><content type="html">&lt;P&gt;Hello folks!&amp;nbsp; I'm Shyam Seshadri,&amp;nbsp;the Program Manager for the Windows Domain Name System (DNS) server and client.&amp;nbsp; DNS is the Internet's phonebook, which is responsible for converting a human readable name such as &lt;A href="http://www.microsoft.com/" mce_href="http://www.microsoft.com/"&gt;www.microsoft.com&lt;/A&gt; into a computer readable IP address.&amp;nbsp; Computers use IP addresses to connect to other computers, but DNS allows you to access resources over the Internet or over a private network without having to remember these IP addresses and use names that are easy to remember.&lt;/P&gt;
&lt;P&gt;Windows DNS server is one of the most commonly deployed Windows Server roles and is an integral part of an Active Directory deployment.&amp;nbsp; Every computer is a DNS client that allows applications such as web browsers to convert names to IP addresses.&amp;nbsp; In my role at Microsoft, I am responsible for both the DNS server that ships with the Windows Server operating systems as well as the DNS Client which ships with all Windows operating systems (server and client).&amp;nbsp; &lt;/P&gt;
&lt;P&gt;I plan on blogging about best practices around DNS deployment, new features in DNS in upcoming releases of Windows as well as a little bit about the DNS team here at Microsoft.&amp;nbsp; But more importantly, I want to use this blog as a forum to reach out to the users and administrators of DNS and to hear your thoughts and comments on Windows DNS.&lt;/P&gt;
&lt;P&gt;All postings on this weblog are provided "AS IS" with no warranties, and confer no rights. &lt;BR&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3140165" width="1" height="1"&gt;</content><author><name>sseshad</name><uri>http://blogs.technet.com/members/sseshad.aspx</uri></author></entry></feed>