<?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>Zero Intellect &#187; redirection</title>
	<atom:link href="http://www.zerointellect.com/tag/redirection/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.zerointellect.com</link>
	<description>Technology Blog requiring Zero Intellect to follow !!!</description>
	<lastBuildDate>Mon, 28 Jun 2010 14:09:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Google Public DNS</title>
		<link>http://www.zerointellect.com/networking/google-public-dns/</link>
		<comments>http://www.zerointellect.com/networking/google-public-dns/#comments</comments>
		<pubDate>Fri, 18 Dec 2009 10:37:36 +0000</pubDate>
		<dc:creator>zrydento</dc:creator>
				<category><![CDATA[Networking]]></category>
		<category><![CDATA[8.8.4.4]]></category>
		<category><![CDATA[8.8.8.8]]></category>
		<category><![CDATA[alternate dns]]></category>
		<category><![CDATA[anycast]]></category>
		<category><![CDATA[authoritative]]></category>
		<category><![CDATA[bind]]></category>
		<category><![CDATA[blocking]]></category>
		<category><![CDATA[control panel]]></category>
		<category><![CDATA[dependencies]]></category>
		<category><![CDATA[dhcp]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[ipv4]]></category>
		<category><![CDATA[ipv6]]></category>
		<category><![CDATA[local area network]]></category>
		<category><![CDATA[malware]]></category>
		<category><![CDATA[network connections]]></category>
		<category><![CDATA[nsd]]></category>
		<category><![CDATA[preferred dns]]></category>
		<category><![CDATA[proprietary]]></category>
		<category><![CDATA[public]]></category>
		<category><![CDATA[recursive]]></category>
		<category><![CDATA[redirection]]></category>
		<category><![CDATA[resolver]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SLA]]></category>
		<category><![CDATA[speed]]></category>
		<category><![CDATA[tld]]></category>
		<category><![CDATA[top level domain]]></category>
		<category><![CDATA[windows xp]]></category>

		<guid isPermaLink="false">http://www.zerointellect.com/?p=302</guid>
		<description><![CDATA[<p> </p>
<p>While I was looking for free public DNS servers the other day, I happened to come across the Google Public DNS. Reading the FAQ I gathered that it was not based upon BIND or NSD but was a proprietary DNS server written by Google.</p>
<p>When you connect to your ISP, most of the time you get an IP <p>Continue reading <a href="http://www.zerointellect.com/networking/google-public-dns/">Google Public DNS</a></p>]]></description>
			<content:encoded><![CDATA[<p> </p>
<p>While I was looking for free public DNS servers the other day, I happened to come across the Google Public DNS. Reading the FAQ I gathered that it was not based upon BIND or NSD but was a proprietary DNS server written by Google.</p>
<p>When you connect to your ISP, most of the time you get an IP address and DNS servers from your ISP&#8217;s Dynamic Host Configuration Protocol (DHCP) server.</p>
<p>As per their website, Google Public DNS is a recursive DNS resolver, similar to other publicly available services, but it is not any of the following:</p>
<ul>
<li>A top-level domain (TLD) name service. Google is not an operator of top-level domain servers (generic or country-code)</li>
<li>Google Public DNS is not a third-party DNS application service provider, such as DynDNS, that hosts authoritative records for other domains.</li>
<li>Google Public DNS servers are not authoritative for any domain. Google maintains a set of other nameservers that are authoritative for domains it has registered, hosted at ns[1-4].google.com.</li>
<li>A malware-blocking service. Google Public DNS does not perform blocking or filtering of any kind.</li>
</ul>
<p> </p>
<p>To use Google Public DNS, you need to explicitly change the DNS settings in your operating system or device to use the Google Public DNS IP addresses below.</p>
<p> </p>
<blockquote><p>The Google Public DNS IP addresses are as follows:</p>
<p><strong>8.8.8.8<br />
8.8.4.4</strong></p></blockquote>
<p> </p>
<blockquote><p>You can follow the steps below to change DNS settings in the TCP/IP properties window for the required network connection. (Example below is for Windows XP)</p>
<p>1. Navigate to the Control Panel.<br />
2. Click Network and Internet Connections, then Network Connections.<br />
3. Select the connection for which you want to configure Google Public DNS. For example:<br />
- To change the settings for an Ethernet connection, right-click Local Area Connection, and click Properties.<br />
- To change the settings for a wireless connection, right-click Wireless Network Connection, and click Properties.<br />
4. Under the General Tab. Under This connection uses the following items, click Internet Protocol (TCP/IP), and then click Properties.<br />
5. Click Advanced and select the DNS tab. Note down any DNS server IP addresses already listed there and then remove all of them from this window.<br />
6. Click OK.<br />
7. Select the option Use the following DNS server addresses. If there are any IP addresses listed in the Preferred DNS server or Alternate DNS server, write them down for future reference.<br />
8. Replace those addresses with the IP addresses of the Google DNS servers: 8.8.8.8 and 8.8.4.4.<br />
9. Restart the connection you selected.</p></blockquote>
<p> </p>
<p>I tried to gather more information about the service and noted down the following:</p>
<p>- Servers spread about around the globe (obviously)<br />
- The service uses anycast routing to direct requests to the nearest DNS server<br />
- Google Public DNS can respond to requests for IPv6 addresses (AAAA requests), but it does not yet support native IPv6 transport and cannot talk to IPv6-only authoritative nameservers. Clients should use IPv4 network connections to use Google Public DNS. This is likely to change as the service evolves.<br />
- Google Public DNS is an independent service with no cross product dependencies.<br />
- No technical support is provided by google directly and the only available form of support is Google groups, a Twitter channel and telephone support.<br />
- The service is not bound by SLA at this time. </p>
<p> </p>
<p>The benefits mentioned by Google while using their DNS server are:</p>
<p>- Speed up your browsing experience<br />
- Improve your security<br />
- Get the results you expect with absolutely no redirection</p>
<p> </p>
<p>I tried the new DNS settings and was satisfied (without a few domain names not resolving), I have yet to try to calculate the difference in latency of my old DNS servers versus Google Public DNS. I expect the product to improve much more in the long run.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zerointellect.com/networking/google-public-dns/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Preboot Execution Environment (PXE)</title>
		<link>http://www.zerointellect.com/networking/preboot-execution-environment-pxe/</link>
		<comments>http://www.zerointellect.com/networking/preboot-execution-environment-pxe/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 05:06:10 +0000</pubDate>
		<dc:creator>zrydento</dc:creator>
				<category><![CDATA[Networking]]></category>
		<category><![CDATA[3com]]></category>
		<category><![CDATA[boot]]></category>
		<category><![CDATA[compaq]]></category>
		<category><![CDATA[dell]]></category>
		<category><![CDATA[dhcp]]></category>
		<category><![CDATA[DHCPACK]]></category>
		<category><![CDATA[DHCPDISCOVER]]></category>
		<category><![CDATA[DHCPINFORM]]></category>
		<category><![CDATA[DHCPOFFER]]></category>
		<category><![CDATA[DHCPREQUEST]]></category>
		<category><![CDATA[firmware]]></category>
		<category><![CDATA[guid]]></category>
		<category><![CDATA[hp]]></category>
		<category><![CDATA[ip]]></category>
		<category><![CDATA[phoenix]]></category>
		<category><![CDATA[pixie]]></category>
		<category><![CDATA[proxy dhcp]]></category>
		<category><![CDATA[pxe]]></category>
		<category><![CDATA[redirection]]></category>
		<category><![CDATA[tftp]]></category>
		<category><![CDATA[udp]]></category>
		<category><![CDATA[undi]]></category>

		<guid isPermaLink="false">http://www.zerointellect.com/?p=322</guid>
		<description><![CDATA[<p> </p>
<p>Booting your host from the network without the need to rely on the local operating system or hard disks is a technology that is not used very often in the corporate environment today with some people never having heard that such a thing is possible. With the way things are moving today with virtual machines, virtual <p>Continue reading <a href="http://www.zerointellect.com/networking/preboot-execution-environment-pxe/">Preboot Execution Environment (PXE)</a></p>]]></description>
			<content:encoded><![CDATA[<p> </p>
<p>Booting your host from the network without the need to rely on the local operating system or hard disks is a technology that is not used very often in the corporate environment today with some people never having heard that such a thing is possible. With the way things are moving today with virtual machines, virtual storage, dynamic infrastructure, I feel that the trend would be reversed with few folks storing data on local hard drives and more moving to virtual environments and booting from remote storage at least as far as the backend infrastructure is concerned because of the advantages of flexibility, backup, deployment, etc.</p>
<p> </p>
<p>Preboot eXecution Environment (PXE) or ‘pixie’ as it is popularly called is one of the many technologies that helps in booting hosts using a Network Interface with the help of images stored remotely. PXE consists of a suite of protocols like IP, UDP, DHCP, TFTP and concepts like Globally Unique Identifier (GUID) and Universal Network Device Interface (UNDI). The firmware of the PXE client is extended with the help of API’s. The PXE client refers to any hardware host device (server, notebook, PC) that is included with the PXE boot code.</p>
<p> </p>
<p>PXE is an open industry standard developed by a number of software and hardware vendors. It was initially designed by Intel, with input from several other vendors including 3Com, HP, Dell, Compaq, and Phoenix Technologies. PXE works with a USB adapters and network interface card (NIC) in the PC, making the PC boot over the network.</p>
<p> </p>
<p>Hosts that support booting from PXE, have a firmware that tries to locate a PXE redirection service (Proxy DHCP) to get a list of PXE boot servers that are available. After going through the reply, the firmware software will request an appropriate boot server for the file path of the network bootstrap program (NBP) like xxx and download it on the local Random Access Memory (RAM) using TFTP generally, verify and execute it.</p>
<p> </p>
<p>If a common NBP is used by all PXE clients it could be specified by BOOTP thereby not needing a proxy DHCP, but the TFTP server is still required.</p>
<p> </p>
<p><strong>PXE Protocol</strong></p>
<p>The PXE protocol is a combination of modified versions of DHCP and TFTP. DHCP is used to locate the appropriate boot servers and TFTP is used to download the bootstrap program and other files to the PXE client. Initiation of a PXE bootstrap session is done by the PXE firmware broadcasting a DHCPDISCOVER packet with PXE options (extended DHCPDISCOVER) to port 67 UDP (DHCP Server port). The PXE options identify the firmware of the sending host as capable of PXE, but this message is ignored by standard DHCP servers. If the PXE client receives DHCPOFFERS from such servers, it may request for one of the offered configurations.</p>
<p> </p>
<p><strong>PROXY DHCP</strong></p>
<p>When a PXE redirection service (Proxy DHCP) receives an extended DHCPDISCOVER, it replies by sending back a broadcast called an extended DHCPOFFER (DHCPOFFER with extended PXE options) to port 68/UDP (DHCP client port). The reason this packet is broadcasts back because the IP address of the PXE client is not included in DHCPDISCOVER message. The client is mainly identified by its GUID/UUID</p>
<p> </p>
<blockquote><p><strong>Extended DHCPOFFER contains mainly:</strong></p>
<p> - PXE Discovery Control field to decide whether Multicasting, Broadcasting, or Unicasting is to be used for contacting PXE boot servers<br />
- List of IP addresses of each available PXE Boot Server Type<br />
- PXE Boot Menu with each entry representing a PXE Boot Server Type<br />
- PXE Boot Prompt telling the user to press &lt;F8&gt; to see the boot menu<br />
- Timeout to launch the first boot menu entry if it expires.</p></blockquote>
<p> </p>
<p>The Proxy DHCP service may also be run on the same host as the standard DHCP service. Since both services cannot share port 67/UDP, the Proxy DHCP runs on port 4011/UDP and expects the extended DHCPDISCOVER packets from PXE Clients to be DHCPREQUESTs. The standard DHCP service has to send a special combination of PXE options in its DHCPOFFER, so the PXE client knows to look for a Proxy DHCP on the same host, port 4011/UDP.</p>
<p> </p>
<p> <img class="aligncenter" src="http://www.zerointellect.com/uploads/16122009-diagram-1-1.png" alt="" width="510" height="625" /></p>
<p> </p>
<p><strong>Boot Server</strong></p>
<p>To contact any PXE Boot Server the firmware must have an IP address and has to consider all information from exactly one extended DHCPOFFER. After choosing an appropriate PXE Boot Server Type the firmware multicasts or unicasts a DHCPREQUEST packet extended with PXE-specific options (extended DHCPREQUEST) to port 4011/UDP or broadcasts it to port 67/UDP. This packet mainly contains the PXE Boot Server Type and the PXE Boot Layer, allowing to run many boot server types with one boot server daemon (or &#8216;program&#8217;). The extended DHCPREQUEST may also be a DHCPINFORM.</p>
<p> </p>
<p>If a PXE Boot Server receives an extended DHCPREQUEST as described above and if the boot server is configured for the requested PXE Boot Server Type and client architecture, it must respond by sending back an extended DHCPACK to the source port of the extended DHCPREQUEST.</p>
<p> </p>
<blockquote><p><strong>Extended DHCPACK contains mainly:</strong><br />
- The complete file path to download the NBP via TFTP.<br />
- PXE Boot Server Type and PXE Boot Layer the boot server answered to<br />
- Multicast TFTP configuration, if MTFTP as described in the PXE specification should be used</p></blockquote>
<p> </p>
<p>Additionally the PXE firmware extension was designed as an Option ROM for the IA-32 BIOS so you can get a personal computer (PC) PXE-capable by installing a NIC that provides a PXE Option ROM as can be seen in the figure below</p>
<p> </p>
<p><img class="aligncenter" src="http://www.zerointellect.com/uploads/16122009-diagram-1-2.png" alt="" width="200" height="229" /></p>
<p> </p>
<p><img class="aligncenter" src="http://www.zerointellect.com/uploads/16122009-diagram-1-3.png" alt="" width="350" height="308" /></p>
<p> </p>
<p>The PXE Client/Server Protocol was designed so:</p>
<p>- It can be used in the same network as an existing DHCP environment without interference<br />
- It can be integrated completely into standard DHCP services</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zerointellect.com/networking/preboot-execution-environment-pxe/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

