<?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>Mindeasy</title>
	<atom:link href="http://www.mindeasy.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.mindeasy.com</link>
	<description></description>
	<lastBuildDate>Fri, 10 Jul 2009 23:00:18 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Configuring Mail Relay Settings in Imail V11</title>
		<link>http://www.mindeasy.com/configuring-mail-relay-settings-in-imail-v11#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed</link>
		<comments>http://www.mindeasy.com/configuring-mail-relay-settings-in-imail-v11#comments</comments>
		<pubDate>Fri, 10 Jul 2009 23:00:18 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Imail]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[email server]]></category>
		<category><![CDATA[ipswitch]]></category>
		<category><![CDATA[open relay]]></category>
		<category><![CDATA[relay]]></category>
		<category><![CDATA[relay restrictions]]></category>

		<guid isPermaLink="false">http://www.mindeasy.com/?p=106</guid>
		<description><![CDATA[When building an email server we must always make sure we are not OPEN RELAYS.  If you build a server that is an open relay you will soon discover that users not of you own are using your server to send an army of spam.  You will also learn that your server is [...]]]></description>
			<content:encoded><![CDATA[<p>When building an email server we must always make sure we are not OPEN RELAYS.  If you build a server that is an open relay you will soon discover that users not of you own are using your server to send an army of spam.  You will also learn that your server is blacklisted, and depending on the damage and how long it has been compromised may need a new IP and Hostname, due to the original being on so many blacklists its not worth trying to get off all of them.  </p>
<p><script type="text/javascript"><!--
google_ad_client = "pub-0943284585205000";
/* 250x250, created 5/19/09 */
google_ad_slot = "1306177675";
google_ad_width = 250;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
<p>IPSWITCH has made an alternative to Microsoft popular Exchange server called Imail.  The current version of Imail is version 11.</p>
<p>To secure the IMAIL server you must first get into the SMTP server settings.<br />
1. From the Imail console Click Services &#8211;> Select Imail SMTP Server &#8211;> Configure Services<br />
<div id="attachment_107" class="wp-caption alignnone" style="width: 764px"><img src="http://www.mindeasy.com/wp-content/uploads/2009/07/Imail1.JPG" alt="Configuring Relay settings in Imail server" title="Configuring Relay settings in Imail server" width="754" height="470" class="size-full wp-image-107" /><p class="wp-caption-text">Configuring Relay settings in Imail server</p></div></p>
<p>2. Once you are in the Configuration options You will see Relay for.  This is where you set the Relay type.</p>
<div id="attachment_108" class="wp-caption alignnone" style="width: 463px"><img src="http://www.mindeasy.com/wp-content/uploads/2009/07/imail2.JPG" alt="configuring Imail relay settings" title="configuring Imail relay settings" width="453" height="131" class="size-full wp-image-108" /><p class="wp-caption-text">configuring Imail relay settings</p></div>
<p>Imail has 5 relay types, No Relay, Address, Local users, Local hosts, Anyone.</p>
<p><strong>No Relay</strong> is what it says no relay, the server will not send mail for anyone.</p>
<p><strong>Addresses</strong> setting will allow certain IP or whole IP subnet to send email from the server.  E.g Your internal network is 192.168.2.0, then you could set addresses and set that IP range, this will allow Imail to relay for any one on the 192.168.2.0 network.</p>
<p><strong>Local Users</strong> &#8211; you can create local user accounts on the server but this is time consuming.</p>
<p><strong>Local hosts</strong> &#8211; which will allow local hosts.</p>
<p><strong>Anyone</strong> &#8211; this is a NONO this will allow anyone anywhere to relay mail from your server only use this for testing purposes.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindeasy.com/configuring-mail-relay-settings-in-imail-v11/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to move the Schema Master Role</title>
		<link>http://www.mindeasy.com/how-to-move-the-schema-master-role#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed</link>
		<comments>http://www.mindeasy.com/how-to-move-the-schema-master-role#comments</comments>
		<pubDate>Fri, 10 Jul 2009 18:14:18 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[Domain Controller]]></category>
		<category><![CDATA[FSMO]]></category>
		<category><![CDATA[Schema Master]]></category>

		<guid isPermaLink="false">http://www.mindeasy.com/?p=96</guid>
		<description><![CDATA[Moving the Schema Master roles does not happen often but there are times when we need to do it. The Windows 2000/2003 server with Schema Master role, manages all updates and additions to the schema and then replicates those changes to other Domain controllers. Only the server with the Schema Master role can actually write [...]]]></description>
			<content:encoded><![CDATA[<p>Moving the Schema Master roles does not happen often but there are times when we need to do it. The Windows 2000/2003 server with Schema Master role, manages all updates and additions to the schema and then replicates those changes to other Domain controllers. Only the server with the Schema Master role can actually write to the Schema. Think of the Schema as a big dictionary, it tells Active Directory what every object means and what it does.<br />
<script type="text/javascript"><!--
google_ad_client = "pub-0943284585205000";
/* 250x250, created 5/19/09 */
google_ad_slot = "1306177675";
google_ad_width = 250;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
<p>To move the Schema master follow the setups below.</p>
<p>Part 1. First you will need to register the Schmmgmt.dll<br />
a) Click <strong>Start</strong> and then go to <strong>RUN</strong><br />
b) Type <strong>regsvr32 schmmgmt.dll</strong> and click ok<br />
c) You should see a message that says</p>
<div id="attachment_98" class="wp-caption alignnone" style="width: 301px"><img class="size-full wp-image-98" title="Message after successful registration Schmmgmt.dll" src="http://www.mindeasy.com/wp-content/uploads/2009/07/reg.JPG" alt="Message after successful registration Schmmgmt.dll" width="291" height="118" /><p class="wp-caption-text">Message after successful registration Schmmgmt.dll</p></div>
<p>Part 2<br />
1.Click Start, click Run, type mmc in the Open box, and then click OK.<br />
2. On the File, menu click Add/Remove Snap-in.<br />
3. Click Add.</p>
<div id="attachment_99" class="wp-caption alignnone" style="width: 423px"><img class="size-full wp-image-99" title="Adding a MMC Snap-in" src="http://www.mindeasy.com/wp-content/uploads/2009/07/2.JPG" alt="Adding a MMC Snap-in" width="413" height="461" /><p class="wp-caption-text">Adding a MMC Snap-in</p></div>
<div id="attachment_100" class="wp-caption alignnone" style="width: 391px"><img class="size-full wp-image-100" title="Selecting the Active Directory Schema Snap-in" src="http://www.mindeasy.com/wp-content/uploads/2009/07/3.JPG" alt="Selecting the Active Directory Schema Snap-in" width="381" height="385" /><p class="wp-caption-text">Selecting the Active Directory Schema Snap-in</p></div>
<p>4. In the console tree, right-click Active Directory Schema, and then click Change Domain Controller.<br />
5. Click Specify Name, type the name of the domain controller that will be the new role holder, and then click OK.</p>
<div id="attachment_101" class="wp-caption alignnone" style="width: 482px"><img class="size-full wp-image-101" title="Changing Domain Servers" src="http://www.mindeasy.com/wp-content/uploads/2009/07/4.JPG" alt="Changing Domain Servers" width="472" height="404" /><p class="wp-caption-text">Changing Domain Servers</p></div>
<p>6. In the console tree, right-click Active Directory Schema, and then click Operations Master.<br />
7. Click Change.<br />
8. Click OK to confirm that you want to transfer the role, and then click Close.</p>
<p>This is how you change the Schema master Role to a new server.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindeasy.com/how-to-move-the-schema-master-role/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The importance of SPF records</title>
		<link>http://www.mindeasy.com/the-importance-of-spf-records#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed</link>
		<comments>http://www.mindeasy.com/the-importance-of-spf-records#comments</comments>
		<pubDate>Thu, 09 Jul 2009 06:24:17 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Windows DNS]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[domain spoofing]]></category>
		<category><![CDATA[email spoofing]]></category>
		<category><![CDATA[sender id framework]]></category>
		<category><![CDATA[spam]]></category>
		<category><![CDATA[spf]]></category>
		<category><![CDATA[spoofing]]></category>
		<category><![CDATA[txt record]]></category>

		<guid isPermaLink="false">http://www.mindeasy.com/?p=93</guid>
		<description><![CDATA[What is a SPF record?  Well it is a DNS entry that is used to help combat SPAM and email spoofing. It does this by adding information to DNS about which servers are allowed to send email for that Domain.



A SPF record is a custom record call txt in windows DNS.  There are [...]]]></description>
			<content:encoded><![CDATA[<p>What is a SPF record?  Well it is a DNS entry that is used to help combat SPAM and email spoofing. It does this by adding information to DNS about which servers are allowed to send email for that Domain.<br />
<script type="text/javascript"><!--
google_ad_client = "pub-0943284585205000";
/* 250x250, created 5/19/09 */
google_ad_slot = "1306177675";
google_ad_width = 250;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>A SPF record is a custom record call txt in windows DNS.  There are many tools that can help you automatically create a SPF record.  At the end of this article I will list a great one.  </p>
<p><div id="attachment_95" class="wp-caption alignleft" style="width: 250px"><img src="http://www.mindeasy.com/wp-content/uploads/2009/07/spf.jpg" alt="Configure SPF to combat SPAM" title="Sender Policy Framework" width="240" height="240" class="size-full wp-image-95" /><p class="wp-caption-text">Configure SPF to combat SPAM</p></div>The way SPF combats SPAM and domain Spoofing is when an email is sent from XYZ domain the receiving server or mail gateway (if configured to do SPF checking) does a SPF check.  Once it gets the SPF details it gets the information on which IP or servers may send mail for XYZ Domain.  Now if the email was spoofed it would show a different IP or server name then what the SPF records state and the receiving mail gateway or mail server will drop the email. </p>
<p>The link below goes to a SPF creation wizard created by Microsoft.  </p>
<p>http://www.microsoft.com/mscorp/safety/content/technologies/senderid/wizard/</p>
<p>The link below goes to a SPF validation tool</p>
<p>http://www.kitterman.com/spf/validate.html</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindeasy.com/the-importance-of-spf-records/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Belkin Wireless G router</title>
		<link>http://www.mindeasy.com/belkin-wireless-g-router#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed</link>
		<comments>http://www.mindeasy.com/belkin-wireless-g-router#comments</comments>
		<pubDate>Thu, 09 Jul 2009 04:40:31 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[belkin]]></category>
		<category><![CDATA[home router]]></category>
		<category><![CDATA[router]]></category>
		<category><![CDATA[wireless]]></category>

		<guid isPermaLink="false">http://www.mindeasy.com/?p=88</guid>
		<description><![CDATA[When looking for a home router, keeping it easy is key.  Like so many home based routers if you plug it in it will automatically work.
But for some people who want to log into the router and change some setting such as setting up security on wireless or forwarding a port the management interface [...]]]></description>
			<content:encoded><![CDATA[<p>When looking for a home router, keeping it easy is key.  Like so many home based routers if you plug it in it will automatically work.<br />
But for some people who want to log into the router and change some setting such as setting up security on wireless or forwarding a port the management interface on the router is key. <script type="text/javascript"><!--
google_ad_client = "pub-0943284585205000";
/* 250x250, created 5/19/09 */
google_ad_slot = "1306177675";
google_ad_width = 250;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script> The Belkin <div id="attachment_91" class="wp-caption alignleft" style="width: 310px"><img src="http://www.mindeasy.com/wp-content/uploads/2009/07/BelkinBig-300x300.jpg" alt="Belkin Wireless G Router" title="Belkin Wireless G Router" width="300" height="300" class="size-medium wp-image-91" /><p class="wp-caption-text">Belkin Wireless G Router</p></div> G router&#8217;s Interface is, lets say very ugly.  Yes all the buttons are there, but unlike some other home routers the help and explanation of what a setting does is not very prominent or clear. <div id="attachment_89" class="wp-caption alignleft" style="width: 1034px"><img src="http://www.mindeasy.com/wp-content/uploads/2009/07/belkin-1024x668.GIF" alt="Belkin Interface" title="Belkin Interface" width="1024" height="668" class="size-large wp-image-89" /><p class="wp-caption-text">Belkin Interface</p></div><br />
As pictured above the interface is pretty much nothing great, but the most importnat part that is really missing is the help next to each section.  Now there is a help button but it lists everything so you need to read through it to find what you need.</p>
<p>All in all if you want a OK router that just works, then this is fine, but there are others made by D-link, and Linksys that are in the same price point and are much better.  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindeasy.com/belkin-wireless-g-router/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Spector 360</title>
		<link>http://www.mindeasy.com/spector-360#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed</link>
		<comments>http://www.mindeasy.com/spector-360#comments</comments>
		<pubDate>Thu, 09 Jul 2009 00:26:47 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Misc]]></category>
		<category><![CDATA[employee monitoring]]></category>
		<category><![CDATA[monitor]]></category>
		<category><![CDATA[spector]]></category>
		<category><![CDATA[spector 360]]></category>
		<category><![CDATA[spector soft]]></category>
		<category><![CDATA[spector360]]></category>
		<category><![CDATA[spy]]></category>

		<guid isPermaLink="false">http://www.mindeasy.com/?p=83</guid>
		<description><![CDATA[Employee monitoring has been around for a long time, from video surveillance, to check in/out systems.  With the digital era, these methods only go so far.  Files can be stolen, people may be wasting time surfing the net or looking at inappropriate sites.  


A level of monitoring on a employee is needed. [...]]]></description>
			<content:encoded><![CDATA[<p>Employee monitoring has been around for a long time, from video surveillance, to check in/out systems.  With the digital era, these methods only go so far.  Files can be stolen, people may be wasting time surfing the net or looking at inappropriate sites.  <script type="text/javascript"><!--
google_ad_client = "pub-0943284585205000";
/* 250x250, created 5/19/09 */
google_ad_slot = "1306177675";
google_ad_width = 250;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>A level of monitoring on a employee is needed.  Where I work now, we deployed a program call Spector 360 by Spectorsoft.  The need arose as we suspected certain employees of stealing company assets such as confidential files etc.  Of course we had no real proof, thus needed a solution to covertly collect data on the employee so we had proof and thus take legal action.  I installed a demo of Spector 360 and was amazed at how much data it collected.  It collected what sites where visited for how long, what people were searching online, all email activity, application usage, file transfer information, chat logs, keystrokes, even desktop snap shots each second, etc.  I could even setup keyword alerts. <div id="attachment_87" class="wp-caption alignleft" style="width: 510px"><img src="http://www.mindeasy.com/wp-content/uploads/2009/07/RecordDiagram.gif" alt="Everything Spector records" title="Everything Spector records" width="500" height="406" class="size-full wp-image-87" /><p class="wp-caption-text">Everything Spector records</p></div> </p>
<p>Spector 360 installs an agent on the remote machine.  The agent is not found in program files and the actual process is named something completely different thus not to tip off the employee being monitored.  The agent reports back to the Spector 360 server.  From the Dashboard on the server you you can view and monitor every aspect of your employees actions on company machines.<div id="attachment_85" class="wp-caption alignleft" style="width: 430px"><img src="http://www.mindeasy.com/wp-content/uploads/2009/07/DashBoard-large.JPG" alt="Spector 360 Dashboard" title="Spector 360 Dashboard" width="420" height="289" class="size-full wp-image-85" /><p class="wp-caption-text">Spector 360 Dashboard</p></div></p>
<p>From within the dash board you can hammer down on an individual employee, and see all actions of that employee, or find out information such as most visited site and by whom, employee you sent most emails, etc<div id="attachment_86" class="wp-caption alignleft" style="width: 430px"><img src="http://www.mindeasy.com/wp-content/uploads/2009/07/QuickView-large.JPG" alt="Spector 360 quick view" title="Spector 360 quick view" width="420" height="331" class="size-full wp-image-86" /><p class="wp-caption-text">Spector 360 quick view</p></div></p>
<p>I have looked at a few different monitoring systems but non of them have come close to giving me so much flexibility and ease then Spector 360, I definitely recommend this if you are looking for an employee monitoring suite.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindeasy.com/spector-360/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NetGear Ready NAS Review</title>
		<link>http://www.mindeasy.com/netgear-ready-nas-review#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed</link>
		<comments>http://www.mindeasy.com/netgear-ready-nas-review#comments</comments>
		<pubDate>Wed, 08 Jul 2009 19:50:31 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[nas]]></category>
		<category><![CDATA[Netgear]]></category>
		<category><![CDATA[network attached storage]]></category>
		<category><![CDATA[raid 5]]></category>
		<category><![CDATA[ready nas]]></category>
		<category><![CDATA[ready nas 1100]]></category>

		<guid isPermaLink="false">http://mindeasy.com/?p=59</guid>
		<description><![CDATA[Well Last year I was looking for a Nas appliance to store backups on, and I found the Netgear Ready Nas 1100.  I have been using this appliance for about 1 year and I can say it is great.




The ready Nas comes in either bare bones where you add the drives or it comes [...]]]></description>
			<content:encoded><![CDATA[<p>Well Last year I was looking for a Nas appliance to store backups on, and I found the Netgear Ready Nas 1100.  I have been using this appliance for about 1 year and I can say it is great.<br />
<script type="text/javascript"><!--
google_ad_client = "pub-0943284585205000";
/* 250x250, created 5/19/09 */
google_ad_slot = "1306177675";
google_ad_width = 250;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
The ready Nas comes in either bare bones where you add the drives or it comes in 1, 2, 3 , 4 Tera bye configurations.  The drives that come with the Ready Nas are Segate.  The Ready Nas was evaluated on 4 principle areas, <strong>ease of management</strong>, <strong>performance/Reliability<strong> and <strong>feature set</strong>.</p>
<p>Ease of Management &#8211; The Nas is almost plug an play.  Simply connect it to your network and it will get a DHCP address and then use the RAIDar utility that ships with it to do the initial configuration.  Once that is complete you can fully manage the Ready Nas from the HTTPS GUI.  The GUI is easy to use, understand and has email alerting.  Creating shares and assigning them permissions is very easy especially if you have configured the AD integration.  Over all this appliance is very user friendly and time saving. <img src="http://mindeasy.com/wp-content/uploads/2009/07/Interface.GIF" alt="Netgear ready nas 1100 Gui Interface" title="Netgear ready nas 1100 Gui Interface" width="580" height="387" class="alignleft size-full wp-image-75" />  </p>
<p>Feature Set &#8211; The Ready Nas  has Active Directory integration.  This made my situation very easy since I do have over 250 users on my network.  The Read Nas simply connected to active directory and pulled the user accounts over along with all security group, It extended my active Directory structure and made my life easy.<img src="http://www.mindeasy.com/wp-content/uploads/2009/07/ad1.jpg" alt="Netgear Ready nas Active Directory Integration" title="Netgear Ready Nas Active Directory Integration" class="alignnone size-full wp-image-82" /><br />
The Ready Nas 1100 also has a built in print server, retrospect backup installed and integrated, Streaming services, and ftp.  I don&#8217;t really use any of the extra features other then FTP Since I strictly use this appliance as a backup location.<img src="http://mindeasy.com/wp-content/uploads/2009/07/streaming.GIF" alt="Ready Nas 1100 Streaming options" title="Ready Nas 1100 Streaming options" width="512" height="421" class="alignleft size-full wp-image-76" /></p>
<p>Performance and Reliability &#8211; I have noticed that the Ready Nas is sluggish in its web GUI, It is not overly bad just more of an annoyance.  The Ready Nas comes with 4 SATA Segate drives (7200 rpm).  The drives are meant for capacity not speed.  It you are using it as a backup or file server it will be fine.  The drives are automatically put in a raid 5 when all the drive bays are full.  A really nice thing about the Nas is if you have 4 &#8211; 750 gig drives and you upgrade one to 1 Tera byte, the Nas automatically adjusts the free space to give more and maintains its raid 5 array.  This process though is a bit slow when it is initializing the drive it can take up to 5 hours depending on how much data you have.  The Nas also comes with redundant Network cards, and has 3 built in fans.  Once email alerting is configured the Nas will email any failures or abnormalities it detects.  Another way to monitor health is to log on to the GUI and click Status -> Health.  It will give a breakdown of all the components. <img src="http://mindeasy.com/wp-content/uploads/2009/07/health.GIF" alt="Health tab on the Netgear ready nas 1100" title="Health tab on the Netgear ready nas 1100" width="606" height="450" class="alignleft size-full wp-image-77" /></p>
<p>All in All this is a solid appliance that has being working for me without any issues for a year.  It fulfills all my backup needs and has AD integration.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindeasy.com/netgear-ready-nas-review/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Changing Terminal Services Listening Port</title>
		<link>http://www.mindeasy.com/changing-terminal-services-listening-port#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed</link>
		<comments>http://www.mindeasy.com/changing-terminal-services-listening-port#comments</comments>
		<pubDate>Mon, 06 Jul 2009 19:43:38 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Server 2003]]></category>
		<category><![CDATA[Windows XP Professional]]></category>
		<category><![CDATA[port]]></category>
		<category><![CDATA[RDP]]></category>
		<category><![CDATA[Terminal Server]]></category>
		<category><![CDATA[Terminal services]]></category>

		<guid isPermaLink="false">http://mindeasy.com/?p=60</guid>
		<description><![CDATA[From time to time we all may want to change the default Terminal services listening port from 3389 to something else. This works for Windows XP and Server 2003. It is very easy to do just follow the below instructions.




1. Run Regedt32 and go to:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
2. Find the &#8220;PortNumber&#8221; subkey  (3389). Modify the port [...]]]></description>
			<content:encoded><![CDATA[<p>From time to time we all may want to change the default Terminal services listening port from 3389 to something else. This works for Windows XP and Server 2003. It is very easy to do just follow the below instructions.<br />
<script type="text/javascript"><!--
google_ad_client = "pub-0943284585205000";
/* 250x250, created 5/19/09 */
google_ad_slot = "1306177675";
google_ad_width = 250;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
1. Run Regedt32 and go to:<br />
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp</p>
<p>2. Find the &#8220;PortNumber&#8221; subkey  (3389). Modify the port number in Hex and save the new value.</p>
<p>After this is done To access this server from another machine using RDP make sure you type in the remote computers IP:portnumber E.G 192.168.1.23:50501</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindeasy.com/changing-terminal-services-listening-port/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows Network Load Balancing Servce (NLBS) Setup</title>
		<link>http://www.mindeasy.com/windows-network-load-balancing-servce-nlbs-setup#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed</link>
		<comments>http://www.mindeasy.com/windows-network-load-balancing-servce-nlbs-setup#comments</comments>
		<pubDate>Tue, 19 May 2009 23:51:59 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Server 2003]]></category>
		<category><![CDATA[cluster]]></category>
		<category><![CDATA[clustering]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[network load balancing]]></category>
		<category><![CDATA[nlb]]></category>
		<category><![CDATA[server 2003]]></category>
		<category><![CDATA[service]]></category>

		<guid isPermaLink="false">http://mindeasy.com/?p=25</guid>
		<description><![CDATA[Like so many sys admins, there comes a time when your one little web server no longer cuts the mustard. The server is continuously being hammered by requests and it just can&#8217;t keep up. Sure you can scale up and get a bigger beefier machine, but even it will one day fail from the load. [...]]]></description>
			<content:encoded><![CDATA[<p>Like so many sys admins, there comes a time when your one little web server no longer cuts the mustard. The server is continuously being hammered by requests and it just can&#8217;t keep up. Sure you can scale up and get a bigger beefier machine, but even it will one day fail from the load. Why not spread the load out between multiple servers. This way you can have less costly servers servicing requests and it also relieves single point of failure. If one web server were to DIE, the others will soldier on.</p>
<p>So now that you got a brief lesson why how NLB Service can help you, here&#8217;s the best part, It&#8217;s FREE.  Microsoft has included this great clustering service for free, and it actually works.<br />
<script type="text/javascript"><!--
google_ad_client = "pub-0943284585205000";
/* 468x60, created 5/16/09 */
google_ad_slot = "9974952027";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
I currently run 14 servers using NLB; 32 is the limit for NLB so keep that in mind. It also can be managed centrally, so that is also great. Now with all the fluff out of the way lets get down to setting it up.  Read my article on why NLB Rocks its called NLB Rocks</p>
<p>Step 1.<br />
Go to the properties of the <strong>Network Adapter</strong> on the server and click <strong>Network Load Balancing</strong> and click OK.  If service is not in the list go to <strong>Install</strong> and select <strong>Network Load Balancing</strong>.</p>
<p><img class="alignnone size-full wp-image-29" title="nlb1" src="http://mindeasy.com/wp-content/uploads/2009/05/nlb1.gif" alt="nlb1 Windows Network Load Balancing Servce (NLBS) Setup" width="367" height="443" /></p>
<p>Step 2<br />
Go to Administrative Tools &#8211;&gt; Network Load Balancing Agent</p>
<p>Step 3<br />
Once in the manager click Cluster and select NEW</p>
<p>Step 4<br />
Here is where it will ask for the Cluster IP Information.  This is the Virtual IP that will be shared between servers.  I will enter some sample data to continue.  For the full Internet name you can leave this is as default or if you are only going to be serving one web domain off this cluster type in the name if you like, but this setting doesn&#8217;t affect NLB.  Keep Unicast enabled for simplification.  I don&#8217;t recommend the allow remote control for security reasons.  Click next to continue</p>
<p><img class="alignnone size-full wp-image-31" title="Network Load Balancing Service" src="http://mindeasy.com/wp-content/uploads/2009/05/nlb2.gif" alt="Network Load Balancing Service" width="473" height="442" /></p>
<p>Step 5<br />
Here you can specify more virtual IP&#8217;s that the servers in this cluster will load balance.  This is useful if you have multiple Web domains in IIS.  That way all the web domains are being load balanced.  I will not add any now, but we can always add them later.</p>
<p><img class="alignnone size-full wp-image-32" title="Network load balancing service" src="http://mindeasy.com/wp-content/uploads/2009/05/nlb3.gif" alt="Network load balancing service" width="478" height="442" /></p>
<p>Step 6<br />
The next part is port rules.  It is important to make sure you only add the ports you want, the default is everything.  These are the ports the NLB Service will respond too.</p>
<p><img class="alignnone size-full wp-image-35" title="Network Load balancing servoce" src="http://mindeasy.com/wp-content/uploads/2009/05/nlb4.gif" alt="Network Load balancing servoce" width="474" height="442" /></p>
<p>Step 7<br />
For web servers generally 80 and 443 are needed.  Specify the port range, and select the affinity.  Affinity is how the request gets handled.  If single affinity is selected that means when a person connects to you web server on a port lets say 80 to browse a page, the person will stay on that server.  The persons web  session connection will stay with that server only.  This is very important for SSL.  SSL needs to be single affinity or it will not work.  If no affinity is selected,  when a person browses a page on one server, and then searches for a product, a different server may respond to him.  Thus any server in the cluster will respond to the client.</p>
<p><img class="alignnone size-full wp-image-36" title="nlb5Network Load balancing serivce" src="http://mindeasy.com/wp-content/uploads/2009/05/nlb5.gif" alt="nlb5Network Load balancing serivce" width="364" height="451" /></p>
<p>Step 8<br />
Once you have added the ports the next screen will look like this.  Click next to continue</p>
<p><img class="alignnone size-full wp-image-40" title="Network Load Balancing Service" src="http://mindeasy.com/wp-content/uploads/2009/05/nlb61.gif" alt="Network Load Balancing Service" width="476" height="439" /></p>
<p>Step 9<br />
<script type="text/javascript"><!--
google_ad_client = "pub-0943284585205000";
/* 468x60, created 5/16/09 */
google_ad_slot = "9974952027";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
This step we need to add the server we are doing the work on as a member of the cluster.  Add the IP of the server in the host field.  If the server has multiple Network cards add the IP on the network adapter with NLB installed on it.</p>
<p><img class="alignnone size-full wp-image-38" title="Network Load Balancing Service" src="http://mindeasy.com/wp-content/uploads/2009/05/nlb7.gif" alt="Network Load Balancing Service" width="476" height="439" /></p>
<p>Step 10<br />
Accept the defaults and click finish</p>
<p><img class="alignnone size-full wp-image-42" title="Network Load balancing service" src="http://mindeasy.com/wp-content/uploads/2009/05/nlb8.gif" alt="Network Load balancing service" width="479" height="439" /></p>
<p>And we are done.  We have susscefully added one client to the Network load balancing service, but one client is useless we need at least two for this to work. To add a client we simply go back to the manager and connect to the cluster.  Once connected to the cluster go to cluster and add host.</p>
<p>I hope this helped you setup you NLB cluster.  Please leave feed back.<script type="text/javascript"><!--
google_ad_client = "pub-0943284585205000";
/* 468x60, created 5/16/09 */
google_ad_slot = "9974952027";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindeasy.com/windows-network-load-balancing-servce-nlbs-setup/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>How to Backup Windows DNS</title>
		<link>http://www.mindeasy.com/how-to-backup-windows-dns#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed</link>
		<comments>http://www.mindeasy.com/how-to-backup-windows-dns#comments</comments>
		<pubDate>Mon, 18 May 2009 17:17:01 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Windows DNS]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[restore]]></category>
		<category><![CDATA[server 2003]]></category>
		<category><![CDATA[Standalone]]></category>
		<category><![CDATA[travel]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[windows server]]></category>

		<guid isPermaLink="false">http://mindeasy.com/?p=16</guid>
		<description><![CDATA[Well I currently run two standalone Windows server 2003 DNS servers.  I needed a way to backup and restore all the settings if one off my DNS servers failed.  The servers are not Active Directory Integrated.  I found a script by Dean Wells.  It works wonderfully.
The Script will be at the end of the post.




To backup [...]]]></description>
			<content:encoded><![CDATA[<p>Well I currently run two standalone Windows server 2003 DNS servers.  I needed a way to backup and restore all the settings if one off my DNS servers failed.  The servers are not Active Directory Integrated.  I found a script by Dean Wells.  It works wonderfully.</p>
<p>The Script will be at the end of the post.<br />
<script type="text/javascript"><!--
google_ad_client = "pub-0943284585205000";
/* 468x60, created 5/16/09 */
google_ad_slot = "9974952027";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
To backup use the EXPORT command.  See image below off the command.</p>
<p><img class="alignnone size-full wp-image-17" title="Backup windows server 2003 dns" src="http://mindeasy.com/wp-content/uploads/2009/05/dns-export.gif" alt="Backup windows server 2003 dns" width="669" height="329" /></p>
<p>Now you are done, Keep the folder you exported all your DNS settings safe. To import jsut do the reverse, and use the command IMPORT and the folder your created.</p>
<p>Here is the script you need.  Call it dnsdump.bat</p>
<p> </p>
<p>:: DNSdump Version 2.0 &#8211; Dean Wells, MSEtechnology &#8211; July 2003</p>
<p>:: PURPOSE &#8211; Dumps local server&#8217;s DNS service configuration and zone content. Once dumped, the content<br />
::           can be imported on any other Windows 2000/2003 based DNS server [includes cross OS dumps]</p>
<p>:: DNSdump V2.0 is INCOMPATIBLE with the current public release</p>
<p>:: Supports Windows 2000/2003 members or DCs including Active Directory integrated zones. Application<br />
:: partitions are supported</p>
<p>:: Requires Administrative credentials on local machine. If the DNS server is also a Domain Controller,<br />
:: Domain Administrative credemtials are required in order to export or import Active Directory integrated<br />
:: DNS zones</p>
<p>:: Active Directory integrated zones exported from the domain NC will be translated to the local domain<br />
:: NC in the event of a cross domain export/import. Further behavioral details documented in syntax help</p>
<p>@echo off<br />
setlocal ENABLEDELAYEDEXPANSION</p>
<p>:: Prepare the display<br />
echo.</p>
<p>:: Define environment<br />
set TOOLNAME=DNSdump<br />
set KNOWNPATH=25,53,79,73,74,65,6d,52,6f,6f,74,25,5c,53,79,73,74,65,6d,33,\<br />
set INSTALLROOT=%SystemRoot%\System32\DNS<br />
set DUMP=%~f2<br />
set STDOUT=nul<br />
set STDERR=nul<br />
set WORKING=0<br />
set ERROR=<br />
set domainDN=<br />
set domainDNS=<br />
set SUPPORTEDBUILDS=2195 3790</p>
<p>:: Check local server meets necessary requirements for successful operation</p>
<p>:: Derive operating system version and validate support<br />
for /f &#8220;tokens=3 delims=.]&#8221; %%v in (&#8217;ver&#8217;) do set BUILD=%%v<br />
for %%s in (%SUPPORTEDBUILDS%) do (<br />
 if not &#8220;%%s&#8221;==&#8221;%BUILD%&#8221; (<br />
  if &#8220;!ERROR!&#8221;==&#8221;" set ERROR=1<br />
 ) else (<br />
  set ERROR=0<br />
 )<br />
)<br />
if not &#8220;%ERROR%&#8221;==&#8221;0&#8243; (<br />
 call :ERROR unsupported operating system version, build &#8220;%BUILD%&#8221;<br />
 goto :END<br />
)</p>
<p>:: Check for sufficient arguments<br />
if &#8220;%2&#8243;==&#8221;" (<br />
 call :ERROR insufficient arguments<br />
 call :SYNTAX<br />
 goto :END<br />
)</p>
<p>:: Correct and/or report any errors in the dump directory argument<br />
set DUMP=%DUMP:&#8221;=%<br />
set TDUMP=%DUMP: =%<br />
if not &#8220;%TDUMP%&#8221;==&#8221;%DUMP%&#8221; (<br />
 call :ERROR dump path CANNOT contain spaces, &#8220;%DUMP%&#8221;<br />
 goto :END<br />
)</p>
<p>:: Locate critical executables, error and terminate if not found<br />
for %%e in (net.exe findstr.exe ldifde.exe regedit.exe) do (<br />
 set where=&#8221;%%~$PATH:e&#8221;<br />
 if &#8220;!where!&#8221;==&#8221;"&#8221;" (<br />
  call :ERROR critical executable, &#8220;%%e&#8221;, could not be located <br />
  goto :END<br />
 )<br />
)<br />
 <br />
:: Determine if DNS service is installed on local machine<br />
regedit /E:A &#8220;%TEMP%\DNS-Service.TMP&#8221; HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\DNS<br />
if not exist &#8220;%TEMP%\DNS-Service.TMP&#8221; (<br />
 call :ERROR DNS service does not appear to be installed on &#8220;%COMPUTERNAME%&#8221;<br />
 goto :END<br />
)</p>
<p>:: Check local credentials<br />
net user &#8220;%username%&#8221; | findstr /i &#8220;Administrators&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
if errorlevel 1 (<br />
 net user &#8220;%username%&#8221; | findstr /i /c:&#8221;Domain Admins&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
 if errorlevel 1 (<br />
  call :ERROR security context is insufficient, administrative credentials required<br />
  goto :END<br />
 )<br />
)</p>
<p>:: Determine if local machine is member or Domain Controller<br />
regedit /E:A &#8220;%TEMP%\DCorMember.TMP&#8221; &#8220;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ProductOptions&#8221;<br />
if not exist &#8220;%TEMP%\DCorMember.TMP&#8221; (<br />
 call :ERROR unable to determine machine configuration [DC or member]<br />
 goto :END<br />
)<br />
for /f &#8220;tokens=2 delims==&#8221; %%t in (&#8217;type &#8220;%TEMP%\DCorMember.TMP&#8221; ^| findstr &#8220;ProductType&#8221;&#8216;) do (<br />
 if /i &#8220;%%t&#8221;==&#8221;"LanmanNT&#8221;" (set TYPE=DC) else (set TYPE=MEMBER)<br />
)</p>
<p>:: Get DNS domain name of local machine<br />
if &#8220;%TYPE%&#8221;==&#8221;DC&#8221; (<br />
 regedit /E:A &#8220;%TEMP%\NTDS-Service.TMP&#8221; HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Netlogon\Parameters<br />
 if not exist &#8220;%TEMP%\NTDS-Service.TMP&#8221; (<br />
  call :ERROR Directory Service configuration could not be determined<br />
  goto :END<br />
 )<br />
 for /f &#8220;tokens=1* delims==&#8221; %%s in (&#8217;type &#8220;%TEMP%\NTDS-Service.TMP&#8221; ^| findstr &#8220;sysvol&#8221;&#8216;) do (<br />
  set SYSVOL=%%t<br />
  set SYSVOL=!SYSVOL:\\=\!<br />
  for /f &#8220;tokens=2 delims=&gt;&#8221; %%d in (&#8217;dir !SYSVOL! /ad ^| findstr &#8220;JUNCTION&#8221;&#8216;) do (<br />
   set domainDNS=%%d<br />
   set domainDNS=!domainDNS: =!<br />
  )<br />
 )<br />
 if &#8220;!domainDNS!&#8221;==&#8221;" (<br />
  call :ERROR Directory Service configuration could not be determined<br />
  goto :END<br />
 )<br />
 call <img src='http://www.mindeasy.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' title="How to Backup Windows DNS" /> ERIVEDN &#8220;!domainDNS!&#8221;<br />
 set domainDN=!partDN!<br />
)</p>
<p>:: Begin script body</p>
<p>:: Determine mode of operation<br />
if /i &#8220;%1&#8243;==&#8221;IMPORT&#8221; (<br />
 set MODE=IMPORT<br />
)  else (<br />
 if /i &#8220;%1&#8243;==&#8221;EXPORT&#8221; (<br />
  set MODE=EXPORT<br />
 ) else (<br />
  call :ERROR invalid mode specified, &#8220;%1&#8243;<br />
  call :SYNTAX<br />
  goto :END<br />
 )<br />
)</p>
<p>:: React to derived mode and create/verify dump directory structure<br />
if &#8220;%MODE%&#8221;==&#8221;EXPORT&#8221; (<br />
 if exist &#8220;%DUMP%&#8221; (<br />
  call :ERROR dump directory already exists, &#8220;%DUMP%&#8221;<br />
  goto :END<br />
 ) else (<br />
  md &#8220;%DUMP%&#8221; 2&gt;%STDERR%<br />
  if errorlevel 1 (<br />
   call :ERROR unable to create dump directory, &#8220;%DUMP%&#8221;<br />
   goto :END<br />
  )<br />
  md &#8220;%DUMP%\InstallRoot&#8221; 2&gt;%STDERR%<br />
  if errorlevel 1 (<br />
   call :ERROR unable to create directory, &#8220;%DUMP%\InstallRoot&#8221;<br />
   goto :END<br />
  )<br />
  md &#8220;%DUMP%\Logs&#8221; 2&gt;%STDERR%<br />
  if errorlevel 1 (<br />
   call :ERROR unable to create log directory, &#8220;%DUMP%\Logs&#8221;<br />
   goto :END<br />
  )<br />
 )<br />
) else (<br />
 if not exist &#8220;%DUMP%&#8221; (<br />
  call :ERROR specified dump directory NOT found, &#8220;%DUMP%&#8221;<br />
  goto :END<br />
 )<br />
)</p>
<p>:: Define custom DNS service installation root if supplied<br />
if not &#8220;%3&#8243;==&#8221;" (<br />
 set INSTALLROOT=%~f3<br />
 if not exist &#8220;%INSTALLROOT%&#8221; (<br />
  call :ERROR DNS installation root, &#8220;%INSTALLROOT%&#8221;, is invalid<br />
  goto :END<br />
 )<br />
) else (</p>
<p>:: Query DNS service registry key for install root &#8230; if non-standard, error<br />
 for /f &#8220;delims=: tokens=2&#8243; %%i in (&#8217;type &#8220;%TEMP%\DNS-Service.TMP&#8221; ^| findstr /i &#8220;ImagePath&#8221;&#8216;) do set ACTUALPATH=%%i<br />
 if not &#8220;%KNOWNPATH%&#8221;==&#8221;!ACTUALPATH!&#8221; (<br />
  call :ERROR non-standard DNS installation root, specify zone file path<br />
  set ERROR=2<br />
  goto :END<br />
 )<br />
 if not exist %INSTALLROOT% (<br />
  md %INSTALLROOT%<br />
  if errorlevel 1 (<br />
   call :ERROR unable to create DNS installation root, &#8220;%INSTALLROOT%&#8221;<br />
   goto :END<br />
  )<br />
 )<br />
)</p>
<p>:: Export only the non locally critical DNS service registry keys to dump directory<br />
if &#8220;%MODE%&#8221;==&#8221;EXPORT&#8221; (<br />
 regedit /E:A &#8220;%DUMP%\DNS-Service-LegacyZones.REG&#8221; HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\DNS\Zones<br />
 regedit /E:A &#8220;%TEMP%\DNS-Service-Parameters.TMP&#8221; HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\DNS\Parameters<br />
 if not exist &#8220;%TEMP%\DNS-Service-Parameters.TMP&#8221; (<br />
  call :ERROR unable to retrieve DNS service configuration<br />
  set ERROR=2<br />
  goto :END<br />
 )<br />
 type &#8220;%TEMP%\DNS-Service-Parameters.TMP&#8221; | findstr /v /i &#8220;PreviousLocalHostname&#8221; &gt;&#8221;%DUMP%\DNS-Service-Parameters.REG&#8221;<br />
 if not exist &#8220;%DUMP%\DNS-Service-Parameters.REG&#8221; (<br />
  call :ERROR unable to retrieve DNS service configuration<br />
  set ERROR=2<br />
  goto :END<br />
 )<br />
)</p>
<p>:: Set working directory and indicate state<br />
pushd &#8220;%DUMP%&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
echo %TOOLNAME% &#8211; Ready to proceed, configuration as follows -<br />
echo.<br />
echo    * Security context is &#8220;%USERDOMAIN%\%USERNAME%&#8221;<br />
echo    * Mode of operation is &#8220;%MODE%&#8221;</p>
<p>if &#8220;%TYPE%&#8221;==&#8221;DC&#8221; (<br />
 echo    * Domain Controller detected<br />
 echo    * Active Directory domain name is &#8220;%domainDNS%&#8221;<br />
 set /p nul=   * Active Directory integrated zones WILL be %MODE%ED &lt;nul<br />
 if &#8220;%BUILD%&#8221; GTR &#8220;2195&#8243; (<br />
  echo &#8211; NDNC&#8217;s supported<br />
 ) else (<br />
  echo &#8211; NDNC&#8217;s NOT supported<br />
 ) <br />
) else (<br />
 echo    * Non Domain Controller detected<br />
 echo    * Active Directory integrated zones UNAVAILABLE<br />
)</p>
<p>echo    * DNS installation root is &#8220;%INSTALLROOT%&#8221;<br />
echo    * %TOOLNAME% directory is &#8220;%DUMP%&#8221;<br />
echo.<br />
echo STATUS &#8211; Task progress &#8230;<br />
echo.</p>
<p>:: Set WORKING to TRUE and jump to mode<br />
set WORKING=1<br />
goto :%MODE%</p>
<p>:: Should never get here &#8211; FATAL ERROR<br />
call :ERROR a fatal unknown error occurred<br />
set ERROR=2<br />
goto :END</p>
<p>:: Define procedures</p>
<p>:IMPORT</p>
<p>:: Check the import directory for valid dump configuration<br />
if not exist &#8220;%DUMP%\DNS-Service-Parameters.REG&#8221; (<br />
 call :ERROR unable to retrieve DNS service configuration<br />
 goto :END<br />
)<br />
if not exist &#8220;%DUMP%\DNS-Software.REG&#8221; (<br />
 echo    &#8211; legacy &#8220;Zones&#8221; configuration detected &#8230; LEGACY USED<br />
)</p>
<p>:: Stop the DNS service<br />
echo    &#8211; stopping DNS service<br />
net stop dns 2&gt;&amp;1 | findstr /i /c:&#8221;not exist&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
if not errorlevel 1 (<br />
 call :ERROR unable to stop DNS service<br />
)</p>
<p>:: Create .REG file to remove existing registry based DNS service configuration<br />
echo    &#8211; removing existing DNS service configuration<br />
echo REGEDIT4&gt;%TEMP%\KillKeys.REG<br />
echo.&gt;&gt;%TEMP%\KillKeys.REG<br />
echo [-HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters]&gt;&gt;%TEMP%\KillKeys.REG<br />
echo [-HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Zones]&gt;&gt;%TEMP%\KillKeys.REG</p>
<p>:: Execute the removal<br />
if exist %TEMP%\KillKeys.REG (<br />
 regedit /s %TEMP%\KillKeys.REG<br />
) else (<br />
 call :ERROR existing configuration could NOT be removed<br />
)</p>
<p>:: Delete the temporary registry file<br />
del %TEMP%\KillKeys.REG 1&gt;%STDOUT% 2&gt;%STDERR%</p>
<p>:: Import the registry data<br />
echo    &#8211; reconfiguring DNS service<br />
for %%r in (&#8221;%DUMP%\DNS-Service-Parameters.REG&#8221; &#8220;%DUMP%\DNS-Software.REG&#8221; &#8220;%DUMP%\DNS-Service-LegacyZones.REG&#8221;) do (<br />
 if exist %%r (<br />
  regedit /s %%r<br />
 ) else (<br />
  if not &#8220;%%r&#8221;==&#8221;"%DUMP%\DNS-Service-LegacyZones.REG&#8221;" (<br />
   call :ERROR unable to reconfigure DNS service registry settings<br />
  )<br />
 )<br />
)</p>
<p>:: Restore the DNS config./zone files<br />
echo    &#8211; restoring DNS service configuration files to &#8220;%INSTALLROOT%&#8221;<br />
xcopy &#8220;%DUMP%\InstallRoot\*.*&#8221; &#8220;%INSTALLROOT%&#8221; /h /y 1&gt;%STDOUT% 2&gt;%STDERR%<br />
if errorlevel 1 (<br />
 call :ERROR unable to export configuration files to &#8220;%INSTALLROOT%&#8221;<br />
 goto :END<br />
)</p>
<p>:: Restore the Active Directory integrated zones<br />
:: Check the type (DC or member), if member skip, if DC import all files with extension .ADzones<br />
if &#8220;%TYPE%&#8221;==&#8221;DC&#8221; if exist &#8220;%DUMP%\*.ADzones&#8221; (<br />
 echo    &#8211; importing Active Directory integrated DNS zones from;<br />
 echo.<br />
 for /f %%z in (&#8217;dir /b &#8220;%DUMP%\*.ADzones&#8221;&#8216;) do (<br />
  set tmpPART=%%~nz<br />
  if /i &#8220;!tmpPART:~0,9!&#8221;==&#8221;CN=System&#8221; (<br />
   call :NCIMPORT !tmpPART!<br />
  ) else (<br />
   if not &#8220;%BUILD%&#8221; GTR &#8220;2195&#8243; (<br />
    echo       * !tmpPART!<br />
    echo          &#8211; unsupported partition detected &#8230; IGNORED<br />
    set ERROR=1<br />
   ) else (<br />
    call :NCIMPORT !tmpPART!<br />
   )<br />
  )<br />
 echo.<br />
 )<br />
)</p>
<p>:: Start the DNS service<br />
echo    &#8211; restarting DNS service<br />
net start dns 2&gt;&amp;1 | findstr &#8220;invalid&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
if not errorlevel 1 (<br />
 call :ERROR unable to start DNS service<br />
)</p>
<p>:: Determine level of success<br />
echo.<br />
if &#8220;%ERROR%&#8221;==&#8221;1&#8243; (<br />
 echo STATUS &#8211; Import partially completed &#8230; ERRORS OCCURRED<br />
) else (<br />
 echo STATUS &#8211; DNS service configuration completed<br />
)</p>
<p>goto :END</p>
<p>:: Handles export of DNS configuration and zone content<br />
:EXPORT</p>
<p>echo    &#8211; exporting DNS service configuration</p>
<p>if not exist &#8220;%DUMP%\DNS-Service-Parameters.REG&#8221; (<br />
 call :ERROR unable to retrieve DNS service configuration<br />
 goto :END<br />
)</p>
<p>:: Construct partition information<br />
echo &#8220;%domainDNS%&#8221;&gt;&#8221;%DUMP%\PartitionFQDN.DAT&#8221;</p>
<p>regedit /E:A &#8220;%DUMP%\DNS-Software.REG&#8221; &#8220;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DNS Server&#8221;</p>
<p>:: Alert user to legacy storage of zone configuration<br />
:: Else clause derives partitions in which zones exist and assumes domain NC as potential candidate<br />
if not exist &#8220;%DUMP%\DNS-Software.REG&#8221; (<br />
 echo    &#8211; legacy &#8220;Zones&#8221; key located &#8230; LEGACY CONFIGURATION USED<br />
) else (<br />
 for /f &#8220;tokens=2 delims==&#8221; %%z in (&#8217;type &#8220;%DUMP%\DNS-Software.REG&#8221; ^| findstr &#8220;DirectoryPartition&#8221;&#8216;) do (<br />
  echo %%z&gt;&gt;&#8221;%DUMP%\PartitionFQDN.DAT&#8221;<br />
 )<br />
)</p>
<p>:: Copy existing DNS install root<br />
echo    &#8211; exporting DNS service file structure from &#8220;%INSTALLROOT%&#8221;<br />
copy &#8220;%INSTALLROOT%\*.*&#8221; &#8220;%DUMP%\InstallRoot&#8221; /y 1&gt;%STDOUT% 2&gt;%STDERR%<br />
if errorlevel 1 (<br />
 call :ERROR unable to backup DNS installation root, &#8220;%INSTALLROOT%&#8221;<br />
 set ERROR=2<br />
 goto :END<br />
)</p>
<p>:: Exports Active Directory integrated zones if running on a DC<br />
:: Removes objectGUID references in order to permit import<br />
if &#8220;%TYPE%&#8221;==&#8221;DC&#8221; (<br />
 echo    &#8211; exporting Active Directory integrated Zones from;<br />
 echo.<br />
 if not exist &#8220;%DUMP%\PartitionFQDN.DAT&#8221; (<br />
  call :ERROR unable to derive partitions containing DNS zones<br />
 )<br />
 for /f &#8220;tokens=*&#8221; %%d in (&#8217;type &#8220;%DUMP%\PartitionFQDN.DAT&#8221;&#8216;) do (<br />
  call <img src='http://www.mindeasy.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' title="How to Backup Windows DNS" /> ERIVEDN %%d<br />
  ldifde -s localhost -d &#8220;CN=MicrosoftDNS,!partDN!&#8221; -f &#8220;%DUMP%\!partDN!.ADtmpZones&#8221; -j &#8220;%DUMP%\Logs&#8221; | findstr /i /c:&#8221;No Entries found&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
  if not errorlevel 1 (<br />
   set ERROR=1<br />
   echo       * !partDN! &#8211; UNHANDLED ERRORS<br />
  ) else (<br />
   echo       * !partDN!<br />
  )<br />
  echo          &#8211; preparing zones for import<br />
  echo.<br />
  type &#8220;%DUMP%\!partDN!.ADtmpZones&#8221; | findstr /v &#8220;objectGUID&#8221; &gt;&#8221;%DUMP%\!partDN!.ADzones&#8221;<br />
  del &#8220;%DUMP%\!partDN!.ADtmpZones&#8221; 2&gt;%STDERR%<br />
  call :LOGS %!partDN!<br />
 )<br />
)</p>
<p>:: Determine level of success<br />
echo.<br />
if not &#8220;%ERROR%&#8221;==&#8221;0&#8243; (<br />
 echo STATUS &#8211; Export partially completed &#8230; ERRORS OCCURRED<br />
) else (<br />
 echo STATUS &#8211; Export completed successfully<br />
)<br />
goto :END</p>
<p>:: End script body</p>
<p>:: Define procedures and error/syntax routines</p>
<p>:: Receives a fully qualified domain name as argument 1 and converts it to a distinguished name<br />
 <img src='http://www.mindeasy.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' title="How to Backup Windows DNS" /> ERIVEDN<br />
set partDN=%*<br />
set partDN=%partDN:~1,-1%<br />
set partDN=.%partDN%<br />
set partDN=%partDN:.=,DC=%<br />
set partDN=%partDN:~1%<br />
if /i &#8220;%domainDN%&#8221;==&#8221;%partDN%&#8221; (<br />
 set partDN=CN=System,%partDN%<br />
)<br />
goto :EOF</p>
<p>:: Import supplied naming context and handle logged output<br />
:NCIMPORT</p>
<p>:: Translate DN references for domain NC integrated zones such that a zone exported from a DC in one domain<br />
:: can be imported into the domain NC of a DC in another<br />
if /i &#8220;%tmpPART:~0,9%&#8221;==&#8221;CN=System&#8221; (<br />
 if not &#8220;%tmpPART:~10%&#8221;==&#8221;%domainDN%&#8221; (<br />
  set APPEND=-c %tmpPART:~10% %domainDN%<br />
  set logDN=CN=System,%domainDN%<br />
 ) else (<br />
  set APPEND=<br />
  set logDN=%*<br />
 )<br />
) else (<br />
 set APPEND=<br />
 set logDN=%*<br />
)</p>
<p>ldifde -s localhost -i -k -f &#8220;%*.ADzones&#8221; -j &#8220;%DUMP%\Logs&#8221; %APPEND% | findstr /i &#8220;error&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
if not errorlevel 1 (<br />
 echo       * %* &#8230; UNHANDLED ERRORS<br />
 set ERROR=1<br />
) else (<br />
 echo       * %*<br />
)</p>
<p>if not &#8220;%APPEND%&#8221;==&#8221;" (<br />
 echo          &#8211; cross domain EXPORT/IMPORT detected, domain DN&#8217;s translated<br />
 echo            &#8230; &#8220;%tmpPART:~10%&#8221; to &#8220;%domainDN%&#8221;<br />
)</p>
<p>call :LOGS %logDN%<br />
goto :EOF</p>
<p>:: Rename logged entries for each partition exported or imported in order preserve each log<br />
:LOGS<br />
del &#8220;%DUMP%\Logs\*-%MODE%.LOG&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
del &#8220;%DUMP%\Logs\*-%MODE%.ERR&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
ren &#8220;%DUMP%\Logs\ldif.log&#8221; &#8220;[%*]-%MODE%.LOG&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
ren &#8220;%DUMP%\Logs\ldif.err&#8221; &#8220;[%*]-%MODE%.ERR&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
goto :EOF</p>
<p>:: Displays errors<br />
:ERROR<br />
if &#8220;%WORKING%&#8221;==&#8221;1&#8243; (<br />
 echo    &#8211; FAILED &#8230; %*<br />
) else (<br />
 echo ERROR &#8211; %*<br />
)<br />
set ERROR=1<br />
goto :EOF</p>
<p>:: Provides assistance with syntax<br />
:SYNTAX<br />
echo.<br />
echo SYNTAX &#8211; %TOOLNAME% [IMPORT^|EXPORT] [dump directory] ^&lt;optional install root^&gt;<br />
echo.<br />
echo   * [IMPORT] imports a %TOOLNAME% exported DNS service configuration<br />
echo   * [EXPORT] exports the existing DNS service configuration<br />
echo   * [dump directory] is a local, writable directory path<br />
echo   * [install root] is the local absolute path used by the DNS service<br />
echo.<br />
echo   * %TOOLNAME% requires -<br />
echo     &#8211; administrative credentials<br />
echo     &#8211; local execution on the DNS server<br />
echo     &#8211; Microsoft Windows 2000/2003 server family, builds %SUPPORTEDBUILDS%<br />
echo.<br />
echo   * %TOOLNAME% provides import and export of -<br />
echo     &#8211; DNS service configuration<br />
echo     &#8211; Active Directory integrated zones and zone configuration<br />
echo     &#8211; standard zone files and zone configuration<br />
echo.<br />
echo   * %TOOLNAME% feature notes -<br />
echo     &#8211; existing Active Directory zones will NOT be overwritten during IMPORT<br />
echo     &#8211; manually erase existing zones IF an authoritative import IS REQUIRED<br />
echo     &#8211; ALL zone configuration options WILL be overwritten during IMPORT<br />
echo     &#8211; non Active Directory integrated zones WILL be overwritten during IMPORT<br />
echo     &#8211; existing DNS service configuration WILL be overwritten during IMPORT<br />
echo     &#8211; DNS service WILL be restarted during IMPORT<br />
echo     &#8211; detailed logs are preserved beneath the specified DUMP path<br />
goto :EOF</p>
<p>:END</p>
<p>:: Restore previous working directory<br />
popd</p>
<p>:: Clean up<br />
del &#8220;%TEMP%\DNS-Service.TMP&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
del &#8220;%TEMP%\DNS-Service-Parameters.TMP&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
del &#8220;%TEMP%\NTDS-Service.TMP&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
del &#8220;%TEMP%\DCorMember.TMP&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%</p>
<p>if &#8220;%ERROR%&#8221;==&#8221;2&#8243; (<br />
 if &#8220;%MODE%&#8221;==&#8221;EXPORT&#8221; (<br />
  del &#8220;%DUMP%\InstallRoot&#8221; /f /y 1&gt;%STDOUT% 2&gt;%STDERR%<br />
  rd &#8220;%DUMP%\InstallRoot&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
  del &#8220;%DUMP%\Logs&#8221; /f /y 1&gt;%STDOUT% 2&gt;%STDERR%<br />
  rd &#8220;%DUMP%\Logs&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%  <br />
  del &#8220;%DUMP%&#8221; /f /q 1&gt;%STDOUT% 2&gt;%STDERR%<br />
  rd &#8220;%DUMP%&#8221; 1&gt;%STDOUT% 2&gt;%STDERR%<br />
 )<br />
)</p>
<p><script type="text/javascript"><!--
google_ad_client = "pub-0943284585205000";
/* 468x60, created 5/16/09 */
google_ad_slot = "9974952027";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindeasy.com/how-to-backup-windows-dns/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Can&#8217;t uninstall that program? This Tool will help</title>
		<link>http://www.mindeasy.com/cant-uninstall-that-program-this-tool-will-help#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed</link>
		<comments>http://www.mindeasy.com/cant-uninstall-that-program-this-tool-will-help#comments</comments>
		<pubDate>Mon, 18 May 2009 05:09:33 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[cleanup utility]]></category>
		<category><![CDATA[msi]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://mindeasy.com/?p=10</guid>
		<description><![CDATA[Ever had a situation, where a machine was put in front off you and you where told this program doesn&#8217;t work?  Well You are in IT so you obviously have and if not you are still in school.  I had this happen to me when our CEO adobe acrobat was not working.  Well I thought [...]]]></description>
			<content:encoded><![CDATA[<p>Ever had a situation, where a machine was put in front off you and you where told this program doesn&#8217;t work?  Well You are in IT so you obviously have and if not you are still in school.  I had this happen to me when our CEO adobe acrobat was not working.  Well I thought I will just un-install the program and reinstall.  I soon found out Adobe would not uninstall and I could not install Acrobat until the old one was gone.  Now reinstalling his machine was out off the question so I googled and found this tool.  The <strong>Microsoft Window Installer Cleanup Utility</strong>.  It pretty much un-installs any MSI on your system.  Below is the link to where to get it and a nice description.  This tool has saved my life a few times.</p>
<p><a href="http://support.microsoft.com/kb/290301">http://support.microsoft.com/kb/290301</a><script type="text/javascript"><!--
google_ad_client = "pub-0943284585205000";
/* 468x60, created 5/16/09 */
google_ad_slot = "9974952027";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindeasy.com/cant-uninstall-that-program-this-tool-will-help/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.882 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2010-03-10 19:53:42 -->
