<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.askapache.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>AskApache Web Fire</title>
	
	<link>http://www.askapache.com</link>
	<description>.htaccess, Net Security, Server Tech, Web Development, Tutorials and Articles. Come through in something amazing.. blazing.</description>
	<lastBuildDate>Fri, 03 Jul 2009 14:04:00 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9-rare</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<image><link>http://www.askapache.com/</link><url>http://z.askapache.com/feed.gif</url><title>AskApache - .htaccess Web Devevelopment</title></image><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.askapache.com/apache/htaccess" type="application/rss+xml" /><feedburner:emailServiceId>apache/htaccess</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.askapache.com%2Fapache%2Fhtaccess" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.askapache.com%2Fapache%2Fhtaccess" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeeds.askapache.com%2Fapache%2Fhtaccess" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://feeds.askapache.com/apache/htaccess" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.askapache.com%2Fapache%2Fhtaccess" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.askapache.com%2Fapache%2Fhtaccess" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.askapache.com%2Fapache%2Fhtaccess" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:feedFlare href="http://www.live.com/?add=http%3A%2F%2Ffeeds.askapache.com%2Fapache%2Fhtaccess" src="http://tkfiles.storage.msn.com/x1piYkpqHC_35nIp1gLE68-wvzLZO8iXl_JMledmJQXP-XTBOLfmQv4zhj4MhcWEJh_GtoBIiAl1Mjh-ndp9k47If7hTaFno0mxW9_i3p_5qQw">Subscribe with Live.com</feedburner:feedFlare><feedburner:browserFriendly>Thanks for your Interest, you are very nice!</feedburner:browserFriendly><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
		<title>The Final Countdown – Mario Bros Style</title>
		<link>http://feeds.askapache.com/~r/apache/htaccess/~3/YCnb2PufTCk/the-final-countdown.html</link>
		<comments>http://www.askapache.com/music/the-final-countdown.html#comments</comments>
		<pubDate>Wed, 01 Jul 2009 03:38:47 +0000</pubDate>
		<dc:creator>AskApache</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Music]]></category>

		<guid isPermaLink="false">http://www.askapache.com/music/the-final-countdown.html</guid>
		<description><![CDATA[<div><div style="width:213px;height:178px;display:block;overflow:hidden;" class="IFL"><object width="213" height="178"><param name="movie" value="http://www.youtube-nocookie.com/v/padvnsLUhUM&#38;hl=en&#38;fs=1&#38;rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube-nocookie.com/v/padvnsLUhUM&#38;hl=en&#38;fs=1&#38;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="213" height="178"></embed></object></div><div style="width:213px;height:178px;display:block;overflow:hidden;" class="IFL"><object width="213" height="178"><param name="movie" value="http://www.youtube-nocookie.com/v/7_IKcMl_a9A&#38;rel=1"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube-nocookie.com/v/7_IKcMl_a9A&#38;rel=1" type="application/x-shockwave-flash" wmode="transparent" width="213" height="178"></embed></object></div><span><br /><br /><br /></span>Hmm.. Something new on the way or just something for us 80's babies?<br /><br /><br />Be forewarned, the countdown has begun  ;)<br class="C" /></div>]]></description>
			<content:encoded><![CDATA[<p><strong>From the New *old* Mario Bros Commercial for Nintendo Wii</strong>, music for the homepage<br />
<object width="425" height="355"><param name="movie" value="http://www.youtube-nocookie.com/v/7_IKcMl_a9A&#038;rel=1&#038;autoplay=1"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube-nocookie.com/v/7_IKcMl_a9A&#038;rel=1&#038;autoplay=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"></embed></object></p>
<p>I&#8217;m not sure about you, but anything Mario endorses&#8230;  </p>
<p><object width="425" height="344"><param name="movie" value="http://www.youtube-nocookie.com/v/padvnsLUhUM&#038;hl=en&#038;fs=1&#038;rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube-nocookie.com/v/padvnsLUhUM&#038;hl=en&#038;fs=1&#038;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
<div class="feedflare">
<a href="http://feeds.askapache.com/~ff/apache/htaccess?a=YCnb2PufTCk:JUDc7S6TWwg:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/apache/htaccess?i=YCnb2PufTCk:JUDc7S6TWwg:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.askapache.com/~ff/apache/htaccess?a=YCnb2PufTCk:JUDc7S6TWwg:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/apache/htaccess?i=YCnb2PufTCk:JUDc7S6TWwg:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.askapache.com/~ff/apache/htaccess?a=YCnb2PufTCk:JUDc7S6TWwg:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/apache/htaccess?d=dnMXMwOfBR0" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.askapache.com/music/the-final-countdown.html/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.askapache.com/music/the-final-countdown.html</feedburner:origLink></item>
		<item>
		<title>Make Windows XP Blazingly Fast</title>
		<link>http://feeds.askapache.com/~r/apache/htaccess/~3/uOkEMYfVpVo/blazing-fast-xp-speed.html</link>
		<comments>http://www.askapache.com/windows/blazing-fast-xp-speed.html#comments</comments>
		<pubDate>Sat, 27 Jun 2009 05:06:49 +0000</pubDate>
		<dc:creator>AskApache</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[File System]]></category>
		<category><![CDATA[Hard Drive]]></category>
		<category><![CDATA[pagefile]]></category>
		<category><![CDATA[Windows XP Optimization]]></category>

		<guid isPermaLink="false">http://www.askapache.com/?p=2834</guid>
		<description><![CDATA[<p>Here is the basic process that I use to speed up Windows.  A lot of good tips and tricks I've picked up over the past 15+ years of crashing and burning Windows that can transform your PC to be much faster than its ever been.  The process focuses on freeing up RAM/Memory, freeing up your CPU/Processor, and optimizing your Hard Drive for a permanent solution.<br /><br />Make sure to check out the free software I recommend at the end, installing them after this optimization process will keep your machine fast for a long time.</p>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been using Windows since before &#8220;Windows for Workgroups 3.x&#8221; and have used most of the Windows releases since, on a wide variety of cheaper than cheap computers and platforms that are slower than slow. I&#8217;m always interested in new ways to maximize speed and over the years I&#8217;ve picked up quite a few little tips on how to max out your Windows PC. I am not fond of being forced to use MS, and am not a MS expert, so I hope all you Windows peeps will share your tips with us.. And some of these tips can crash your machine if you don&#8217;t know what you are doing.</p>
<p><a id="overview" title="General Ideas and Overview"></a></p>
<h2>Overview and General Ideas</h2>
<h4>Basic Definitions</h4>
<dl class="sdll">
<dt>CPU &#8211; Central Processing Unit</dt>
<dd>This is what Intel and AMD commercials are about, this chip functions like a calculator, computing all the data.</dd>
<dt>Hard Drive</dt>
<dd>This is a glorified CD-ROM Disc that is much faster and has a higher capacity than a CD-ROM.  This is where all your files and Operating System is stored on.</dd>
<dt>RAM &#8211; Random Access Memory</dt>
<dd>Data that is frequently accessed is stored in RAM instead of the Hard Drive because RAM is much much faster.</dd>
<dt>Page File / Virtual Memory</dt>
<dd>This is literally a file that is stored on your Hard Drive and is used as a form of RAM when you run out of real RAM.  Much slower than RAM (because it is located on the hard drive) it is used to store bits of data used by programs.</dd>
</dl>
<h4>Three-pronged attack against the sluggish druggish</h4>
<ol>
<li>
<h4>Increase RAM/Memory</h4>
<p>Reducing the amount of RAM that is wasted by unneeded programs, unused device drivers and devices, background services, visual effects, and various other stuff frees up RAM for your needed programs and processes.  The final step of this article details the Cacheman Software that automatically takes care of everything this article doesn&#8217;t go into (like registry modifications and hidden tweaks)..</p>
</li>
<li>
<h4>Optimize Hard Drive Data</h4>
<p>The attack in order:</p>
<ul>
<li>Reduce Amount of data on drive by removing unneeded data and configuring optimum settings to prevent buildup in the future.</li>
<li>Configure settings which minimize the amount of disk activity, e.g., reading and writing to disk.</li>
<li>Defragment the data that is left, and setup an automated system to prevent fragmentation in the future.</li>
</ul>
</li>
<li>
<h4>Free Up CPU Time</h4>
<p>Almost all of the following tips will help to decrease the amount of CPU processing time that is wasted on unneeded processes.</p>
</li>
</ol>
<hr class="C" />
<h2><strong>Part 1</strong>: Increase and Free Memory/RAM</h2>
<p><a id="performance" title="Configure Performance Options"></a></p>
<h4>Configure Performance Options</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Performance_Options.png"><img src="http://z.askapache.com/uploads/2009/06/Performance_Options-79x116.png" alt="Performance Settings" title="Performance Settings" width="79" height="116" /></a><strong>Control Panel -> System -> Advanced -> Performance -> Settings</strong></p>
<p>If you have massive RAM like I do, <em>best appearance</em> is nice.  To max your speed change to &#8220;Adjust for best performance&#8221;.<br class="C" /></p>
<h4>Change Theme to Classic</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Display_Properties_Themes.png"><img src="http://z.askapache.com/uploads/2009/06/Display_Properties_Themes-103x115.png" alt="Display Properties Themes" title="Display Properties Themes" width="103" height="115" /></a>The Classic Theme uses less RAM and CPU than the newer XP themes.<br class="C" /></p>
<h4>Fine-Tune Effects</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Display_Properties_Appearance.png"><img src="http://z.askapache.com/uploads/2009/06/Display_Properties_Appearance-103x115.png" alt="Display Properties Appearance" title="Display Properties Appearance" width=width="103" height="115" /></a><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Display_Effects.png"><img src="http://z.askapache.com/uploads/2009/06/Display_Effects-116x88.png" alt="Display Effects" title="Display Effects" width="116" height="88" /></a>Disable all for maximum speed.  I like to only leave ClearType enabled.<br class="C" /></p>
<h4>Color quality and Resolution</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Display_Properties.png"><img src="http://z.askapache.com/uploads/2009/06/Display_Properties-103x115.png" alt="Display Properties Resolution" title="Display Properties Resolution" width="103" height="115" /></a>To sacrifice quality for speed, change the Color quality to a lower setting, and lower the resolution if you want.<br class="C" /></p>
<h4>Clean up that Desktop!</h4>
<p>Your desktop is always loaded in RAM, as it is always available to view.  So everything that is ON your desktop is likewise stored in RAM.  This means that every icon located on your desktop, which is actually an icon file, is loaded in RAM.  What I do is instead of a cluttered Desktop always loaded in RAM, I simply create 1 folder called Desktop on my Desktop, and move everything from my desktop to that folder.  That way instead of all those icons taking up memory, now only the single folder icon is taking up RAM.  Not a HUGE impact, but it illustrates what RAM is and how you can stop wasting it.<br class="C" /></p>
<h4>Make Background Solid Color</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Display_Properties_Desktop.png"><img src="http://z.askapache.com/uploads/2009/06/Display_Properties_Desktop-103x115.png" alt="Display Properties Desktop" title="Display Properties Desktop" width="103" height="115" /></a>By setting the background image of your desktop (and folders if you are using custom folder backgrounds) to none, and instead just using a solid color (like blue) you free up RAM.  If your desktop uses a high-quality background image (like mine) that is a 5MB jpeg image, that effectively wastes 5MB of your RAM.  A solid color background uses none.<br class="C" /></p>
<hr class="C" />
<p><a id="folder_options" title="Optimize Folder Options"></a></p>
<h4>Optimize Folder Options</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Folder_Options.png"><img src="http://z.askapache.com/uploads/2009/06/Folder_Options-67x116.png" alt="Folder Viewing Options" title="Folder Viewing Options" width="67" height="116" /></a><strong>Open up Explorer/My Computer -> Tools -> Folder Options</strong></p>
<p>First change the option to &#8220;<em>Use Windows classic folders</em>&#8220;.  Now goto the View tab and hit the button &#8220;<em>Reset all Folders</em>&#8220;, which will clear your individual folder viewing settings.  Then change the options to the ones I have selected in the image for optimum speed, its up to you which options you don&#8217;t want to change.  The <em>searching for network folders</em> is a very real cause of slowness.<br class="C" /></p>
<hr class="C" />
<p><a id="page-file" title="Page File and Virtual Memory Usage"></a></p>
<h4>Page File / Virtual Memory</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Performance_Options_Advanced.png"><img src="http://z.askapache.com/uploads/2009/06/Performance_Options_Advanced-79x116.png" alt="Advanced Performance Options" title="Advanced Performance Options" width="79" height="116" /></a>The optimal way to use a page file is to not use a pagefile and max out your physical RAM.  Next to doing that (which Windows won&#8217;t let you do anyway, they love pagefiling) the optimal setup is to have the pagefile on a 2nd hard-drive-disk.  The computer can only read/write data to/from the hard drive at a certain speed, and only a certain amount of read/writes can be going on at one time.. Think of it like a pipe.  Having the pagefile.sys on the same disk that Windows and all the Program&#8217;s are loaded on clogs the pipe and limits flow of data in both directions.</p>
<p>Note that moving the page file to a separate partition on the same hard drive would NOT fix this problem or alleviate the bottleneck in any way, so the solution is to get a 2nd hard drive, I personally recommend these 2 <a href="#hard-drive">$49.99 &#8211; 320GB x 7500RPM</a> hard-drives that are very reliable.<br class="C" /></p>
<h4>Page File Size</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Virtual_Memory.png"><img src="http://z.askapache.com/uploads/2009/06/Virtual_Memory-90x116.png" alt="Virtual Memory" title="Virtual Memory" width="90" height="116" /></a>The size of your pagefile is up for debate, no clear answer, but I&#8217;ve tried a lot of different configurations over the years and here is what I recommend.  If you have little RAM (less than 1GB), then you should just let Windows control it.  Otherwise use the custom option to set it at a low initial size of 400MB to grow up to 3096MB.  I have 4GB of RAM, so I set it to start at 100MB and grow to 5000MB.  The general rule is to set it to be 1.5x the amount of RAM you have.<br class="C" /></p>
<p><a id="disable-devices" title="Turning Off Unneeded Devices"></a></p>
<h4>Disable Devices</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Device_Manager.png"><img src="http://z.askapache.com/uploads/2009/06/Device_Manager-92x116.png" alt="Device Manager" title="Device Manager" width="92" height="116" /></a>Disable any devices you never use, like internal modems, firewire ports, floppy drives, etc..  Also disable them in your systems BIOS if you can.<br class="C" /></p>
<h4>Uninstalling Devices</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Device_Manager_Hidden_Drives.png"><img src="http://z.askapache.com/uploads/2009/06/Device_Manager_Hidden_Drives-116x98.png" alt="Device Manager Hidden Devices" title="Device Manager Hidden Devices" width="116" height="98" /></a>If you have devices that you used on your computer in the past but don&#8217;t anymore, they are still being loaded up by Windows and at the very least hogging some resources.  So go through and uninstall them..  (You have to select View -> Show hidden devices).. If you plug them back in they will be re-installed with the &#8220;Found new hardware&#8221; wizard.<br class="C" /></p>
<hr class="C" />
<h4>Disable Fast User Switching</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/User_Accounts_Settings.png"><img src="http://z.askapache.com/uploads/2009/06/User_Accounts_Settings-116x104.png" alt="User Accounts Settings" title="User Accounts Settings" width="116" height="104" /></a><strong>Control Panel -> Users -> Change the way users log on</strong></p>
<p>Make sure you disable fast-user-switching unless you absolutely must have it.  I&#8217;ve found it to be a cool feature if you are a basic computer user not installing programs or tweaking settings.. Nut it can create big problems if you use your computer for all sorts of *advanced* stuff (advanced for Windows)&#8230;  Plus disabling it will have some speed improvements.<br class="C" /></p>
<hr class="C" />
<p><a id="services" title="Optimizing Services"></a></p>
<h4>Optimizing Services</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Disabled_Services.png"><img src="http://z.askapache.com/uploads/2009/06/Disabled_Services-116x95.png" alt="Disabled Services" title="Disabled Services" width="116" height="95" /></a><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Manual_Services.png"><img src="http://z.askapache.com/uploads/2009/06/Manual_Services-34x116.png" alt="XP Manual Services" title="XP Manual Services" width="34" height="116" /></a><strong>Start -> Run -> services.msc</strong></p>
<p>First make sure you export your current services to a backup file before you begin.  There are a number of informative articles about this topic on the web.<br class="C" /></p>
<hr class="C" />
<p><a id="network-protocols" title="Removing Extraneous Network Protocols"></a></p>
<h4>Removing Unneeded Network Protocols</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Connection_Properties.png"><img src="http://z.askapache.com/uploads/2009/06/Connection_Properties-94x116.png" alt="Connection Properties" title="Connection Properties" width="94" height="116" /></a>This actually helps a lot and can have a significant impact on your computer speed, much more so than any impact on network speed improvements.  These protocols require all sorts of RAM and are kept loaded.  They also represent a security risk as it provides another process to be attacked.<br class="C" /></p>
<hr class="C" />
<h2><strong>Part 2</strong>: Optimize Hard Drive and Data</h2>
<p><a id="hard-drive" title="External Hard Drives"></a></p>
<h4>Recommended Hard Drives</h4>
<p>These are the cheapest price&#8217;s for these tried and true hard-drives.  I love TigerDirect and recommend you check them out.</p>
<ol>
<li><strong>$49.99</strong> <a href="http://click.linksynergy.com/fs-bin/click?id=HqZ8LNuf6*4&#038;offerid=102327.4233835&#038;type=2&#038;subid=0">Seagate Barracuda 320GB</a> &#8211; 7200RPM</li>
<li><strong>$49.99</strong> <a href="http://click.linksynergy.com/fs-bin/click?id=HqZ8LNuf6*4&#038;offerid=102327.3179250&#038;type=2&#038;subid=0">WD3200 Caviar Blue 320GB</a> &#8211; 7200RPM</li>
<li><strong>$59.99</strong> <a href="http://click.linksynergy.com/fs-bin/click?id=HqZ8LNuf6*4&#038;offerid=102327.2795126&#038;type=2&#038;subid=0">WD5000 Caviar Blue 500GB</a> &#8211; 7200RPM</li>
<li><strong>$229.99</strong> <a href="http://click.linksynergy.com/fs-bin/click?id=HqZ8LNuf6*4&#038;offerid=102327.4177125&#038;type=2&#038;subid=0">WD VelociRaptor 320GB</a> &#8211; 10,000RPM, FAST!</li>
</ol>
<p><a id="file-system" title="File System Tweaks"></a></p>
<h4>File System Tweaks</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Computer-Management-Console.png"><img src="http://z.askapache.com/uploads/2009/06/Computer-Management-Console-116x76.png" alt="Computer Management Console" title="Computer Management Console" width="116" height="76" /></a><strong>Start -> Run -> compmgmt.msc</strong><br />Check the structure and properties of your disks and partitions to see if anything is out of place.  Make sure file systems are using NTFS.  But some partitions like dell utility partition, or a partition shared by linux/mac/windows on dual-boot systems may be fat or fat32.  To convert fat-based to NTFS, defragment MFT, resize NTFS clusters, etc.. you have to use a third part product.  I personally use Norton Partition Magic, Paragon Partition Manager, and <a href="http://click.linksynergy.com/fs-bin/click?id=HqZ8LNuf6*4&#038;offerid=102327.4395951&#038;type=2&#038;subid=0" >Acronis Disk Director Suite</a> (plus 20 other various tools).<br class="C" /></p>
<hr class="C" />
<h4>2nd Hard Drive</h4>
<p>*Advanced*<br />If your lucky or smart enough to have more than one hard drive disk installed, in addition to moving your pagefile to that 2nd hard-drive you should setup the hard drive with at least 2 partitions first.  Say you install one of those <a href="#hard-drive">320GB hard drives I recommend</a>&#8230; Here&#8217;s how I set the partitions on the 2nd hard-drive.</p>
<ol>
<li>6.5GB &#8211; S: [SWAP] &#8211; First partition is fastest area on drive, this partition is ONLY for the pagefile.  Size is 1.5x the max size of your pagefile setting, or 1.5x the amount of RAM.</li>
<li>13.5GB &#8211; 2nd partition is not given a drive letter, instead it is mounted as both C:\TMP and C:\TEMP folders.. similarly to optimizing the pagefile, Windows and Programs use the TMP and TEMP folders A LOT so this will really speed up any installations and a lot of Windows itself.  *very tricky*</li>
<li>300GB &#8211; This is also mounted instead of given a drive letter, mounted as &#8220;C:\Documents and Settings&#8221; which is where all your settings and user files (Desktop, My Documents) are stored. *very tricky*</li>
</ol>
<p>Setting up the TMP and &#8220;Documents and Settings&#8221; folders that way is NOT for beginners, its advanced and dangerous if you do it wrong.  But definately has one of the biggest noticeable speed benefits.</p>
<hr class="C" />
<p><a id="remove-programs" title="Removing Programs"></a></p>
<h4>Remove Unneccessary Programs</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Add_Remove_Programs.png"><img src="http://z.askapache.com/uploads/2009/06/Add_Remove_Programs-116x115.png" alt="Add Remove Programs" title="Add Remove Programs" width="116" height="115" /></a><br /><strong>Control Panel -> Add or Remove Programs</strong></p>
<p>Remove all programs that you are <strong>positive</strong> you don&#8217;t need anymore, the more you remove, the better.  Microsoft provides a free tool that is simple and helpful when removing programs.  Download it at: <a href="http://support.microsoft.com/kb/290301/">Windows Installer CleanUp Utility</a><br class="C" /></p>
<h4>Remove Windows Components</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Windows_Components_Wizard.png"><img src="http://z.askapache.com/uploads/2009/06/Windows_Components_Wizard-116x90.png" alt="Windows Components Wizard" title="Windows Components Wizard" width="116" height="90" /></a>The only main categories I need are <em>Internet Explorer</em>, <em>Windows Media Player</em>, <em>Update Root Certificates</em>, and <em>Accessories and Utilities</em><br class="C" /></p>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Windows_Components_Accessories_Utilities.png"><img src="http://z.askapache.com/uploads/2009/06/Windows_Components_Accessories_Utilities-116x74.png" alt="Windows Components Accessories Utilities" title="Windows Components Accessories Utilities" width="116" height="74" /></a>I also remove the <em>Games</em> category which is a subcategory of <em>Accessories and Utilities</em>.<br class="C" /></p>
<hr class="C" />
<p><a id="system-restore" title="System Restore Optimization"></a></p>
<h4>System Restore Optimization</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/System_Properties_System_Restore.png"><img src="http://z.askapache.com/uploads/2009/06/System_Properties_System_Restore-100x115.png" alt="System Restore Settings" title="System Restore Settings" width="100" height="115" /></a>Turn off system restore on any drives that are not crucial&#8230; So if you have a 2nd hard-drive that is used for pagefile and temp file storage, turn it off.  And you should make sure the settings aren&#8217;t too generous, I usually never go higher than 10GB.<br class="C" /></p>
<hr class="C" />
<p><a id="recycle-bin" title="Recycle Bin Settings"></a></p>
<h4>Recycle Bin Settings</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Recycle-Bin-Properties.png"><img src="http://z.askapache.com/uploads/2009/06/Recycle-Bin-Properties-116x96.png" alt="Recycle Bin Properties" title="Recycle Bin Properties" width="116" height="96" /></a>Keep this setting to a low value, try not to delete stuff you will need later.  I personally disable the Recycle Bin completely.. but I come from a unix background so I have no issues with misplacing files.<br class="C" /></p>
<hr class="C" />
<p><a id="remove-fonts" title="Remove Extra Fonts"></a></p>
<h4>Remove Unneccessary Fonts</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Fonts.png"><img src="http://z.askapache.com/uploads/2009/06/Fonts-115x99.png" alt="Fonts" title="Fonts" width="115" height="99" /></a><code>C:\Windows\Fonts</code></p>
<p>Fonts are loaded up by default by Windows and every time you load a program like Photoshop, Microsoft Word, Outlook, etc., so moving any you never use out of the <code>C:\Windows\Fonts</code> folder saves RAM and CPU and HD space.  This is a bit hairy but I sort by size and then check out how long its been since the font has been accessed by looking at the file attributes.  The less fonts you have, the faster your computer, but there is obviously a trade-off.  You can move all fonts except for a few basic ones included with Windows to a backup folder instead of deleting them, then reboot and if your font is messed up then move some of the fonts from the backup folder back and try again.<br class="C" /></p>
<hr class="C" />
<p><a id="clean-prefetch" title="Clean Prefetch Files"></a></p>
<h4>Prefetch Cleaning</h4>
<p>Delete the contents of the <code>C:\WINDOWS\Prefetch</code> folder and restart the computer.  Its good to empty this folder and reboot after major upgrades or about once a month.</p>
<hr class="C" />
<h2><strong>Part 3</strong>: Finishing the Optimization Process</h2>
<p>These 3 tips will have the biggest speed impact for 99% of you, this is some really good stuff.</p>
<p><a id="disk-cleanup" title="Disk Cleanup Wizard"></a></p>
<h4>Disk Cleanup</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Disk_Cleanup.png"><img src="http://z.askapache.com/uploads/2009/06/Disk_Cleanup-97x116.png" alt="Disk Cleanup" title="Disk Cleanup" width="97" height="116" /></a><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Disk_Cleanup_More_Options.png"><img src="http://z.askapache.com/uploads/2009/06/Disk_Cleanup_More_Options-97x116.png" alt="Disk Cleanup More Options" title="Disk Cleanup More Options" width="97" height="116" /></a><strong>Start -> Run -> <code>%SystemRoot%\system32\cleanmgr.exe</code></strong></p>
<p>This wizard is a very useful tool that combines several cleanup tools in one location.  It also provides a way to clean up all past restore points save on your disk except the most recent one.<br class="C" /></p>
<hr class="C" />
<p><a id="defragment" title="Defragmenting with SmartDefrag"></a></p>
<h4>Defragmenting with SmartDefrag</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Smart_Defrag.jpg"><img src="http://z.askapache.com/uploads/2009/06/Smart_Defrag.jpg" alt="Smart Defrag" title="Smart Defrag" width="120" height="120" /></a><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Smart_Defrag_SS.png"><img src="http://z.askapache.com/uploads/2009/06/Smart_Defrag_SS-116x87.png" alt="Smart Defrag ScreenShot" title="Smart Defrag ScreenShot" width="116" height="87" /></a>The World’s Most Efficient Defragmenter</p>
<p>What’s the primary cause of slow/unstable PC performance? It’s disk fragmentation. Smart Defrag helps defragment your hard drives more efficiently than any other product on the market –– free or not.</p>
<p>This powerful, award-winning free defragmenter is 100% safe and clean with no adware, spyware, or viruses.</p>
<p><a href="http://www.iobit.com/iobitsmartdefrag.html?Str=download">Download Smart Defrag</a><br class="C" /></p>
<hr class="C" />
<p><a id="cacheman" title="Cacheman XP Optimization"></a></p>
<h4>Cacheman XP Optimization</h4>
<p><a class="IFL" href="http://z.askapache.com/uploads/2009/06/Cacheman_XP_SS.jpg"><img src="http://z.askapache.com/uploads/2009/06/Cacheman_XP_SS-116x82.jpg" alt="Cacheman XP ScreenShot" title="Cacheman XP ScreenShot" width="116" height="82" /></a>Cacheman is a Windows software designed to speed up your computer by optimizing several caches, managing RAM and fine tuning a number of system settings. Auto-Optimization makes it suitable for novice and intermediate users yet it is also powerful and versatile enough for computer experts. Backups of settings ensure that all user modifications can be reversed with a single click.</p>
<p><a href="http://cacheman.outertech.com/index.php?_charisma_page=product&#038;id=2">Go Get It</a><br class="C" /></p>
<hr class="C" />
<h2>Software Recommendations</h2>
<h3>From the Sysinternals Suite</h3>
<h4><a href="http://technet.microsoft.com/en-us/sysinternals/bb963902.aspx">Autoruns</a></h4>
<p>See what programs are configured to startup automatically when your system boots and you login. Autoruns also shows you the full list of Registry and file locations where applications can configure auto-start settings.</p>
<h4><a href="http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx">Process Explorer</a></h4>
<p>Find out what files, registry keys and other objects processes have open, which DLLs they have loaded, and more. This uniquely powerful utility will even show you who owns each process.</p>
<h4><a href="http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx">Process Monitor</a></h4>
<p>Monitor file system, Registry, process, thread and DLL activity in real-time.</p>
<h4><a href="http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx">VMMap</a></h4>
<p>See a breakdown of a process&#8217;s committed virtual memory types as well as the amount of physical memory (working set) assigned by the operating system to those types. Identify the sources of process memory usage and the memory cost of application features.</p>
<p><a id="tweakui" title="Tweak UI Powertoy"></a></p>
<h4>Tweak UI Powertoy</h4>
<p>This PowerToy gives you access to system settings that are not exposed in the Windows XP default user interface, including mouse settings, Explorer settings, taskbar settings, and more.</p>
<p><a href="http://www.microsoft.com/windowsxp/downloads/powertoys/xppowertoys.mspx">Go Get It</a><br class="C" /></p>
<hr class="C" />
<div class="feedflare">
<a href="http://feeds.askapache.com/~ff/apache/htaccess?a=uOkEMYfVpVo:tfzSwuEtnMk:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/apache/htaccess?i=uOkEMYfVpVo:tfzSwuEtnMk:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.askapache.com/~ff/apache/htaccess?a=uOkEMYfVpVo:tfzSwuEtnMk:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/apache/htaccess?i=uOkEMYfVpVo:tfzSwuEtnMk:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.askapache.com/~ff/apache/htaccess?a=uOkEMYfVpVo:tfzSwuEtnMk:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/apache/htaccess?d=dnMXMwOfBR0" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.askapache.com/windows/blazing-fast-xp-speed.html/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://www.askapache.com/windows/blazing-fast-xp-speed.html</feedburner:origLink></item>
		<item>
		<title>Student under Criminal Investigation for Allegedly Sending Email</title>
		<link>http://feeds.askapache.com/~r/apache/htaccess/~3/4hb9iGNxST4/linux-student-illegal-criminal-investigation.html</link>
		<comments>http://www.askapache.com/security/linux-student-illegal-criminal-investigation.html#comments</comments>
		<pubDate>Sat, 18 Apr 2009 03:35:11 +0000</pubDate>
		<dc:creator>AskApache</dc:creator>
				<category><![CDATA[Hacking]]></category>
		<category><![CDATA[Review]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[electronic frontier foundation]]></category>

		<guid isPermaLink="false">http://www.askapache.com/?p=2684</guid>
		<description><![CDATA[What is most surprising is how easy the police and authorities were able to break the law and flip the bird to the U.S. Constitution.  A lot of people worry about government groups like the NSA having illegal access to data, but I don&#8217;t mind that..  I don&#8217;t care about the Chinese Government [...]]]></description>
			<content:encoded><![CDATA[<p>What is most surprising is how easy the police and authorities were able to break the law and <em>flip the bird to the U.S. Constitution</em>.  A lot of people worry about government groups like the NSA having illegal access to data, but I don&#8217;t mind that..  I don&#8217;t care about the Chinese Government doing similar activity that much either..   The thing that I DO care about is this could happen to anyone.. It&#8217;s happened to me before but never to this extent with the courts.. This is NOT cool.</p>
<blockquote>
<p>The police used inapplicable criminal laws as a basis for a <strong>fishing expedition</strong> to determine the author of an anonymous email,&#8221; said EFF Senior Staff Attorney Matt Zimmerman. &#8220;Now, this student has been <strong>suspended from his job</strong>, and he is <strong>without a laptop</strong> and other devices he needs to do his schoolwork. His <strong>private communications and papers</strong> are in the hands of police who are searching for evidence without just cause.  Even his <strong>cell phone and iPod</strong> were taken, clearly an overreach if the goal is tracking the source of an email.</p>
<p><a href="http://www.askapache.com/security/linux-student-illegal-criminal-investigation.html"><img src="http://z.askapache.com/uploads/2009/04/extreme-ignorance.jpg" alt="extreme ignorance - courtesy Windows" title="extreme ignorance - courtesy Windows" width="510" height="112" /></a></p>
<p><strong>This search warrant is invalid, as there is no probable cause that a crime was committed at all&#8230; Every day this student&#8217;s private information is in the hands of the police department, he suffers harm to his property interests and his constitutional rights.</strong></p>
</blockquote>
<p>The dorm room search stemmed from an investigation into who sent an email to a Boston College mailing list alleging that another student was gay. Police say they know who sent the email and that the sender committed the crimes of &#8220;<a href="http://www.mass.gov/legis/laws/mgl/266-33a.htm">obtaining computer services by fraud or misrepresentation</a>&#8221; and obtaining &#8220;<a href="http://www.mass.gov/legis/laws/mgl/266-120f.htm">unauthorized access to a computer system.</a>&#8221; However, nothing presented by the investigating officer to obtain the warrant, including the allegation that the student sent the email to the mailing list, could constitute the cited criminal offenses.</p>
<h2>Could Happen to Anyone</h2>
<p>Think if you were known as someone good with computers at your work or school, and something as small as a mean-spirited email was sent to the whole organization..  Then they come into your office, suspend you from working, and send your cell phone, ipod, disks, backups, and computer to the local police station where it is then hammered at by some average cop who&#8217;s only security skill is knowing how to use the special forensic detective programs that are illegal for the general public, but really aren&#8217;t all that impressive.  This can wreck havoc on your hard-drives, and if it fails at the police station?  Sorry no backups!</p>
<h2>That Sinking Feeling..</h2>
<p>How are individuals supposed to take-on such established authoritative organizations like the Police?  When/How do you get your stuff back?  How many people do you have to call to even find out IF you&#8217;ll get it back or even learn where they&#8217;ve taken it?  Under criminal investigation, the courts are involved, the state police are involved, and you lost your job and means to make a living.. what can you possibly do?</p>
<p><a href="http://www.eff.org/">The Electronic Frontier Foundation (EFF)</a> is <a href="http://www.eff.org/deeplinks/2009/04/boston-college-prompt-commands-are-suspicious">representing the student</a>, along with a very good law firm: <a href="http://www.fr.com/about/index.cfm">Fish &#038; Richardson</a>.  They&#8217;ve petitioned the court for the <strong>immediate</strong> return of his property and is demanding that investigators be prohibited from any further searches or analysis of his digital data. Massachusetts State Police participated in the search and are overseeing the <em>forensic analysis</em> of the seized property.  The damage has already been done, now its time to put the hurt down on them so they don&#8217;t trample the Constitution so easily the next time.</p>
<p>The <a href='http://z.askapache.com/uploads/2009/04/warrant-application.pdf'>motion to quash the search warrant</a> was filed with assistance from <a href="http://www.fr.com/">Fish &#038; Richardson</a> attorneys Adam Kessel, Lawrence Kolodney, and Tom Brown.  <em>Internet Heroes</em>.</p>
<div class="feedflare">
<a href="http://feeds.askapache.com/~ff/apache/htaccess?a=4hb9iGNxST4:oZcpt9Q4Yfk:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/apache/htaccess?i=4hb9iGNxST4:oZcpt9Q4Yfk:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.askapache.com/~ff/apache/htaccess?a=4hb9iGNxST4:oZcpt9Q4Yfk:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/apache/htaccess?i=4hb9iGNxST4:oZcpt9Q4Yfk:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.askapache.com/~ff/apache/htaccess?a=4hb9iGNxST4:oZcpt9Q4Yfk:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/apache/htaccess?d=dnMXMwOfBR0" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.askapache.com/security/linux-student-illegal-criminal-investigation.html/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.askapache.com/security/linux-student-illegal-criminal-investigation.html</feedburner:origLink></item>
		<item>
		<title>DNS Round Robin Configuration using Rsync over SSH</title>
		<link>http://feeds.askapache.com/~r/apache/htaccess/~3/Tvrwn5NMnuY/dns-round-robin-rsync-over-ssh.html</link>
		<comments>http://www.askapache.com/linux-unix/dns-round-robin-rsync-over-ssh.html#comments</comments>
		<pubDate>Tue, 14 Apr 2009 05:46:20 +0000</pubDate>
		<dc:creator>AskApache</dc:creator>
				<category><![CDATA[Ajax]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[Apache Modules]]></category>
		<category><![CDATA[Cache]]></category>
		<category><![CDATA[Featured]]></category>
		<category><![CDATA[Linux Unix BSD]]></category>
		<category><![CDATA[Web Hosting]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[DreamHost]]></category>
		<category><![CDATA[HostGator]]></category>
		<category><![CDATA[Powweb]]></category>
		<category><![CDATA[Round Robin]]></category>
		<category><![CDATA[rsync]]></category>
		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://www.askapache.com/?p=2540</guid>
		<description><![CDATA[<p><a class="IFL" href="http://www.askapache.com/dreamhost/dns-round-robin-rsync-over-ssh.html"><img src="http://z.askapache.com/uploads/2009/04/round-robin-dns-116x98.png" /></a><strong>The goal is to add the HostGator server</strong> to be an exact mirror of the z.askapache.com domain, then to add that server as a 2nd A record to my DNS zone.  That way half the visitors to the size will be taking up resources and bandwidth on the <a href="http://secure.hostgator.com/cgi-bin/affiliates/clickthru.cgi?id=AskApache-rrdns">HostGator</a> server instead of mine.<br /><br /><strong>Round Robin A records</strong> in DNS are intended to evenly distribute queries between each host of the same name.  Using some tricks straight out of a hackers toolbox we can verify if the distribution is taking place.  (<a href="http://www.askapache.com/dreamhost/dns-round-robin-rsync-over-ssh.html#dns-robin-works">It is.</a>)  <br class="C" /></p>]]></description>
			<content:encoded><![CDATA[<p>My traffic is growing, alot, and I need to plan how I&#8217;m going to maintain scalability, high availability, and redundancy.   Scalability is an application&#8217;s ability to support a growing number of users. High availability can be defined as redundancy or speed.  I decided to setup <a href="#dns-robin-round">Round Robin DNS</a> for <a href="http://z.askapache.com/">z.askapache.com</a>, which is the &#8220;static&#8221; <a href="http://www.askapache.com/htaccess/apache-speed-subdomains.html">subdomain</a> of <a href="http://www.askapache.com/">AskApache</a> that serves all the static assets like images, javascript, css, etc.. (<em>BTW, the z stands for ZAP</em>)..  All I needed to attempt setting this up was another hosting account on a separate server.  I have hosting accounts with around 10 different companies from working with various clients over the years, like <a href="http://www.powweb.com/join/index.bml?AffID=582654">Powweb</a> and I don&#8217;t use them because they suck in terms of the unix environment.  Many of these web hosts are actually very fast bandwidth-wise..</p>
<h2><a id="#round-robin-concept" name="#round-robin-concept"></a>Round Robin Concept</h2>
<p><a class="IFL" href="#"><img src="http://z.askapache.com/uploads/2009/04/round-robin-dns.png" alt="Round Robin DNS" title="Round Robin DNS" width="396" height="335" class="size-full wp-image-2622" /></a><strong>A few months ago</strong> I was given a free hosting account on <a href="http://secure.hostgator.com/cgi-bin/affiliates/clickthru.cgi?id=AskApache-rrdns">HostGator</a> to evaluate and tempt me away from DreamHost to become a Gator.  I get a lot of these types of offers from time to time from the smaller Web companies who read AskApache.. but when I noticed the SSH access was jailed and saw how restrictive the shell was I felt like I was on a windows box..  I want a shell, cpanel sucks.  I compile and run everything from the shell so thats was a deal-breaker and I sorta forgot all about it.</p>
<p><strong>The goal is to add the HostGator server</strong> to be an <a href="http://www.askapache.com/security/mirror-using-rsync-ssh.html">exact mirror</a> of the z.askapache.com domain, then to add that server as a 2nd A record to my DNS zone.  That way half the visitors to the size will be taking up resources and bandwidth on the <a href="http://secure.hostgator.com/cgi-bin/affiliates/clickthru.cgi?id=AskApache-rrdns">HostGator</a> server instead of mine.</p>
<p><strong>Round Robin A records</strong> in DNS are intended to evenly distribute queries between each host of the same name.  Using some tricks straight out of a <a href="http://www.askapache.com/security/computer-security-toolbox-2.html">hackers toolbox</a> we can <a href="#dns-robin-works">verify if the distribution</a> is taking place.  (<a href="#dns-robin-works">It is.</a>)  <br class="C" /></p>
<h2><a id="#dns-robin-dns" name="#dns-robin-dns"></a>DNS &#8211; Domain Name System</h2>
<p>The Domain Name System is often analogized as a &#8220;phone book&#8221; for the Internet because it translates human-friendly computer hostnames into IP addresses. For example, <code>www.askapache.com</code> translates to <code>208.113.134.190</code>.  Every request for a human-friendly hostname first needs to be translated to the IP before the server can be queried.  Normally each hostname corresponds to exactly 1 IP address.  But in a Round Robin setup, the idea is to have the hostname correspond to multiple IP addresses, which are different servers that house the exact same content, resulting in some hosts requesting files from one server, and another host requesting files from the other server, resulting in less CPU resources and bandwidth.</p>
<p>Here is an the zone for <code>z.askapache.com</code> Round Robin records:</p>
<table summary="Round Robin DNS Records" id="ver-zebra">
<colgroup>
<col class="e" />
<col class="o" />
<col class="e" />
<col class="o" />
<col class="e" /></colgroup>
<thead>
<tr>
<th scope="col" class="e">QUERY</th>
<th scope="col" class="o">TTL</th>
<th scope="col" class="e">CLASS</th>
<th scope="col" class="o">TYPE</th>
<th scope="col" class="e">ANSWER</th>
</tr>
</thead>
<tbody>
<tr>
<td>z.askapache.com</td>
<td>13084</td>
<td>IN</td>
<td>A</td>
<td>64.111.114.111</td>
</tr>
<tr>
<td>z.askapache.com</td>
<td>13084</td>
<td>IN</td>
<td>A</td>
<td>69.56.174.114</td>
</tr>
</tbody>
</table>
<h2><a id="#dns-robin-round" name="#dns-robin-round"></a>Round Robin DNS</h2>
<p>Round robin DNS is a technique of load distribution, load balancing, or fault-tolerance provisioning multiple, redundant Internet Protocol service hosts, e.g., Web servers, FTP servers, by managing the Domain Name System&#8217;s (DNS) responses to address requests from client computers according to an appropriate statistical model.</p>
<p>In its simplest implementation Round-robin DNS works by responding to DNS requests not only with a single IP address, but a list of IP addresses of several servers that host identical services. The order in which IP addresses from the list are returned is the basis for the term round robin. With each DNS response, the IP address sequence in the list is permuted. Usually, basic IP clients attempt connections with the first address returned from a DNS query so that on different connection attempts clients would receive service from different providers, thus distributing the overall load among servers.</p>
<p>Round robin DNS is often used for balancing the load of geographically-distributed Web servers. For example, a company has one domain name and three identical web sites residing on three servers with three different IP addresses. When one user accesses the home page it will be sent to the first IP address. The second user who accesses the home page will be sent to the next IP address, and the third user will be sent to the third IP address. In each case, once the IP address is given out, it goes to the end of the list. The fourth user, therefore, will be sent to the first IP address, and so forth.</p>
<p>Although easy to implement, round robin DNS has problematic drawbacks, such as those arising from record caching in the DNS hierarchy itself, as well as client-side address caching and reuse, the combination of which can be difficult to manage. Round robin DNS should not solely be relied upon for service availability. If a service at one of the addresses in the list fails, the DNS will continue to hand out that address and clients will still attempt to reach the inoperable service.</p>
<h2><a id="#dns-robin-works" name="#dns-robin-works" title="Efficacy of DNS Load Balancing"></a>Does Round Robin Work</h2>
<p>Definately.  I can look at the access logs for both servers and see that they are splitting the requests nicely.   It is definately not an exact split however, look at these statistics and you&#8217;ll see what I mean.</p>
<pre class='brushbash'>
$ dig @ns1.dreamhost.com +authority +all z.askapache.com
&nbsp;
;; ANSWER SECTION:
z.askapache.com.        14400   IN      A       69.56.174.114
z.askapache.com.        14400   IN      A       64.111.114.111
&nbsp;
$ dig @ns1.dreamhost.com +authority +all z.askapache.com
&nbsp;
;; ANSWER SECTION:
z.askapache.com.        14400   IN      A       64.111.114.111
z.askapache.com.        14400   IN      A       69.56.174.114
</pre>
<p>The effects of caching will distort the effectiveness of any IP address allocation algorithm unless a 0 TTL is used which has the effect of significantly increasing the load on the DNS (and is not always implemented consistently). In this case the cure may be worse than the disease Good news we have good load balancing on our web servers. Bad news we need 17 more DNS servers!. Intuitively, and without running any experiments to verify, we would suggest that given a normal TTL (12 hours or more) and ANY IP allocation algorithm other than a single static list, loads should be reasonably balanced .</p>
<p><strong>Full root server query</strong></p>
<pre class='brushbash'>
Tracing to z.askapache.com[a] via A.ROOT-SERVERS.NET, maximum of 3 retries
A.ROOT-SERVERS.NET [.] (198.41.0.4)
 |\___ L.GTLD-SERVERS.NET [com] (192.41.162.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ D.GTLD-SERVERS.NET [com] (192.31.80.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ J.GTLD-SERVERS.NET [com] (192.48.79.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ H.GTLD-SERVERS.NET [com] (192.54.112.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ E.GTLD-SERVERS.NET [com] (192.12.94.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ F.GTLD-SERVERS.NET [com] (192.35.51.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ I.GTLD-SERVERS.NET [com] (192.43.172.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ G.GTLD-SERVERS.NET [com] (192.42.93.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ B.GTLD-SERVERS.NET [com] (2001:0503:231d:0000:0000:0000:0002:0030) Not queried
 |\___ B.GTLD-SERVERS.NET [com] (192.33.14.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ A.GTLD-SERVERS.NET [com] (2001:0503:a83e:0000:0000:0000:0002:0030) Not queried
 |\___ A.GTLD-SERVERS.NET [com] (192.5.6.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ C.GTLD-SERVERS.NET [com] (192.26.92.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ M.GTLD-SERVERS.NET [com] (192.55.83.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
  \___ K.GTLD-SERVERS.NET [com] (192.52.178.30)
       |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
       |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
        \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
&nbsp;
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       z.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       z.askapache.com -&gt; 69.56.174.114
</pre>
<h2><a id="#dns-online-tools" name="#dns-online-tools"></a>Live Online DNS Tools</h2>
<ul>
<li><a href="http://member.dnsstuff.com/amember/go.php?r=323972&#038;i=l0">DNSstuff.com &#8211; Your Destination for DNS and Networking Tools</a></li>
<li><a href="http://www.zonecheck.fr/cgi-bin/zc.cgi?zone=askapache.com&#038;ns0=ns1.dreamhost.com&#038;ips0=&#038;ns1=ns2.dreamhost.com&#038;ips1=&#038;ns2=ns3.dreamhost.com&#038;ips2=&#038;ns3=&#038;ips3=&#038;ns4=&#038;ips4=&#038;ns5=&#038;ips5=&#038;ns6=&#038;ips6=&#038;ns7=&#038;ips7=&#038;intro=t&#038;explain=t&#038;details=t&#038;progress=counter&#038;report=byseverity&#038;format=html&#038;lang=en&#038;errorlvl=allwarning&#038;profile=automatic&#038;chkmail=t&#038;chkzone=t&#038;chkrir=t&#038;transp3=ipv4&#038;transp3=ipv6&#038;transp4=std">ZoneCheck</a></li>
<li><a href="http://pingability.com/zoneinfo.jsp?domain=askapache.com">Quick Check &#8211; Pingability.com</a></li>
<li><a href="http://www.squish.net/dnscheck/dnscheck.cgi?host=askapache.com&#038;type=ANY&#038;show_rootservers=on&#038;removebroken=on&#038;cnameprocessing=on&#038;show_mainworkings=on&#038;show_resolving=on&#038;show_allservers=on&#038;getbindversions=on&#038;retries=5&#038;querylevel=15">Squishywishywoo: complete dns traversal checking</a></li>
<li><a href="http://www.zonecut.net/dns/?domain=askapache.com&#038;find_subs=on">ZoneCut DNS</a></li>
<li><a href="http://atrey.karlin.mff.cuni.cz/~mj/sleuth/?domain=askapache.com&#038;verbose=ON&#038;server=ns1.dreamhost.com&#038;serverip=&#038;action=Submit&#038;.cgifields=verbose">DNS Sleuth</a></li>
<li><a href="http://www.pweb.cz/en/dns-test/dom.php">DNS test &#8211; Domain name DNS test &#8211; pweb.cz</a></li>
<li><a href="http://www.opendns.com/support/cache/?d=z.askapache.com">OpenDNS &#8211; Support &#8211; CacheCheck</a></li>
<li><a href="http://www.dnscolos.com/dnsreport.php">DNSReport</a></li>
<li><a href="http://freedns.afraid.org/domain/dnstrace.php?domain=askapache.com&#038;submit=Trace">DNSTrace</a></li>
<li><a href="http://www.intodns.com/askapache.com">intoDNS</a></li>
<li><a href="http://www.dnsthru.com/">DNSthru.com</a></li>
<li><a href="http://demo.dnsdoctor.org/cgi-bin/diagnose.cgi?zone=askapache.com&#038;ns0=ns1.dreamhost.com&#038;ips0=&#038;ns1=ns2.dreamhost.com&#038;ips1=&#038;ns2=ns3.dreamhost.com&#038;ips2=&#038;ns3=&#038;ips3=&#038;ns4=&#038;ips4=67.19.1.10&#038;ns5=&#038;ips5=67.19.0.10&#038;ns6=&#038;ips6=67.18.150.114&#038;ns7=&#038;ips7=&#038;intro=t&#038;format=html&#038;lang=en&#038;testname=t&#038;explain=t&#038;details=t&#038;progress=testdesc&#038;errorlvl=allwarning&#038;dontstop=nostop&#038;profile=automatic&#038;report=byseverity&#038;chkmail=t&#038;transp3=ipv4&#038;transp3=ipv6&#038;transp4=std">DNS Doctor</a></li>
<li><a href="http://www.checkdns.net/powercheck.aspx">Power Check</a></li>
</ul>
<h2><a id="#dns-links" name="#dns-links"></a>More Reading</h2>
<ul>
<li><a href="http://www.zytrax.com/books/dns/ch9/rr.html">HOWTO &#8211; Configure Load Balancing</a></li>
<li><a href="http://ntrg.cs.tcd.ie/undergrad/4ba2.01/group8/DNS.html">Load Sharing with DNS</a></li>
</ul>
<h3><a id="#dns-rfc-list" name="#dns-rfc-list"></a>RFC&#8217;s related to DNS</h3>
<ul>
<li><a href="http://rfc.askapache.com/rfc920/rfc920.html" title="protocol,signature,resource,dnssec,records,response,record,dnskey,algorithm,standards,domain,server,resolver,security">RFC 920</a>:  Specified original TLDs: .arpa, .com, .edu, .org, .gov, .mil and two-character country codes</li>
<li><a href="http://rfc.askapache.com/rfc1032/rfc1032.html">RFC 1032</a>:  Domain administrators guide</li>
<li><a href="http://rfc.askapache.com/rfc1033/rfc1033.html">RFC 1033</a>:  Domain administrators operations guide</li>
<li><a href="http://rfc.askapache.com/rfc1034/rfc1034.html">RFC 1034</a>:  Domain Names &#8211; Concepts and Facilities.</li>
<li><a href="http://rfc.askapache.com/rfc1035/rfc1035.html">RFC 1035</a>:  Domain Names &#8211; Implementation and Specification</li>
<li><a href="http://rfc.askapache.com/rfc1101/rfc1101.html">RFC 1101</a>:  DNS Encodings of Network Names and Other Types</li>
<li><a href="http://rfc.askapache.com/rfc1123/rfc1123.html">RFC 1123</a>:  Requirements for Internet Hosts &#8212; Application and Support</li>
<li><a href="http://rfc.askapache.com/rfc1912/rfc1912.html">RFC 1912</a>:  Common DNS Operational and Configuration Errors</li>
<li><a href="http://rfc.askapache.com/rfc1995/rfc1995.html">RFC 1995</a>:  Incremental Zone Transfer in DNS</li>
<li><a href="http://rfc.askapache.com/rfc1996/rfc1996.html">RFC 1996</a>:  A Mechanism for Prompt Notification of Zone Changes (DNS NOTIFY)</li>
<li><a href="http://rfc.askapache.com/rfc2136/rfc2136.html">RFC 2136</a>:  Dynamic Updates in the domain name system (DNS UPDATE)</li>
<li><a href="http://rfc.askapache.com/rfc2181/rfc2181.html">RFC 2181</a>:  Clarifications to the DNS Specification</li>
<li><a href="http://rfc.askapache.com/rfc2182/rfc2182.html">RFC 2182</a>:  Selection and Operation of Secondary DNS Servers</li>
<li><a href="http://rfc.askapache.com/rfc2308/rfc2308.html">RFC 2308</a>:  Negative Caching of DNS Queries (DNS NCACHE)</li>
<li><a href="http://rfc.askapache.com/rfc2317/rfc2317.html">RFC 2317</a>:  Classless IN-ADDR.ARPA delegation</li>
<li><a href="http://rfc.askapache.com/rfc2671/rfc2671.html">RFC 2671</a>:  Extension Mechanisms for DNS (EDNS0)</li>
<li><a href="http://rfc.askapache.com/rfc3597/rfc3597.html">RFC 3597</a>:  Handling of Unknown DNS Resource Record (RR) Types</li>
<li><a href="http://rfc.askapache.com/rfc3696/rfc3696.html">RFC 3696</a>:  Application Techniques for Checking and Transformation of Names</li>
<li><a href="http://rfc.askapache.com/rfc4343/rfc4343.html">RFC 4343</a>:  Domain Name System (DNS) Case Insensitivity Clarification</li>
<li><a href="http://rfc.askapache.com/rfc4592/rfc4592.html">RFC 4592</a>:  The Role of Wildcards in the Domain Name System</li>
<li><a href="http://rfc.askapache.com/rfc4892/rfc4892.html">RFC 4892</a>:  Requirements for a Mechanism Identifying a Name Server Instance</li>
<li><a href="http://rfc.askapache.com/rfc5001/rfc5001.html">RFC 5001</a>:  DNS Name Server Identifier Option (NSID)</li>
<li><a href="http://rfc.askapache.com/rfc5395/rfc5395.html">RFC 5395</a>:  Domain Name System (DNS) IANA Considerations</li>
</ul>
<p class="wikicop">This page contains content by <a rel="nofollow" href="http://en.wikipedia.org/w/index.php?title=Round_robin_DNS&#038;action=history">Author</a> of <a href="http://en.wikipedia.org/wiki/Round_robin_DNS" rel="nofollow">Article</a> from <a href="http://en.wikipedia.org/wiki/Main_Page" rel="nofollow">Wikipedia</a> and is licensed under the <a href="http://www.askapache.com/gnu-fdl.txt" rel="nofollow">GNU FDL</a>.</p>
<p><strong>Table of Contents</strong></p>
<ul>
<li><a href="#round-robin-concept">Round Robin Concept</a></li>
<li><a href="#dns-robin-dns">DNS &#8211; Domain Name System</a></li>
<li><a href="#dns-robin-round">Round Robin DNS</a></li>
<li><a href="#dns-robin-works">Efficacy of DNS Load Balancing</a></li>
<li><a href="#dns-online-tools">Live Online DNS Tools</a></li>
<li><a href="#dns-links">More Reading</a></li>
<li><a href="#dns-rfc-list">RFC&#8217;s related to DNS</a></li>
</ul>
<div class="feedflare">
<a href="http://feeds.askapache.com/~ff/apache/htaccess?a=Tvrwn5NMnuY:uVEGVL5WVHI:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/apache/htaccess?i=Tvrwn5NMnuY:uVEGVL5WVHI:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.askapache.com/~ff/apache/htaccess?a=Tvrwn5NMnuY:uVEGVL5WVHI:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/apache/htaccess?i=Tvrwn5NMnuY:uVEGVL5WVHI:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.askapache.com/~ff/apache/htaccess?a=Tvrwn5NMnuY:uVEGVL5WVHI:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/apache/htaccess?d=dnMXMwOfBR0" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.askapache.com/linux-unix/dns-round-robin-rsync-over-ssh.html/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://www.askapache.com/linux-unix/dns-round-robin-rsync-over-ssh.html</feedburner:origLink></item>
		<item>
		<title>Mirroring an Entire Site using Rsync over SSH</title>
		<link>http://feeds.askapache.com/~r/apache/htaccess/~3/kvnuij8ZyFU/mirror-using-rsync-ssh.html</link>
		<comments>http://www.askapache.com/security/mirror-using-rsync-ssh.html#comments</comments>
		<pubDate>Fri, 10 Apr 2009 11:40:44 +0000</pubDate>
		<dc:creator>AskApache</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[Featured]]></category>
		<category><![CDATA[Linux Unix BSD]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Shell Scripting]]></category>
		<category><![CDATA[Web Hosting]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[encryption]]></category>
		<category><![CDATA[mirror]]></category>
		<category><![CDATA[password]]></category>
		<category><![CDATA[rsync]]></category>
		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://www.askapache.com/?p=2581</guid>
		<description><![CDATA[<p><a href="http://www.askapache.com/security/mirror-using-rsync-ssh.html" class="IFL"><img src="http://z.askapache.com/uploads/2009/04/mirror_buildings.jpg" alt="Website Mirrors with Rsync" title="Website Mirrors with Rsync" width="300" height="201" /></a><strong>Sometimes there is an urgent need</strong> for creating an exact duplicate or "mirror" of a web site on a separate server.  This could be needed for creating Round Robin Setups, Load-Balancing, Failovers, or for just plain vanilla backups.  In the past I have used a lot of different methods to copy data from one server to another, including creating an archive of the whole directory and then using scp to send the file over, creating an archive and then encrypting it and then sending that file over using ftp, <a href="http://curl.askapache.com/">curl</a>, etc., and my <strong>persistence at learning new ways to do things has paid off</strong> because now I use rsync to keep an exact replica of the entire directory on an external server, without having to use all the CPU and resources of other mirroring methods.<br class="C" /></p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.askapache.com/security/mirror-using-rsync-ssh.html" class="IFL"><img src="http://z.askapache.com/uploads/2009/04/mirror_buildings.jpg" alt="Website Mirrors with Rsync" title="Website Mirrors with Rsync" width="300" height="201" /></a><strong>Sometimes there is an urgent need</strong> for creating an exact duplicate or &#8220;mirror&#8221; of a web site on a separate server.  This could be needed for creating Round Robin Setups, Load-Balancing, Failovers, or for just plain vanilla backups.  In the past I have used a lot of different methods to copy data from one server to another, including creating an archive of the whole directory and then using scp to send the file over, creating an archive and then encrypting it and then sending that file over using ftp, <a href="http://curl.askapache.com/">curl</a>, etc., and my <strong>persistence at learning new ways to do things has paid off</strong> because now I use rsync to keep an exact replica of the entire directory on an external server, without having to use all the CPU and resources of other mirroring methods.<br class="C" /></p>
<p>For this article I will show how I setup a web mirror of <var>z.askapache.com</var> from my DreamHost server to my HostGator Server.  For the transfer and synchronization of the directories we will be using rsync over SSH.  We will also be automating this task using a cronjob with no user-interaction, so creating public and private keys for the ssh will be neccessary.  Finally, I provide a simple shell script that prevents anyone from logging into your account with the created keys for any purpose other than to rsync.</p>
<p><br class="C" /><strong>Table of Contents</strong></p>
<ol>
<li><a href="#rsync-mirror">Rsync Synchronization Magic</a></li>
<li><a href="#site-mirror-rsync-ssh">Securing Rsync with SSH</a></li>
<li><a href="#site-mirror-ssh-keygen">Generate Keys with No Password</a></li>
<li><a href="#ssh-config-file">Custom SSH Connection Info</a></li>
<li><a href="#ssh-crontab-rsync">Creating Cronjob for Synchronization</a></li>
<li><a href="#secure-ssh-keys">Only Allow rsync</a></li>
<li><a href="#debug-ssh-rsync">Rsync/SSH Debugging and Stats</a></li>
<li><a href="#rsync-algorithm">Rsync Algorithm</a></li>
</ol>
<h2><a id="rsync-mirror" name="rsync-mirror"></a>Rsync Synchronization Magic</h2>
<div><a class="IFL" href="http://rsync.samba.org/"><img src="http://z.askapache.com/uploads/2009/04/200px-newrsynclogo.jpg" alt="rsync" title="rsync" width="200" height="125" /></a></p>
<dl>
<dt><strong>rsync</strong></dt>
<dd><a href="http://rsync.samba.org/">rsync</a> is an <a href="http://www.opensource.org/">open source</a> file transfer program for Unix systems that uses the &#8220;rsync algorithm&#8221; which provides a very fast method for synchronizing files and directories from one location to another while minimizing data transfer using delta encoding when appropriate. An important feature of rsync not found in most similar programs/protocols is that the mirroring takes place with only one transmission in each direction.. It does this by sending just the differences in the files across the link, without requiring that both sets of files are present at one of the ends of the link beforehand. </dd>
</dl>
<p><br class="C" /></div>
<h2><a id="site-mirror-rsync-ssh" name="site-mirror-rsync-ssh"></a>Securing Rsync with SSH</h2>
<p>I NEVER transfer any unencrypted data around unless that data is transported encrypted and to a trusted recipient, (<em>I use HTTPS for WordPress administration</em>) and I haven&#8217;t had time to probe the HostGator system for security issues yet, so right away I decided I needed an automated way to securely transfer z.askapache.com files TO hostgator, while not allowing my hostgator account access back on my main server.  So if the hostgator account were to get hacked somehow, the cracker/spammer wouldn&#8217;t have access back to my main server.</p>
<h2><a id="site-mirror-ssh-keygen" name="site-mirror-ssh-keygen"></a>Generate Keys with No Password</h2>
<p>First I created a private key, specifically a passwordless host key, meaning to gain access with ssh you only need to supply the key, not a password+key like normal.</p>
<pre class='brushbash'>
[local@dreamhost] $ mkdir -p ~/.ssh &#038;&#038; chmod 700 ~/.ssh
&nbsp;
# Create the public and private keys
# public key at: z.askapache-hostgator.id_rsa.pub
# private key at: z.askapache-hostgator.id_rsa
[local@dreamhost] $ ssh-keygen -t rsa -b 2048 -f ~/.ssh/z.askapache-hostgator.id_rsa
&nbsp;
# add the public key to remote hosts ~/.ssh/authorized_keys file
[local@dreamhost] $ ssh-copy-id -i ~/.ssh/z.askapache-hostgator.id_rsa.pub remoteuser@remotehost
&nbsp;
# or use scp + ssh to add the public key
[local@dreamhost] $ scp ~/.ssh/z.askapache-hostgator.id_rsa.pub remoteuser@remotehost:/home/remoteuser/
[local@dreamhost] $ ssh remoteuser@remotehost
[gatoraskapache@gator] $ mkdir -p ~/.ssh &#038;&#038; chmod 700 ~/.ssh
[gatoraskapache@gator] $ cat ~/z.askapache-hostgator.id_rsa.pub &gt;&gt; ~/.ssh/authorized_keys
[gatoraskapache@gator] $ chmod 600 ~/.ssh/authorized_keys
</pre>
<h2><a id="ssh-config-file" name="ssh-config-file"></a>Custom SSH Connection Info</h2>
<p>This helps alot, by adding this to the very top of my ~/.ssh/config file I don&#8217;t have to add all this stuff to the rsync command-line.  Basically when I reference connecting to the host &#8216;gator&#8217; it uses all these options.  Very helpful and you can add as many entries as you want.</p>
<pre class='brushbash'>
Host gator
   IdentityFile ~/.ssh/z.askapache-hostgator.id_rsa
   Port 2222
   Protocol 2
   User gatoraskapache
   HostName gator555.hostgator.com
   PasswordAuthentication no
</pre>
<h2><a id="ssh-crontab-rsync" name="ssh-crontab-rsync"></a>Creating Cronjob for Synchronization</h2>
<p>This cronjob runs every 30 minutes, copying all modified files from my local directory <code>~/z.askapache.com/</code> to the remote directory <code>~/public_html/z/</code>.  First I backup the current crontab, then I edit the crontab and add this.</p>
<p><kbd>crontab -l > .crontab-`date +%F.backup`; crontab -e</kbd></p>
<pre class='brushhtaccess'>
*/30 * * * * /usr/bin/rsync -e &#039;ssh&#039; -rt &#45;-delete ~/z.askapache.com/ gator:&#039;~/public_html/z/&#039; 1&gt;/dev/null
@midnight /usr/bin/find ~/z.askapache.com/ -type d ! -perm 755 -exec chmod 755 {} \; 1&gt;/dev/null
@midnight /usr/bin/find ~/z.askapache.com/ -type f ! -perm 644 -exec chmod 644 {} \; 1&gt;/dev/null
</pre>
<p>Those 2 find commands scheduled to run at midnight simply fix and permissions on files and directories in my static folder.  They are all static files so there is no reason they need to have any other permission.</p>
<h2><a id="secure-ssh-keys" name="secure-ssh-keys"></a>Only Allow rsync</h2>
<p>This is SWEET!  If you like candy that is..  It&#8217;s called each time anything logs into your machine using the password less key we created above, and it simple checks what command the login process is attempting to issue.  To set this up you need to edit the ~/.ssh/authorized_keys file on the remote host and prefix your public key that you added with a command directive to execute a script:</p>
<pre class='brushbash'>
command="/home/remoteuser/validate-rsync.sh" ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwBhj6UCS7JbJ08C8pWJqCh2iXZMN7tXpYZh47f4gZZBwrNHZQ== localuser@dreamhost
</pre>
<h3>validate-rsync.sh</h3>
<p>For rsync requests it will always be <code>rsync &#45;-server</code> at the start of the command, so if the command is anything else then this script:</p>
<ol>
<li>Sends you an email notifying you somethings up..</li>
<li>Moves the <code>~/.ssh</code> folder to <code>~/.locked-ssh</code></li>
<li>Adds cronjob to move the folder back in about an hour.</li>
</ol>
<pre class='brushbash'>
#!/bin/bash
# Author: http://www.askapache.com
# Version: 1.2
# Date: 04-08-2009
&nbsp;
# If the command used to login to ssh correctly starts with &#039;rsync &#45;-server&#039;
# then exit this script and dont process the rest of the script
case "$SSH_ORIGINAL_COMMAND" in &#039;rsync &#45;-server&#039;*) exit 0; ;; esac;
&nbsp;
# the home directory where the .ssh folder is located
H=/home/remoteuser
&nbsp;
# if there is a locked ssh folder, kill the rsync and die
[[ -d $H/.lssh ]] &#038;&#038; echo "REJECTED" &#038;&#038; exit 1
&nbsp;
EMAIL=webmaster@askapache.com # notified about locked status
OC=$H/old-crontab.txt # the original crontab
NC=$H/new-crontab.txt #the new crontab
&nbsp;
# When to unlock the rsync
UNLOCK_AT=$(( date +%M\ %k &#45;-date=&#039;30 minute 1 hour&#039; ))
&nbsp;
# move the .ssh to .lssh which locks all key-logins
mv $H/.ssh $H/.lssh
&nbsp;
# mail a notice to the boss
echo $SSH_CONNECTION | mail -s &#039;RSYNC LOCKED!!!&#039; "$EMAIL"
&nbsp;
# subshell backs-up crontab then deletes active cron
(

 crontab -l &gt; $OC &&gt;/dev/null || echo -n #backup current crontab
 crontab -r &gt;/dev/null 2&gt;&#038;1 || echo -n # delete current crontab
)
&nbsp;
# subshell creates new crontab combined with old crontab
(
 # create new crontab
 echo -en "MAILTO=&#039;${EMAIL}&#039;\n${UNLOCK_AT} * * * mv $H/.lssh $H/.ssh" &gt;&gt; $NC
 echo -n " &#038;&#038; date|mail -s &#039;UNLOCKED!!!&#039; &#039;${EMAIL}&#039; &#038;&#038; crontab $OC || rm $OC &#038;&#038; rm $OC" &gt;&gt; $NC

 # add old crontab to new crontab minus any MAILTO lines
 cat $OC | sed &#039;/^MAILTO/d&#039; &gt;&gt; $NC

 # load the new crontab and if it doesnt work notify boss
 crontab $NC || echo "manually mv .lssh to .ssh" mail -s &#039;CRONTAB PROBLEM!!!&#039; "$EMAIL"

 # remove new crontab
 rm $NC
)
&nbsp;
exit $?
</pre>
<p><strong>Here is the cronjob entry</strong> it creates&#8230; This will enable the rsync again by moving the folder back, then it mails you to alert you that its back up, and finally the original crontab is restored.</p>
<pre class='brushbash'>
MAILTO="askapache@gmail.com"
03 9 * * * mv ~/.locked-ssh ~/.ssh &#038;&#038; date|mail -s &#039;RUNLOCKED!!!&#039; "webmaster@askapache.com" &#038;&#038; crontab ~/old-crontab.txt
</pre>
<h2><a id="debug-ssh-rsync" name="debug-ssh-rsync"></a>Rsync/SSH Debugging and Stats</h2>
<p>Adding the option -v to the ssh command, ie <kbd>rsync -e 'ssh -vv'</kbd> will give you a lot of debugging info.</p>
<p>By adding &#8211;stats to your rsync command you can get a detailed look at its efficacy.</p>
<pre class='brushhtaccess'>
Number of files: 14900
Number of files transferred: 0
Total file size: 1456832331 bytes
Total transferred file size: 0 bytes
Literal data: 0 bytes
Matched data: 0 bytes
File list size: 320551
File list generation time: 17.393 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 320571
Total bytes received: 20
&nbsp;
sent 320571 bytes  received 20 bytes  17329.24 bytes/sec
total size is 1456832331  speedup is 4544.21
</pre>
<h2><a id="rsync-algorithm" name="rsync-algorithm"></a>Rsync Algorithm</h2>
<p>The rsync utility uses an algorithm (invented by the Australian computer programmer Andrew Tridgell) for efficiently transmitting a structure (such as a file) across a communications link when the receiving computer already has a different version of the same structure.</p>
<p>The recipient splits its copy of the file into fixed-size non-overlapping chunks, of size S, and computes two checksums for each chunk: the MD4 hash, and a weaker &#8216;rolling checksum&#8217;. It sends these checksums to the sender. Version 30 of the protocol (released with rsync version 3.0.0) now uses MD5 hashes rather than MD4.</p>
<p>The sender computes the rolling checksum for every chunk of size S in its own version of the file, even overlapping chunks. This can be calculated efficiently because of a special property of the rolling checksum: if the rolling checksum of bytes n through n + S − 1 is R, the rolling checksum of bytes n + 1 through n + S can be computed from R, byte n, and byte n + S without having to examine the intervening bytes. Thus, if one had already calculated the rolling checksum of bytes 1–25, one could calculate the rolling checksum of bytes 2–26 solely from the previous checksum, and from bytes 1 and 26.</p>
<p>The rolling checksum used in rsync is based on Mark Adler&#8217;s adler-32 checksum, which is used in zlib, and which itself is based on Fletcher&#8217;s checksum.  The sender then compares its rolling checksums with the set sent by the recipient to determine if any matches exist. If they do, it verifies the match by computing the MD4 checksum for the matching block and by comparing it with the MD4 checksum sent by the recipient.</p>
<p>The sender then sends the recipient those parts of its file that did not match any of the recipient&#8217;s blocks, along with assembly instructions on how to merge these blocks into the recipient&#8217;s version. In practice, this creates a file identical to the sender&#8217;s copy. However, it is in principle possible that the recipient&#8217;s copy differs at this point from the sender&#8217;s: this can happen when the two files have different chunks that nonetheless possess the same MD4 hash and rolling checksum; the chances for this to happen are in practice extremely remote.</p>
<p>If the sender&#8217;s and recipient&#8217;s versions of the file have many sections in common, the utility needs to transfer relatively little data to synchronize the files.</p>
<p>While the rsync algorithm forms the heart of the rsync application that essentially optimizes transfers between two computers over TCP/IP, the rsync application supports other key features that aid significantly in data transfers or backup. They include compression and decompression of data block by block using zlib at sending and receiving ends, respectively, and support for protocols such as ssh that enables encrypted transmission of compressed and efficient differential data using rsync algorithm. Instead of ssh, stunnel can also be used to create an encrypted tunnel to secure the data transmitted.</p>
<p>Finally, rsync is capable of limiting the bandwidth consumed during a transfer, a useful feature that few other standard file transfer protocol offer.</p>
<p class="wikicop">This page contains content by <a rel="nofollow" href="http://en.wikipedia.org/w/index.php?title=Rsync&#038;action=history">Author</a> of <a href="http://en.wikipedia.org/wiki/Rsync" rel="nofollow">Article</a> from <a href="http://en.wikipedia.org/wiki/Main_Page" rel="nofollow">Wikipedia</a> and is licensed under the <a href="http://www.askapache.com/gnu-fdl.txt" rel="nofollow">GNU FDL</a>.</p>
<div class="feedflare">
<a href="http://feeds.askapache.com/~ff/apache/htaccess?a=kvnuij8ZyFU:rDzw_1uZwLU:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/apache/htaccess?i=kvnuij8ZyFU:rDzw_1uZwLU:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.askapache.com/~ff/apache/htaccess?a=kvnuij8ZyFU:rDzw_1uZwLU:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/apache/htaccess?i=kvnuij8ZyFU:rDzw_1uZwLU:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.askapache.com/~ff/apache/htaccess?a=kvnuij8ZyFU:rDzw_1uZwLU:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/apache/htaccess?d=dnMXMwOfBR0" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.askapache.com/security/mirror-using-rsync-ssh.html/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.askapache.com/security/mirror-using-rsync-ssh.html</feedburner:origLink></item>
	</channel>
</rss>
