<?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>Your Warranty Is Void.com</title>
	<atom:link href="http://www.yourwarrantyisvoid.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.yourwarrantyisvoid.com</link>
	<description>Linux, Hardware, Software and Chaos. What more is there?</description>
	<lastBuildDate>Wed, 18 Jan 2012 03:59:25 +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>Editorial:YWIV going dark for SOPA</title>
		<link>http://www.yourwarrantyisvoid.com/2012/01/17/editorial-ywiv-going-dark-for-sopa/</link>
		<comments>http://www.yourwarrantyisvoid.com/2012/01/17/editorial-ywiv-going-dark-for-sopa/#comments</comments>
		<pubDate>Wed, 18 Jan 2012 03:59:25 +0000</pubDate>
		<dc:creator>firestorm_v1</dc:creator>
				<category><![CDATA[Site News]]></category>

		<guid isPermaLink="false">http://www.yourwarrantyisvoid.com/?p=1100</guid>
		<description><![CDATA[Ok, so here&#8217;s the deal.  I&#8217;ve been on the fence about whether or not to black out my site in formal protest of SOPA but after talking with several other website owners and operators and consulting with a lawyer friend of mine, I did confirm my worst fears.  While SOPA may be &#8220;well intentioned&#8221; to [...]]]></description>
			<content:encoded><![CDATA[<p>Ok, so here&#8217;s the deal.  I&#8217;ve been on the fence about whether or not to black out my site in formal protest of SOPA but after talking with several other website owners and operators and consulting with a lawyer friend of mine, I did confirm my worst fears.  While SOPA may be &#8220;well intentioned&#8221; to be a fight against piracy, the law is so vaguely written that it would allow anyone to shut down any website with little to no recourse or any due process.</p>
<p>As a self-generating content site, (I write my own articles and most of my images are hand-taken. Those that aren&#8217;t are linked and used with permission from the original content owners or with permission from the parent company.) this is seriously a threat to my sites&#8217; existences.  If I posted a bad review of a product didn&#8217;t like it, under SOPA,  they could scream that my site was enabling piracy and they could effectively steal my domain without any due recourse. I could not petition to get my domain back, nor could I do anything else legal about it.  All of my hard work on this site would have been wasted and even worse, under SOPA, they could even make it so I would lose all of my webhosting in its entirety.</p>
<p>I am opposed to any legislation that is written so vaguely and allows the indiscriminant shutdown of any website on the <strong><em>allegation</em></strong> of piracy.  I oppose any legislation that makes my ISPs the &#8220;police&#8221; of the Internet. I oppose any legislation that allows others to take control of my domains without due process.  If you are to charge me with something, you had best be prepared to defend yourself.</p>
<p>Other sites have taken notice.  Google, Reddit, The Electronic Frontier Foundation, Mozilla, and many others are joining in the protest tomorrow and I am going to be one of them.  We must send the warning to Congress that this must not be allowed to pass as it will destroy the Internet. Essentially, this will turn into a witch hunt, where everyone is guilty.</p>
<p>I understand that some of you may not understand and that some of you will be upset, however I will return on January 19th and I hope you will continue to read my site.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yourwarrantyisvoid.com/2012/01/17/editorial-ywiv-going-dark-for-sopa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Networking: Bringing IPv6 into your network using pfSense</title>
		<link>http://www.yourwarrantyisvoid.com/2011/12/01/networking-bringing-ipv6-into-your-network-using-pfsense/</link>
		<comments>http://www.yourwarrantyisvoid.com/2011/12/01/networking-bringing-ipv6-into-your-network-using-pfsense/#comments</comments>
		<pubDate>Thu, 01 Dec 2011 23:06:05 +0000</pubDate>
		<dc:creator>firestorm_v1</dc:creator>
				<category><![CDATA[How-To's]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[IPv6]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[pfSense]]></category>
		<category><![CDATA[router]]></category>

		<guid isPermaLink="false">http://www.yourwarrantyisvoid.com/?p=1047</guid>
		<description><![CDATA[The Internet as we know it is undergoing a significant change.  With the last IPv4 addresses being allocated out, the Internet has officially run out of address space.  IPv6 is the next-generation IP addressing system that aims to resolve this issue however the changes proposed are drastically different than the current IP schema currently in [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-1049" title="he-pfsense-ipv6-logo" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/he-pfsense-ipv6-logo.png" alt="Hurricane Electric, PfSense and IPv6" width="497" height="172" />The Internet as we know it is undergoing a significant change.  With the last IPv4 addresses being allocated out, the Internet has officially run out of address space.  IPv6 is the next-generation IP addressing system that aims to resolve this issue however the changes proposed are drastically different than the current IP schema currently in place and for most is quite a daunting task to switch. In this post, we will cover some basic IPv6 information and some fundamental differences between v4 and v6 (aside from tons of IPs), and finally we will build out a pfSense firewall with IPv6 using pfSense and a free IPv6 tunnel provided by Hurricane Electric. Read more to get started on the cutting-edge of Internet infrastructure.<span id="more-1047"></span></p>
<h1>IPv6 Introduction</h1>
<h2>First, the basics&#8230;.</h2>
<p>Understanding IPv6 networking may first come off as an extremely complicated endeavor however it&#8217;s not that much different from IPv4.  The biggest thing about IPv6 is the massive amount of IPs that are made available by the change in the network protocol.  To put it in perspective, the entirety of the existing IPv4 address space consists of approximately 4,228,250,625 addresses (from 0.0.0.0 to 255.255.255.255, or 255^4 including private network blocks and multicast addresses) An IPv6 network block (like the /64 network block that we&#8217;ll get from Hurricane Electric) contains  18,446,744,073,709,551,616 IPs.  The /64 network assigned to us from Hurricane Electric is only a minuscule fraction of the entire IPv6 address space.</p>
<p>An IP address in IPv4 uses four numbers in a dotted quad notation with numbers between 0 and 255, like 192.168.1.4 and will include a subnet mask like 255.255.255.0.  This is used to establish the &#8220;network&#8221; that an IP address is a member of. An IPv6 address is radically different, with 8 hexidecimal (from 0000 to FFF) numbers seperated by a colon (:), then following up with a subnet mask in CIDR notation. An example of an IPv6 address (in this case, ipv6.google.com) is 2001:4860:4002:0802:0000:0000:0000:1010.  Rather than spell all that out, you can use :: to represent one contiguous block of zeros, and leading zeros can be removed.  The formidable example address now becomes slightly less scary 2001:4860:4002:802::1010.  Another example of an IPv6 address in this &#8220;compressed&#8221; notation, would be the IP address for Facebook 2620:0:1cfe:face:b00c::3 (faceb00c, lol). Yet another funny IPv6 address is cisco.com, at 2001:420:80:1:c:15:c0:d06:f00d (c15co, f00d).</p>
<h2>Some differences in IPv4 and IPv6</h2>
<p>The biggest difference in IPv6 from a network standpoint is that it virtually eliminates the requirement for Network Address Translation.  Instead of proxying an IP address for multiple home networks/hosts, your IPv6 network is fully routable, meaning that you can access your home computer from the Internet without the need of using port forwarding or IP masquerading.  While you technically can NAT an IPv6 address, it&#8217;s no longer an absolute requirement for Internet access. Because the Internet can now access your network, it is especially important that your firewall is configured to deny incoming connections from the Internet and explicitly allow connections on an as-needed basis (like running a web server from home, etc..). We will establish a common ruleset later on, once we have completed the IPv6 configuration.</p>
<p>Another significant change in IPv6 is changes made to the DHCP protocol.  Instead of a DHCP server telling a host what the default gateway is for the attached network, the host will instead listen for a router advertisement and will use that in its internal routing table to know how to get to the public Internet.  This router advertisement is handled by radvd which announces the router&#8217;s IP address to the network.</p>
<h2>A few things to consider</h2>
<p>When <a href="http://www.worldipv6day.org/" target="_blank">World IPv6 Test Day</a> was enacted and executed last June, many major websites went online and started offering IPv4 and IPv6 dual stack websites for the purpose of testing the world&#8217;s readiness for IPv6.  Many important things were discovered that day including the fact that most CPE devices (like Linksys routers, DSL and Cable modems and other devices) were not IPv6 compatible.  This was later broadened to include many Internet-connected devices like DVRs, Media machines and other devices were also not ready for IPv6. While some sites maintain IPv6 connectivity, once World IPv6 Test Day closed, so did many sites on IPv6 connectivity.</p>
<p>Before you start out on bringing IPv6 into your network, it is important to understand that IPv6 is still regarded as being an experimental protocol. Most of the sites you are used to won&#8217;t work in a pure IPv6 environment so we are going to set up a dual-stack network.  This means that you will be able to bring in IPv6 connectivity for IPv6 only sites and still be able to access your IPv4 sites just like your network has done in the past.</p>
<p>It is also important to realize that most embedded class devices will not use IPv6.  Devices like embedded media players, game systems, WiFi access points, printers and the like  may not support IPv6 even with firmware updates from the manufacturer.  Some devices may get support later on through vendor updates however many devices will probably not work.</p>
<p>At the very least you will learn a lot about IPv6 deployment, and you will have plenty of time to test your equipment prior to IPv6 becoming mandatory.</p>
<h1>Enough of the theory already, Let&#8217;s get started.</h1>
<p>In order to bring IPv6 into your home, we will be using an IPb6 tunnel provided by Hurricane Electric&#8217;s <a href="http://tunnelbroker.net/" target="_blank">TunnelBroker.net</a> service.  The service is free, and they provide you with a full /64 IPv6 network to play with.  In addition, they provide a certification service to test your IPv6 knowledge and skills once your IPv6 connectivity is up and running.  They give you a series of goals to accomplish even after your tunnel is up and you&#8217;re routing away and plus, it makes for great bragging rights.</p>
<p>In order to pull this off, you&#8217;ll need the following:</p>
<ul>
<li>PfSense 2.0 installed and working at the edge router on your network.<strong></strong></li>
<li>A client computer for testing. ( Windows Xp, Windows Vista, Windows 7, Linux, etc..)</li>
<li>Network switch, etc to make sure your client computer is connected to your router.</li>
<li>A WAN Internet connection.  (DHCP, Static, PPPoE, etc does not matter as long as it&#8217;s broadband)</li>
</ul>
<p><strong>Please Note:</strong> Due to the fact that we are using git to sync experimental code, you <strong>cannot</strong> use pfSense Embedded.  I tried to find a way around this, but unfortunately even at the 4GB disk image size, I was never able to get it to fit and work.</p>
<p>The IPv6 configuration will be split up into six sections:</p>
<ol>
<li>Configuring your existing pfSense router to sync up the latest IPv6 code.</li>
<li>Registering for an IPv6 Tunnel from Hurricane Electric.</li>
<li>Configuring pfSense for the tunnel, and DHCPv6.</li>
<li>Configuring workstations for IPv6.</li>
<li>Performing website testing</li>
</ol>
<h2>1: Sync up the latest IPv6 code</h2>
<p>We&#8217;ll start off with our already established and running pfSense router. We will need to enable SSH on the router so we can get to the commandline.  This will be the only time you will need to access the commandline however I do recommend leaving it enabled so you can troubleshoot the IPv6 connection later on.</p>
<p>Start off by logging into the router.  Click on &#8220;System&#8221;, then &#8220;Advanced&#8221;.  Place a check box next to &#8220;Enable Secure Shell&#8221;.  If you don&#8217;t want to use the standard port of &#8220;22&#8243;, you can specify a different port below.  Scroll down to the bottom and hit &#8220;Save&#8221;.  Don&#8217;t worry about opening up your SSH port, this does not enable it on the WAN interface.</p>
<div id="attachment_1055" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/enablessh.png"><img class="size-medium wp-image-1055 " title="Enabling SSH" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/enablessh-300x196.png" alt="Enabling SSH" width="300" height="196" /></a><p class="wp-caption-text">Enabling SSH in pfSense</p></div>
<p>Open up PuTTY and type in the IP address of your router.  If you specified an SSH port, be sure to specify it here as well.  For reference, here is my PuTTY configuration.</p>
<div id="attachment_1056" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/enablessh2.png"><img class="size-medium wp-image-1056 " title="PuTTY settings" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/enablessh2-300x287.png" alt="PuTTY settings" width="300" height="287" /></a><p class="wp-caption-text">PuTTY settings</p></div>
<p>Upon successful connection, you will be prompted for a username.  Use the same username and password you use for the Web UI (admin/pfsense).  Once you have successfully logged in, you will get the same status screen like you see on the serial port showing the WAN and LAN statuses and a menu.</p>
<div id="attachment_1057" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/sshsession.png"><img class="size-medium wp-image-1057 " title="SSH menu" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/sshsession-300x240.png" alt="SSH menu" width="300" height="240" /></a><p class="wp-caption-text">SSH menu</p></div>
<p>Select option 8 (Shell) and then type in the following command:  <strong>pkg_add -r http://ftp-archive.freebsd.org/pub/FreeBSD-Archive/ports/i386/packages-8.1-release/Latest/git.tbz</strong>  This will install GIT and perform the update.  This will take several minutes to download and install all of the packages required to perform the sync.</p>
<div id="attachment_1058" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/sshsession2.png"><img class="size-medium wp-image-1058 " title="Installing Git" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/sshsession2-300x240.png" alt="Installing Git" width="300" height="240" /></a><p class="wp-caption-text">Installing Git</p></div>
<p>Once it has completed, type in <strong>exit</strong> or hit Ctrl-D to return to the SSH menu. At the SSH menu, type option <strong>12</strong> for the &#8220;pfSense Developer Menu&#8221;.</p>
<div id="attachment_1059" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/sshsession3.png"><img class="size-medium wp-image-1059 " title="Accessing the Developer Shell" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/sshsession3-300x240.png" alt="Accessing the Developer Shell" width="300" height="240" /></a><p class="wp-caption-text">Accessing the Developer Shell</p></div>
<p>Now we will do the GIT sync. It is important to follow these instructions exactly as this is where the current running pfSense code is synched up with the pfSense developer code.    At the pfSense developer shell prompt, type in <strong>playback gitsync</strong> and hit enter.</p>
<div id="attachment_1060" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/sshsession4.png"><img class="size-medium wp-image-1060 " title="Performing the Git sync" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/sshsession4-300x240.png" alt="Performing the Git sync" width="300" height="240" /></a><p class="wp-caption-text">Performing the Git sync</p></div>
<p>You will be prompted for the git branch to sync against.  Type in <strong>master</strong> and hit enter.  The next prompt will be for a custom RCS branch, just hit enter as we want to use the master branch only.  After you hit enter, the GIT Sync will begin.</p>
<div id="attachment_1061" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/sshsession5.png"><img class="size-medium wp-image-1061 " title="Specifying the Git Branch" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/sshsession5-300x240.png" alt="Specifying the Git Branch" width="300" height="240" /></a><p class="wp-caption-text">Specifying the Git Branch</p></div>
<p>Ok, now here&#8217;s the kicker.  <strong><em><span style="text-decoration: underline;">You must reboot!</span></em></strong> In the screenshot below, it looks like the upgrade has terminated and the device has restarted services however there are settings that have been changed that will only take effect on the next reboot.  The SSH Session should drop you back to the main SSH menu (what you saw when you initially logged in).  From here, select option <strong>5</strong> and answer <strong>y</strong> to reboot the device.</p>
<div id="attachment_1062" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/sshsession6.png"><img class="size-medium wp-image-1062 " title="Reboot after your SSH session gets terminated" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/sshsession6-300x240.png" alt="Reboot after your SSH session gets terminated" width="300" height="240" /></a><p class="wp-caption-text">Reboot after your SSH session gets terminated</p></div>
<p>When the router has successfully rebooted, check that your Internet connection works and that all is working well.  The one thing that remains is to set up an ICMP rule to allow Hurricane Electric to ping your WAN interface.  This is required as part of the tunnel setup. Login to your router, click on &#8220;<strong>Firewall</strong>&#8220;, then &#8220;<strong>Rules</strong>&#8220;.  Click the &#8220;+&#8221; add button at the bottom and add a new rule.  Set the interface to <strong>WAN</strong>, protocol to <strong>ICMP</strong>, and ICMP Type to <strong>Any</strong>.  (This can be modified later).  For the source, set the type to &#8220;<strong>Single Host or Alias</strong>&#8221; and enter the IP address of <strong>66.24.2.74</strong>.  This is the IP address of the IPv6 test endpoint.  Set the destination to &#8220;<strong>WAN Address</strong>&#8221; and lastly, enter a description.   Refer to the screenshot below if you need help.</p>
<div id="attachment_1063" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/wanping.png"><img class="size-medium wp-image-1063  " title="WAN Ping rule" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/wanping-300x257.png" alt="WAN Ping rule" width="300" height="257" /></a><p class="wp-caption-text">WAN Ping rule</p></div>
<p>Now that everything is in place in your router, it&#8217;s time to get your tunnel.</p>
<h2>2:Registering with Hurricane Electric</h2>
<p>Now that our router is prepped for the IPv6 installation, it&#8217;s time to register the account with Hurricane Electric.  Head on over to <a title="Hurricane Electric Tunnel Broker" href="http://tunnelbroker.net/" target="_blank">tunnelbroker.net</a> and register an account.  Once you&#8217;ve registered the account, you will get an email with the account information and a validation link.  After you validate, click on the &#8220;Create Regular Tunnel&#8221; on the left hand sidebar and you will be provided a form similar to the one in the screenshot below.  Be sure to select an endpoint that is as geographically close to you as possible or let the tool recommend the closest endpoint.  (Note: Hurricane Electric allows you to create up to five tunnels. If this is your first tunnel, you will not see the &#8220;You currently have 1 of 5 tunnels&#8221; message.)  Type your WAN IP address into the &#8220;IPv4 Endpoint&#8221; field, select the endpoint, then scroll down and hit &#8220;Create Tunnel&#8221;.</p>
<div id="attachment_1067" class="wp-caption aligncenter" style="width: 263px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/hetunnel1.png"><img class="size-medium wp-image-1067 " title="Hurricane Electric Tunnel Setup" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/hetunnel1-253x300.png" alt="Hurricane Electric Tunnel Setup" width="253" height="300" /></a><p class="wp-caption-text">Hurricane Electric Tunnel Setup</p></div>
<p>After your tunnel has been successfully created, you will get a page that shows your tunnel information.  At the bottom of the page, you will notice that the rDNS delegation fields are blank. Click the &#8220;delegate to dns.he.net&#8221; link to autofill the reverse nameservers with Hurricane Electric&#8217;s default nameservers.  Click &#8220;Save&#8221; to commit the changes, then print this page. You will need it for the pfSense page.  Keep in mind that the tunnel IP address and the Routed /64 are off by <strong><span style="text-decoration: underline;">one digit</span></strong>. This will be important later on.</p>
<div id="attachment_1068" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/hetunnel2.png"><img class="size-medium wp-image-1068 " title="Tunnel Information Page" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/hetunnel2-300x286.png" alt="Tunnel Information Page" width="300" height="286" /></a><p class="wp-caption-text">Tunnel Information Page</p></div>
<p>If you are on a dynamic IP connection (DSL, Cable Internet, FiOS, etc&#8230;), there&#8217;s one more thing you need to be aware of.  Should your WAN IP change, you will need to update your tunnel. When you login to Hurricane Electric, you will get a page similar to the below, showing all of the configured tunnels on your account.</p>
<div id="attachment_1069" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/hetunnel3.png"><img class="size-medium wp-image-1069 " title="Tunnel List Page" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/hetunnel3-300x205.png" alt="Tunnel List Page" width="300" height="205" /></a><p class="wp-caption-text">Tunnel List Page</p></div>
<p>To edit the tunnel, click on the tunnel name and you&#8217;ll be taken to the Tunnel Information page.  Click on the Client IPv4 address and make your IP change then simply click elsewhere on the page (not on a link) and wait for the text field to turn back to a link.  If it does not, it will provide an error message indicating the error (usually that it can not ping the WAN).</p>
<div id="attachment_1070" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/hetunnel4.png"><img class="size-medium wp-image-1070 " title="WAN IP Setup Error" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/11/hetunnel4-300x297.png" alt="WAN IP Setup Error" width="300" height="297" /></a><p class="wp-caption-text">WAN IP Setup Error</p></div>
<h2>3: Configuring pfSense</h2>
<h3>Building up our tunnel endpoint</h3>
<p><strong>Note</strong>:  From here on out, I will be using the example IPs of <strong>2001:470:1234:567<span style="text-decoration: underline;">8</span>::</strong> for the IPv6 tunnel and <strong>2001:470:1234:567<span style="text-decoration: underline;">9</span>::</strong> for the Routed /64.  In your tunnelbroker.net configuration, you should have a similar offset (your tunnel is one IP less than your routed netblock).  Please keep this in mind as we go through the next steps as you can not get the two confused.</p>
<p>We have a synched router and we have our tunnel configuration. Now it&#8217;s time to start configuring pfSense.  We will start out by building out the tunnel endpoint. Login to the router and click on <strong>Interfaces &gt; Assign</strong> and click on the <strong>GIF</strong> tab.  We will be adding a GIF tunnel in order to bring in the IPv6 connectivity to our router. GIF uses <a href="http://www.ietf.org/rfc/rfc2893.txt" target="_blank">RFC2893</a> to encapsulate IPv6 into an IPv4 packet.  When we receive an encapsulated packet, pfSense will &#8220;unpack&#8221; it and reassemble it into an IPv6 packet before acting on it according to the firewall policy.  On the GIF tab, click the &#8220;<strong>+</strong>&#8221; link and enter your IPv6 tunnel endpoint information.</p>
<ul>
<li>Parent Interface should be set to WAN</li>
<li>GIF Remote Address should be the &#8220;Server IPv4 address&#8221;</li>
<li>GIF Tunnel Local Address should be the &#8220;Client IPv6 address&#8221;</li>
<li>GIF Tunnel Remote Address should be the &#8220;Server IPv6 address&#8221;</li>
<li>Description should be something descriptive but can be freeform.</li>
</ul>
<div id="attachment_1076" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/pfsense1.png"><img class="size-medium wp-image-1076" title="GIF interface page" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/pfsense1-300x167.png" alt="GIF interface page" width="300" height="167" /></a><p class="wp-caption-text">GIF interface page</p></div>
<p>Once complete, hit &#8220;Save&#8221;. This will add the tunnel endpoint to the router. Click on <strong>Interface Assignments</strong> so we can assign it to a virtual interface.  To do this, click on the &#8220;<strong>+</strong>&#8221; icon and the GIF tunnel should show up as an OPT interface as shown in the screenshot below.</p>
<div id="attachment_1077" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/pfsense2.png"><img class="size-medium wp-image-1077" title="Interfaces page" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/pfsense2-300x124.png" alt="Interfaces page" width="300" height="124" /></a><p class="wp-caption-text">Interfaces page</p></div>
<p>Now we need to configure the OPT interface. Click on <strong>Interfaces &gt; OPT1</strong>.  This will be the equivalent to the &#8220;WAN&#8221; of our IPv6 network.  Since it has never been used before, it is disabled by default. Place a checkbox next to &#8220;<strong>Enable Interface</strong>&#8221; which will add the IPv6 configuration section shown here. Set the <strong></strong></p>
<p>Click on the text &#8220;<strong>Add a new one</strong>&#8221; in the Gateway section and enter the configuration as shown.</p>
<ul>
<li>Default v6 Gateway should be <strong>Checked</strong>.</li>
<li>Gateway Name IPV6 is a brief one-word name to help you identify the gateway.  I have chosen &#8220;IPV6GW&#8221;.</li>
<li>Gateway IPv6 should be the <strong>Server IPv6 Address</strong>.</li>
<li>Description is an arbitrary length text to describe this gateway definition.</li>
</ul>
<p>When you&#8217;re done, you should have something similar to what is in the below screenshot.  For some reason, the gateway text showed up very small, so I increased the zoom so it was readable.</p>
<div id="attachment_1078" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/pfsense3.png"><img class="size-medium wp-image-1078" title="IPV6WAN setup" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/pfsense3-300x288.png" alt="IPV6WAN setup" width="300" height="288" /></a><p class="wp-caption-text">IPV6WAN setup</p></div>
<p>Click on &#8220;<strong>Save Gateway</strong>&#8221; first to commit the gateway information. You should see te IPv6 gateway show up in a dropdown.  Next, scroll down and click &#8220;<strong>Save</strong>&#8221; to save the Interface information.  Finally, click &#8220;<strong>Apply Changes</strong>&#8221; to apply the interface configuration and start the tunnel.  You can validate the tunnel&#8217;s operation by checking the dashboard (click on the pfSense logo).  If you don&#8217;t have the Interfaces and the Gateways windows, they can be added by clicking on the &#8220;<strong>+</strong>&#8220;  and selecting the relevant options.</p>
<div id="attachment_1079" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/pfsense4.png"><img class="size-medium wp-image-1079" title="Dashboard status page" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/pfsense4-300x228.png" alt="Dashboard status page" width="300" height="228" /></a><p class="wp-caption-text">Dashboard status page</p></div>
<p>Now that the endpoint is up and running, it&#8217;s time to configure the LAN interface.</p>
<h3>Setting up the LAN interface</h3>
<p>Since we&#8217;re running in a dual-stack configuration, we are going to just add the IPv6 information to the existing IPv4 interface.  As an option, you could theoretically set up a VLAN and a new LAN interface and create an IPv6 only network.  This is something I&#8217;m planning on my network and something I&#8217;m sure I&#8217;ll cover in another article. Let&#8217;s start off by pulling up the LAN configuration via <strong>Interfaces &gt; LAN</strong>.</p>
<p>First thing to do is set the <strong>IPv6 Configuration Type</strong> to <strong>Static IPv6</strong>. This will show the IPv6 configuration section.  Enter the first IP address in the Routed /64 section from the tunnel information.  When complete, you should have something like the screenshot below.  Scroll down and hit <strong>Save</strong> to write the settings, then <strong>Apply</strong> to make the new settings active.</p>
<div id="attachment_1080" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/pfsense5.png"><img class="size-medium wp-image-1080" title="LAN configuration page" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/pfsense5-300x279.png" alt="LAN configuration page" width="300" height="279" /></a><p class="wp-caption-text">LAN configuration page</p></div>
<h3>Setting up DHCPv6</h3>
<p>In order to bring the IPv6 configuration to your workstations, we will set up DHCPv6.  This is entirely optional as right now you could go ahead and set up static IPv6 addresses just as well as using DHCP however rather than typing insanely larger addresses into all of your workstations, it&#8217;s easier and faster to set up DHCPv6 and let the client OSes pull the DHCPv6 as needed.  To get started, click on <strong>Services &gt; DHCPv6 Server</strong> and then on the <strong>LAN</strong> tab.</p>
<ul>
<li>Set the <strong>Router Advertisements</strong> to <strong>Assisted</strong>.  This controls the radvd daemon mentioned earlier.  By setting the mode to &#8220;Assisted&#8221;, you are telling radvd to perform router advertisements on the local network. The radvd broadcasts are used by the DHCP client applications to set the default router.</li>
<li>Place a check next to <strong>Enable the DHCPv6 server on the LAN interface</strong>.</li>
<li>Enter the desired start and end addresses for your network DHCP range. Please note that unlike the &#8220;short notation&#8221; using the double colon, you must explicitly declare the zeroes for all octets.  In my example, I&#8217;m using 2001:470:1234:5679:0:0:0:100 as my start point and 2001:470:1234:5679:0:0:0:200 as my end point, allocating 256 addresses to DHCP (remember, IPv6 addresses are hexidecimal.)</li>
<li>Enter the Anycasted IPv6 DNS server from the Hurricane Electric tunnel configuration into the DNS server field.</li>
</ul>
<div id="attachment_1081" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/pfsense6.png"><img class="size-medium wp-image-1081" title="DHCPv6 configuration" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/pfsense6-300x282.png" alt="DHCPv6 configuration" width="300" height="282" /></a><p class="wp-caption-text">DHCPv6 configuration</p></div>
<h3>Configure some Firewall rules</h3>
<p>At this point, we have the router configured however without some firewall rules in place, we will not be able to route out or get a DHCP address. We will need to add a rule so that our IPv6 traffic can get out.  Click on <strong>Firewall -&gt; Rules</strong> then click on the <strong>LAN</strong> tab.  We are going to duplicate the outbound rule created for the LAN outbound.   In the rule listing, click on the &#8220;<strong>+</strong>&#8221; icon to the right of the IPv4 outbound rule and change the protocol from IPv4 to IPv6.  Once done, hit <strong>Save</strong> then <strong>Apply</strong>.  When you&#8217;re done, your LAN rules should look like the below.</p>
<div id="attachment_1082" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/pfsense7.png"><img class="size-medium wp-image-1082" title="Duplicated Firewall rules" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/pfsense7-300x109.png" alt="Duplicated Firewall rules" width="300" height="109" /></a><p class="wp-caption-text">Duplicated Firewall rules</p></div>
<h2> 4: Configure your workstations</h2>
<p>After you get the router configured, it&#8217;s time to set up a workstation.  For this test, I used a Linux box and a Windows 7 workstation.  For Windows, all that is needed is to make sure that the NIC has IPv6 support bound to it.  To do this, go to the Network and Sharing Center and click on the &#8220;Adapter Settings&#8221; on the left hand sidebar.  Right click the adapter and go to Properties.  Make sure that IPv6 is listed and checked as shown below:</p>
<div id="attachment_1085" class="wp-caption aligncenter" style="width: 248px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/ipv6nic.png"><img class="size-medium wp-image-1085" title="Windows 7 Network protocols list" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/ipv6nic-238x300.png" alt="Windows 7 Network protocols list" width="238" height="300" /></a><p class="wp-caption-text">Windows 7 Network protocols list</p></div>
<p>To test that it&#8217;s working properly, open up a command prompt and check to see that ipconfig is showing the proper IP address.  Disregard any fe80:: addresses as these are link-local and not routable for our purposes. Your output should look something similar to my output below:</p>
<div id="attachment_1086" class="wp-caption aligncenter" style="width: 289px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/ipconfig.png"><img class="size-medium wp-image-1086" title="Windows 7 ipconfig" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/ipconfig-279x300.png" alt="Windows 7 ipconfig" width="279" height="300" /></a><p class="wp-caption-text">Windows 7 ipconfig</p></div>
<p>In Linux, the setup is even easier.   Most Linux operating systems already have IPv6 enabled, so it&#8217;s just a matter of pulling an IP address.  Run <strong>sudo dhclient -6 -v {interface}</strong> where {interface} is your network interface.  In my output below, I am using wlan0.  The <strong>-v</strong> parameter is optional, this is only to show what dhclient is doing and that it picked up the address from pfSense.</p>
<div id="attachment_1088" class="wp-caption aligncenter" style="width: 217px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/Screenshot-Terminal.png"><img class="size-medium wp-image-1088" title="Linux dhcpcd output" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/Screenshot-Terminal-207x300.png" alt="Linux dhcpcd output" width="207" height="300" /></a><p class="wp-caption-text">Linux dhcpcd output</p></div>
<p>This next screenshot shows <strong>ifconfig</strong> with three IP addresses: One IPv4 address, one link local IPv6 address and the routeable IPv6 address.</p>
<div id="attachment_1089" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/Screenshot-Terminal-1.png"><img class="size-medium wp-image-1089" title="Linux ifconfig output" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/Screenshot-Terminal-1-300x131.png" alt="Linux ifconfig output" width="300" height="131" /></a><p class="wp-caption-text">Linux ifconfig output</p></div>
<p>If you want to make the IPv6 settings permanent, you can set this information in Network Manager.  Edit your existing network connection, click on <strong>IPv6 Network</strong>, set the &#8220;Method&#8221; dropdown to <strong>Automatic</strong> and hit <strong>Save</strong>.  I didn&#8217;t provide screenshots on this because it depends on the network type and connection name and it ended up being way more complex than necessary.  IPv6 connectivity should work on both wired and wireless Ethernet adapters.</p>
<h2>5: Time to test!</h2>
<p>There are several sites that are available that allow IPv6 testing and IPv6/v4 dual-stack testing. My favorite is <a href="http://test-ipv6.net" target="_blank">http://test-ipv6.net</a>.  The site does IPv6 and IPv4 dual stack testing and ensures that you are able to connect to IPv6 and IPv4 sites.  There is also test surfing to <a href="http://ipv6.google.com" target="_blank">http://ipv6.google.com</a> which is an IPv6 only site.   If all goes well, you should receive output like the below:</p>
<div id="attachment_1090" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/testipv6com.png"><img class="size-medium wp-image-1090" title="Test-ipv6.com test results" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/12/testipv6com-300x159.png" alt="Test-ipv6.com test results" width="300" height="159" /></a><p class="wp-caption-text">Test-ipv6.com test results</p></div>
<h1>So, what now?</h1>
<p>With IPv6 properly working on your network, you are good to go however there&#8217;s probably not much to look at.  Most of the sites I tested were IPv4 only and the few IPv6 sites I could find were mostly broken.    From a consumer-side standpoint, you will notice no difference in the operation of websites.  From a server standpoint, each IP address is routeable meaning that each and every IP in your netblock can run web-accessible services.  The thing now is to pay close attention to your firewall.</p>
<p><strong>Remember that all IPs are routeable!</strong>  Prior to this setup, your router implicitly &#8220;protected&#8221; your LAN by using network address translation. By default, the router would allow LAN connections to exit the router but any unsolicited connection from the Internet could not access the LAN workstations due to how NAT works.  We used port forwarding to allow outside Internet computers inside to access local services.  IPv6 has no such requirement and all IPv6 addresses are public.  You need to make sure that your router&#8217;s firewall is set up properly and only allows incoming connections to IPs as needed by your network.  Our firewall configuration is set up with a default deny policy with an explicit LAN outbound rule.  This means that inside IPv6 addresses can surf the Internet uninhibited but any unsolicited connection from the Internet is automatically blocked.</p>
<p><strong>Test your network devices!</strong> Test all of your devices, from your computers to your smartphones, printers and anything else that plugs into the network.  You&#8217;ll get a quick idea of what works on IPv6 and what doesn&#8217;t. You&#8217;ll also have a good idea of which manufacturers and what devices to look for firmware updates in order to get ready for when IPv6 goes live.</p>
<p>For further things to do with your tunnel, take a look at Hurricane Electric&#8217;s IPv6 certification test.  The IPv6 certification test will test your knowledge of IPv6 and setting up various services on an IPv6 server including email and a Web server.  It&#8217;s a good idea to give it a shot so you can get experience working with the new IPv6 network.</p>
<p>Hopefully all went well in your IPv6 configuration and you&#8217;re up and running. If not, post a reply and I&#8217;ll try my best to help out.</p>
<p>Happy Hacking!<br />
FIRESTORM_v1</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yourwarrantyisvoid.com/2011/12/01/networking-bringing-ipv6-into-your-network-using-pfsense/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Networking: Installing and configuring pfSense Embedded</title>
		<link>http://www.yourwarrantyisvoid.com/2011/11/11/networking-installing-and-configuring-pfsense-embedded/</link>
		<comments>http://www.yourwarrantyisvoid.com/2011/11/11/networking-installing-and-configuring-pfsense-embedded/#comments</comments>
		<pubDate>Sat, 12 Nov 2011 02:54:03 +0000</pubDate>
		<dc:creator>firestorm_v1</dc:creator>
				<category><![CDATA[Embedded devices]]></category>
		<category><![CDATA[How-To's]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[pfSense]]></category>
		<category><![CDATA[router]]></category>

		<guid isPermaLink="false">http://www.yourwarrantyisvoid.com/?p=969</guid>
		<description><![CDATA[After publishing the last post on networking and the security series, I felt it was necessary to go ahead and publish a piece on building a custom router.  I have been a fan of pfSense for the past four years and swear by it. It has the ease of use of a commercial GUI-driven router [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-970" title="pfSense Logo" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/pfsenselogo.png" alt="pfSense Logo" width="300" height="110" /></p>
<p>After publishing the last post on networking and the security series, I felt it was necessary to go ahead and publish a piece on building a custom router.  I have been a fan of pfSense for the past four years and swear by it. It has the ease of use of a commercial GUI-driven router and unrivaled flexibility limited only by the hardware it is installed on.  In this howto article, we will cover installing pfSense on an embedded platform and initial configuration for getting your router up and running.</p>
<p><span id="more-969"></span></p>
<h3>First, an introduction to pfSense</h3>
<p>PfSense is a lightweight FreeBSD based distribution geared towards router and firewall installations. It has been around since 2004 when it was forked from the m0n0wall project and has since turned into an excellent stand-alone distribution for routing and firewalling.  Although pfSense is generally intended towards full-PC installations, they offer an embedded image for use without skimping on the features.  pfSense is well known in the Linux/Unix/BSD community and is very highly regarded for both it&#8217;s feature set and it&#8217;s flexibility.</p>
<p>A question I get asked a lot is &#8220;Why pfSense? Why not just buy a Linksys?&#8221;  The answer is about hardware and software.  While I do own a couple of Linksys routers and do admire Linksys for bringing NAT devices to the common user, their hardware is restrictive and is only usable in the standard configuration (1 WAN and 4 LAN/WIFI) Even though it has been proven several times that the hardware they use for the LAN portion can support advanced features like VLAN support, bridging, multiple interfaces/IP&#8217;s, they will never release this functionality to those that want it and will instead force the advanced user to look elsewhere. In Linksys&#8217;s view, the router dictates the network.  With pfSense, I can build a custom configuration however I deem fit, with multiple NICs for WAN and LAN, with custom configurations and with VLAN support.  Not to mention that &#8220;stock&#8221; pfSense even supports DHCP, Captive Portal (like &#8220;free wifi&#8221;) , DNS, VPN support, Fail Over mode and many other options that Linksys wouldn&#8217;t ever make available.  Even if I never use VPN support or use the Failover mode, it&#8217;s nice to know those features are there should I ever need them.</p>
<h3>Hardware Requirements:</h3>
<p>In order to use pfSense Embedded, you will need a computer that adheres to the below spec.  Of course more is better, but these are the minimum specs as posted on the pfSense website.</p>
<ul>
<li>CPU: 100MHZ x86 Pentium or equivalent.</li>
<li>RAM: 128 MB RAM</li>
<li>Serial Port</li>
<li>512MB Flash storage or 1GB hard drive</li>
<li>Two Network Adapters (NICs)</li>
</ul>
<p>Please note that some of the advanced features like VPN support, Captive Portal and some high-bandwidth connections may require faster processors than what is outlined below.  If you want to make sure your embedded platform matches spec, take a look at <a href="http://www.pfsense.org/index.php?option=com_content&amp;task=view&amp;id=52&amp;Itemid=49">pfSense&#8217;s hardware sizing guid</a>e which covers some of the items more in depth.</p>
<h3>A note on storage:</h3>
<p>The pfSense distribution comes in two flavors.  You have the &#8220;desktop PC&#8221; version for full-size computers with a CD ROM and a hard drive, and you have an &#8220;embedded&#8221; version which is for devices without a CDROM or hard drive and use some method of flash storage.  While you may be able to install the desktop PC version on the embedded device, it is not recommended as the distribution will be tailored for running on a hard drive, not a solid state memory device.  If you intend to use a hard drive, install the PC version.</p>
<p>You can use any IDE device for storage as long as it is recognized by your computer&#8217;s BIOS and is supported by FreeBSD.  I have not had a problem with either of these two stipulations, so you should not have any problems with it. One thing to consider is the use of an IDE to CF adapter <a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16822998003">like this one on Newegg</a>.  This particular device fits right into the IDE header on the motherboard and allows you to use a Compact Flash cartridge as an IDE hard drive which is perfect for installing and running pfSense.  The router in my home is a slightly different model, but is running on a Sandisk 4GB CF cartridge and has been doing so for the last two years without fail.</p>
<h3>My hardware:</h3>
<p>In this howto, I will be using a Transcend 1GB IDE solid-state device that I got on Ebay. This device plugs into the 40 pin IDE header and mimics a standard hard drive.  It is fast and will definitely get the job done.  The hardware I will be using is a set top box device I scavenged from a computer show a long time ago.  It has a 233MHz Cyrix processor , 512MB RAM, an onboard serial port, an IDE port, an onboard NIC and a single PCI riser slot where I will be installing a dual 10/100 Intel NIC.</p>
<h3>Getting Started:</h3>
<p>If you are using the CF to IDE adapter mentioned earlier, you can use a USB-CF reader and an application to burn the image to the CF cartridge.</p>
<p>In order to proceed, you will need the following items</p>
<ul>
<li>A Linux based computer with one free IDE port</li>
<li>An IDE-CF adapter with an appropriately sized CF card minimum 512MB, recommended 1GB, referred hereafter as flash cartridge.</li>
<li>The &#8220;target system&#8221; that will ultimately run pfSense with at least two NICs.</li>
<li>A third NIC (optional, for guest network, discussed in the &#8220;Advanced&#8221; section below).</li>
<li>A serial cable (Female to Female) and a Null Modem Adapter.</li>
<li>A pocket switch with a small patch cord.</li>
</ul>
<h3>Identify your Flash device</h3>
<p>First, attach your flash cartridge to your Linux PC and boot it.  Make sure that it boots your Linux distribution first and does not attempt to boot from the flash cartridge.  Once booted, login as root and run <strong>dmesg</strong>. Look for the /dev entry for your flash module.  You may be able to look for the manufacturer name as is the case in my output below:</p>
<div id="attachment_971" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/IDEhd.gif"><img class="size-medium wp-image-971 " title="IDE HDA dmesg output" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/IDEhd-300x128.gif" alt="My Transcend module is listed as hda" width="300" height="128" /></a><p class="wp-caption-text">My dmesg output.</p></div>
<p>In the output above, my Transcend module was recognized as hda (primary master HD), so my /dev entry is /dev/hda.  We will need this later on to burn the image.</p>
<h3>Download, validate, burn:</h3>
<p>Now that we know what device we need to burn to, it&#8217;s time to get the image.  Head on over to <a href="http://www.pfsense.org/mirror.php?section=downloads">the pfSense Mirror selection page</a> and pick a server that&#8217;s closest to you.</p>
<p>You should then be presented with a list of images named <strong>pfSense-1.2.3-RELEASE-XXXX-nanobsd.img.gz</strong> where XXXX is a choice of 512mb, 1g, 2g and 4g images.  In my particular case, I will be using pfSense-1.2.3-RELEASE-1g-nanobsd.img.gz as it is pre-built to a 1gig flash cartridge.</p>
<p>Use <strong>wget</strong> to download the image along with the accompanying .md5 file as shown in the sample output below. Note: URLs in the below image may differ depending on the mirror you are using, but the filenames will be the same.</p>
<div id="attachment_973" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wget.gif"><img class="size-medium wp-image-973 " title="wget download of files" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wget-300x153.gif" alt="wget download of files" width="300" height="153" /></a><p class="wp-caption-text">wget download of files</p></div>
<p>Once both files have downloaded, use <strong>md5sum -c </strong>to check the file for consistency against the provided md5 checksum as shown in the sample output below.</p>
<div id="attachment_974" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/md5sum.gif"><img class="size-medium wp-image-974 " title="md5sum validation" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/md5sum-300x153.gif" alt="md5sum validation" width="300" height="153" /></a><p class="wp-caption-text">md5sum validation</p></div>
<p>If the MD5 check returns <strong>OK</strong> then you are clear to proceed. If not, go back and re-download the file again. Make sure you downloaded the same file and md5 checksum.  In order to burn it, we will use <strong>zcat</strong> to cat the zipped image out to the /dev entry mentioned earlier.  My syntax will be <strong>zcat pfSense-1.2.3-RELEASE-1g-nanobsd.img.gz | dd of=/dev/hda bs=16k</strong>however, if your flash cartridge shows up at another location other than /dev/hda, be sure that you change the command above to point to the proper device.  Once the command completes, it should look like this:</p>
<div id="attachment_975" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/burncomplete.gif"><img class="size-medium wp-image-975 " title="Image Burn Completed" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/burncomplete-300x153.gif" alt="Image Burn Completed" width="300" height="153" /></a><p class="wp-caption-text">Image Burn Completed</p></div>
<p>Now that the image burn is done, shutdown the Linux box and pull your flash cartridge out and install it in the device that is going to run pfSense.  Go ahead and connect it up but do not attach any network cables to the interfaces just yet.  You will also need to connect the serial cable with a null modem adapter to the device to continue initial setup.</p>
<h3>Initial Configuration and Setup</h3>
<p>Now that we&#8217;ve burned the image, we are ready to do the initial setup.  This entails doing some NIC probing to find the network adapters in the system and to assign them to their respective duties (WAN, LAN, Optional Interface 1, etc).  You should only ever need to do this once as once the NICs are set up and the router is running, you can do everything including re-assign the interfaces from the web-based GUI.</p>
<p>Open up PuTTY, Hypertrm or your favorite terminal application and set the serial port parameters to 9600 baud, no parity 8 data bits, 1 stop bit.  Turn on the embedded device and after a moment, you should see some BSD boot stuff flash past.  Wait until it prompts you to set up VLAN information as shown below:</p>
<div id="attachment_976" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/vlaninfo.gif"><img class="size-medium wp-image-976 " title="Vlan Setup prompt" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/vlaninfo-300x167.gif" alt="Vlan Setup Prompt" width="300" height="167" /></a><p class="wp-caption-text">Vlan Setup Prompt</p></div>
<p>If you are lucky, you should see two interfaces, one for each NIC.  If you have three network cards in your system, you will see three different interfaces.  In the above screenshot, I have em0, em1 and fxp0.  Since we will not use VLANs for our basic or our advanced configurations, we will answer &#8220;N&#8221; here.</p>
<p>Now, we will do some network probing to figure out exactly which NIC  goes to which interface using the pocket switch and the patch cord.  Don&#8217;t plug anything in yet.</p>
<div id="attachment_977" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/probelan.gif"><img class="size-medium wp-image-977 " title="Probe for LAN interface" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/probelan-300x167.gif" alt="Probe for LAN interface" width="300" height="167" /></a><p class="wp-caption-text">Probe for LAN interface</p></div>
<p>With nothing plugged into the network interfaces, hit a and hit enter.  This will start the autodetection process. When prompted, attach the pocket switch to the interface you will use as the LAN interface and make sure that the LINK light on the switch and the NIC come on.  Hit Enter and you should see a message where it detected the LAN interface link come up.  It will then prompt you for the WAN interface.  Hit a then enter again and move the patch cord to the WAN interface and hit enter.  Repeat this process for the Optional interface (OPT1) or if your router only has two NICs, just hit enter.  Refer to the below output.</p>
<div id="attachment_978" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/assignednics.gif"><img class="size-medium wp-image-978 " title="Assigned NICs" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/assignednics-300x167.gif" alt="Assigned NICs" width="300" height="167" /></a><p class="wp-caption-text">Assigned NICs</p></div>
<p>Be sure that you only change the patch cord when it tells you to.  If you disconnect the cable at the &#8220;hit A for autodetect&#8221; prompt, it may not detect link when it should.  If you run into this issue, disconnect the patch cord and restart your router.  Allow it to boot up and start over.  Once you get done assigning interfaces, simply hit Enter to exit assignment.  It will print the current assignments of the interfaces and ask you to validate.  Answer Y if the displayed assignments are correct and hit Enter, otherwise hit N and start over or restart the device.</p>
<p>Assuming all went well, you will see it do a bunch of additional configuration.  Once you get to the menu as shown below, you can then disconnect the serial cable and proceed with the configuration of the pfSense router.</p>
<div id="attachment_979" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/configdone.gif"><img class="size-medium wp-image-979" title="Configuration completed" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/configdone-300x167.gif" alt="Configuration Completed." width="300" height="167" /></a><p class="wp-caption-text">Configuration Completed</p></div>
<p>&nbsp;</p>
<h3>Continuing the Configuration</h3>
<p>Connect the pocket switch up to the LAN port of the router and connect your router&#8217;s WAN port to your Internet connection.  Connect a computer to an unused port on the pocket switch and start it up. Once booted, you should have an IP address in the 192.168.1.x subnet and depending on whether or not your Internet connection is DHCP, you may already be able to surf.</p>
<p>Open a browser and go to http://192.168.1.1 and when prompted login with the username of <strong>admin</strong> and the password of <strong>pfsense</strong>.  If all goes well, you should see a screen that looks like the one below.</p>
<p>&nbsp;</p>
<div id="attachment_982" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wizard.gif"><img class="size-medium wp-image-982" title="pfSense Wizard" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wizard-300x181.gif" alt="pfSense Wizard" width="300" height="181" /></a><p class="wp-caption-text">pfSense Wizard</p></div>
<p>&nbsp;</p>
<p>Click &#8220;Next&#8221;</p>
<p>On this screen, you will set some basic network configuration parameters like the pfSense&#8217;s hostname, local domain and the two DNS servers.  Use the ISP provided DNS servers here and click Next.</p>
<p>&nbsp;</p>
<div id="attachment_983" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wizard2.gif"><img class="size-medium wp-image-983" title="pfSense Wizard, page 2" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wizard2-300x181.gif" alt="pfSense Wizard, page 2" width="300" height="181" /></a><p class="wp-caption-text">pfSense Wizard, page 2</p></div>
<p>&nbsp;</p>
<p>On this screen, we will set up the timeserver and the timezone of the firewall.  Set the timezone where appropriate and then either use the provided time server or set your own.  I left it default and have not noticed any issues with time reporting.</p>
<p>&nbsp;</p>
<div id="attachment_984" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wizard3.gif"><img class="size-medium wp-image-984" title="pfSense Wizard, page 3" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wizard3-300x181.gif" alt="pfSense Wizard, page 3" width="300" height="181" /></a><p class="wp-caption-text">pfSense Wizard, page 3</p></div>
<p>&nbsp;</p>
<p>The next screen is where we will set up the WAN parameters.  Start off with selecting which type of WAN link you have.  Choices are DHCP (default),  Static IP, PPPoE and PPTP.  For each selection, there is a relevant section that must be completed.  Since I use DHCP, I left it as default.</p>
<p>&nbsp;</p>
<div id="attachment_985" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wizard4.gif"><img class="size-medium wp-image-985" title="pfSense Wizard, page 4" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wizard4-300x181.gif" alt="pfSense Wizard, page 4" width="300" height="181" /></a><p class="wp-caption-text">pfSense Wizard, page 4</p></div>
<p>&nbsp;</p>
<p>Pay special attention to the bottom two options.  The first option &#8220;Block RFC1918 networks&#8221; prevents LAN IP addresses from the &#8220;private&#8221; networks from entering from the WAN interface. Private networks are 10.0.0.0/8, 172.16.0.0/12 and 192.168.0.0/16.  Unless you are using this router inside another NAT environment, this option is best left turned on.</p>
<p>The other option &#8220;Block Bogon Networks&#8221; should be left enabled. This prevents non-routed and not-assigned networks from being routed against from your WAN interface. Since these addresses are not routed and not assigned, they should never contact your router anyways.</p>
<p>&nbsp;</p>
<div id="attachment_986" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wizard5.gif"><img class="size-medium wp-image-986" title="pfSense Wizard, page 5" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wizard5-300x181.gif" alt="pfSense Wizard, page 5" width="300" height="181" /></a><p class="wp-caption-text">pfSense Wizard, page4, Bogon networks and RFC1918 options</p></div>
<p>&nbsp;</p>
<p>Now we are at the LAN configuration.  This is where we can change the router&#8217;s internal IP address and subnet mask.  Please note that most of pfSense uses CIDR notation, so you may want to get familiar with it or have a <a href="http://www.subnet-calculator.com/cidr.php" target="_blank">CIDR calculator</a> at the ready.<strong><em></em></strong> Tip: a /24 is the same as 255.255.255.0</p>
<p>&nbsp;</p>
<div id="attachment_987" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wizard6.gif"><img class="size-medium wp-image-987" title="pfSense Wizard, page 5" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wizard6-300x181.gif" alt="pfSense Wizard, page 5" width="300" height="181" /></a><p class="wp-caption-text">pfSense Wizard, page 5</p></div>
<p>&nbsp;</p>
<p>This screen allows us to change the default password of <strong>pfsense</strong>.  I highly recommend changing it to something memorable.  If you forget it, you can always reset it via a serial connection without resetting the router back to factory settings.</p>
<p>&nbsp;</p>
<div id="attachment_988" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wizard7.gif"><img class="size-medium wp-image-988" title="pfSense Wizard, page 6" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wizard7-300x181.gif" alt="pfSense Wizard, page 6" width="300" height="181" /></a><p class="wp-caption-text">pfSense Wizard, page 6</p></div>
<p>&nbsp;</p>
<p>Finally we have reached the end of the wizard.  Click &#8220;Reload&#8221; and wait a few minutes.  During this time, the router will reboot itself to get adjusted into the new environment.  Let the web page reload the router&#8217;s admin page and it should take you to a configuration page like the one below.</p>
<p>&nbsp;</p>
<div id="attachment_989" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/status.gif"><img class="size-medium wp-image-989" title="pfSense main status page" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/status-300x181.gif" alt="pfSense main status page" width="300" height="181" /></a><p class="wp-caption-text">pfSense main status page</p></div>
<p>&nbsp;</p>
<p>Once you are at this screen, you should be able to browse the Internet.</p>
<h3>Some basic tips:</h3>
<ul>
<li>Portforwarding can be set up under Firewall -&gt; NAT and works pretty much like you would expect a Linksys box to work.  Be sure to leave the &#8220;Auto Add a firewall rule to permit traffic through this NAT rule&#8221; at the bottom checked.  This will create a matching rule on the WAN side to allow traffic along with the rule to bring the traffic from the WAN to your destination computer.</li>
<li>You can see each interface&#8217;s status by going to Status -&gt; Interfaces.  If you are on a PPPoE or PPTP connection, you can disconnect and reconnect from this page.  If you are using DHCP, you can also release and renew your IP here.</li>
<li>If you run into trouble performing port forwarding, you can access the system firewall logs via Status -&gt; System Logs.  Be sure to turn on Logging on your rules so you can see new connections as they are being performed.</li>
<li>If you&#8217;re having problems with a specific host, you can access a packet capture utility via Diagnostics -&gt; Packet Capture</li>
<li>If you want to diagnose upstream Internet connectivity issues, you can access Traceroute via Diagnostics -&gt; Traceroute. and a ping utility via Diagnostics -&gt; Ping</li>
<li>Like numbers and graphs? Check out the system traffic graph (Status-&gt; Traffic Graph) and the system RRD graph (Status -&gt; RRD Graphs).  You may need to install the Adobe SVG viewer to view these graphs.</li>
<li>Unlike a Linksys box, it is recommended to halt the router before powering down and use the reboot function if a restart is needed.  Both options appear under Diagnostics with the labels &#8220;Halt system&#8221; and &#8220;Reboot system&#8221; respectively.</li>
</ul>
<h3>What&#8217;s next?</h3>
<p>Even in its basic configuration you already have a very powerful router on your hands.  The sky&#8217;s the limit. The pfSense installation can support a great many different configurations and options so don&#8217;t think that you&#8217;re locked into a single configuration.  Out of the box, pfSense has the software support for DHCP, DNS server, and other basic functionality as well as more things like CARP Failover, Open NTPD (Time server), OpenVPN, Remote Syslog, Traffic aggregation, and many other features that warrant exploration.</p>
<p>In a follow up article, I will explore setting up an advanced configuration, establishing a VLAN to isolate a wireless network from the wired network while still providing Internet access.  This is a useful configuration for you that like to share your Internet access but don&#8217;t want to make your home network vulnerable.</p>
<p>Happy Hacking!</p>
<p>FIRESTORM_v1</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yourwarrantyisvoid.com/2011/11/11/networking-installing-and-configuring-pfsense-embedded/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Reviews: Sparkfun Inventor&#8217;s Kit at Mircocenter</title>
		<link>http://www.yourwarrantyisvoid.com/2011/09/09/reviews-sparkfun-inventors-kit-at-mircocenter/</link>
		<comments>http://www.yourwarrantyisvoid.com/2011/09/09/reviews-sparkfun-inventors-kit-at-mircocenter/#comments</comments>
		<pubDate>Sat, 10 Sep 2011 00:07:25 +0000</pubDate>
		<dc:creator>firestorm_v1</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Microcontrollers]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[microcontroller]]></category>
		<category><![CDATA[parts]]></category>

		<guid isPermaLink="false">http://www.yourwarrantyisvoid.com/?p=1012</guid>
		<description><![CDATA[After reading this post on Hack-a-day, I went to the local MicroCenter to see what all they had to offer in a brick-and-mortar store.  I remember when Parallax and RadioShack had joined together and while the new availability had made it easier to get started with microcontrollers, the most common expression recalled is one of [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_1013" class="wp-caption aligncenter" style="width: 198px"><img class="size-full wp-image-1013" title="Sparkfun logo" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/09/sparkfun.gif" alt="Sparkfun logo" width="188" height="105" /><p class="wp-caption-text">Sparkfun at Microcenter!</p></div>
<p>After reading <a href="http://hackaday.com/2011/09/07/need-something-in-a-pinch-sparkfun-products-now-at-micro-center/" target="_blank">this post on Hack-a-day</a>, I went to the local MicroCenter to see what all they had to offer in a brick-and-mortar store.  I remember when Parallax and RadioShack had joined together and while the new availability had made it easier to get started with microcontrollers, the most common expression recalled is one of sadness at the general disarray of the parts cabinets.  Thankfully Microcenter seems to have done Sparkfun right.  Read on for my initial impressions of Microcenter&#8217;s offerings and a full review of my first Arduino kit, the Sparkfun Inventor&#8217;s Kit.<span id="more-1012"></span></p>
<p>If you are interested solely in the review, scroll down to the &#8220;<strong>Finally, the review!</strong>&#8221; section below.</p>
<h3> Online Only stores and Brick and Mortar stores intersect, a bit of history.</h3>
<p>A lot of online-only stores have made offerings into brick and mortar retail stores  with varying amounts of success, unlike retail stores going into online offerings which anyone would say has been a huge success and convenience.  Unfortunately, the DIY/Hobbyist market hasn&#8217;t seen such a success and for the most part has remained largely an online-only affair.</p>
<p>Several years ago, Parallax announced that they would start offering some sensors and kits for sale at Radio Shack.  After hearing the news, I was tentatively excited however after seeing their initial offering, I don&#8217;t think Parallax was done right by Radioshack. They were given half of a disorganized &#8220;parts drawer&#8221;  and a couple of pegs to offer hanging merchandise.  Despite Parallax&#8217;s attempt, the move into retail ultimately floundered. It is my belief that if Radio Shack had given Parallax&#8217;s parts offering a bit more shelf space  and Parallax had made more of an initial offer in Parallax&#8217;s own packaging, they might have been able to make it more successful. Instead, Parallax&#8217;s limited offering (around 10 sensors and the &#8220;What&#8217;s A Microcontroller&#8221; kit) and Radio Shack&#8217;s shoddy mismanagement of the parts bins where the sensors were stored served to bury the Parallax name in the forgotten corners of the store.</p>
<p>Although there was a post several months ago with a shot of custom Parallax retail packaging, I can&#8217;t find the link now, nor did any searching reveal any information. Several other companies watched the Parallax and Radio Shack situation unfold and took notes, now it&#8217;s time to evaluate another initial transitional offering from online only to online/brick-and-mortar offerings.</p>
<h3>Now, to Sparkfun and Microcenter&#8230;</h3>
<p>Sparkfun Electronics has been well known in the Arduino community with their extensive offerings online. Chances are, if there&#8217;s a sensor out there, they have it either in kit form or as a complete pre-fab module.  When I heard that they are making an offering through Microcenter, I was thankful that I lived near Microcenter. Using Parallax and Radio Shack as an example of a failed attempt, I went to Microcenter to scope out their product  offerings.  I was very pleasantly surprised.  Sparkfun&#8217;s initial product offering outpaces Parallax&#8217;s offering by a significant margin as shown in the image below.  Not only do they offer a Getting Started kit (reviewed below), they also offer a wide variety of parts and shields for the Arduino platform.</p>
<div id="attachment_1014" class="wp-caption aligncenter" style="width: 235px"><img class="size-medium wp-image-1014" title="Sparkfun Offering at Microcenter." src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/09/IMG_20110909_105030-e1315601462879-225x300.jpg" alt="Sparkfun Offering at Microcenter." width="225" height="300" /><p class="wp-caption-text">Sparkfun Offering at Microcenter.</p></div>
<p>You can see in the above photo that they have a lot to offer. From my estimates, they had the Arduino platform as well as the Inventor&#8217;s kit and several other non-Arduino projects.  They also offered a wide array of sensors and components as well as several Arduino shields in kit form. Some of the shields they offer is the Arduino motor shield, Arduino Prototype Shield with microSD card reader and the Arduino Joystick Shield.  Their component offering is equally impressive with a multitude of sensors, both serial and parallel character LCD displays, breadboards and modules. Something I saw that I plan on getting later on is a dedicated 3.7V Lithium Polymer charging module with battery.  This module will charge off a USB port and will keep an Arduino running for 50 hours according to the box.  Having something like this is a big bonus when working on embedded hardware.</p>
<p>They also offer several kits like the X-Bee modules kit (which is probably my next purchase) which contain everything you need to get started.  You get a USB to Serial converter board, two X-Bee modules and an X-Bee to Arduino interface shield.  Their RFID kit also has the same level of thought put into it with the necessary adapter board, the RFID sensor and sample RFID cards to experiment with.</p>
<p>In addition to their parts and components, I found something I had been wanting personally. They had tool kits available in store. The kits were ranged according to skill level (easy, medium and complex) with the complex kit featuring a multimeter and soldering iron, while the medium kit only offered the soldering iron.  As the user&#8217;s skill level progresses, they can add to their kit as needed.</p>
<p>One thing that seemed to stand out about their Arduino offering is that they introduced three flavors of Arduino.  The Arduino Uno (which comes in the Inventor&#8217;s kit as well as individually), The Arduino Mini (and the related FTDI programming module) and the Breadboard Arduino (Arduino made on breadboard rather than the standard PCB board).</p>
<p>For those of you asking about cost, this was one of my concerns as well.  In my previous experience, anything in a brick-and-mortar store is usually more expensive.  I did a side-by-side comparison with my phone as I priced random components and kits and I found that the cost at the store was pretty much dead on, only varying by a few cents.</p>
<h3>Final thoughts</h3>
<p>I am thankful that Sparkfun and Microcenter teamed up and I am hoping that they continue to expand their product selection.  I have a feeling that there are a lot of people out there that are wanting to get into microcontrollers and embedded electronics however just aren&#8217;t convinced and need that one little push over from &#8220;Maybe&#8221; to &#8220;Definitely&#8221;.  I can&#8217;t wait to see what is &#8220;in store&#8221; next.  (That was a pun, laugh!)</p>
<p>And without more blathering about Sparkfun and Microcenter, finally we get to the review.</p>
<h2><strong>Finally, the Review!</strong></h2>
<p>The kit I picked up is the <a href="http://www.sparkfun.com/products/10339" target="_blank">Retail version of the SparkFun Inventor&#8217;s Kit (SIK)<strong></strong></a>which has everything one would need to get started with the Arduino and electronics. I won&#8217;t enumerate the full list of materials in the box, however I will present several pictures as shown below.</p>
<div id="attachment_1015" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-1015" title="SIK kit cover" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/09/DSCF2138-300x225.jpg" alt="SIK Kit cover" width="300" height="225" /><p class="wp-caption-text">SIK Kit cover</p></div>
<p>Most of the kits on the market have a hinge at one end however Sparkfun&#8217;s kit has a completely detached cover meant to be removed. This presents the bonus of not eating up twice the kit&#8217;s floor space on your desk.</p>
<div id="attachment_1016" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-1016" title="Kit Contents" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/09/DSCF2139-300x225.jpg" alt="Kit Contents" width="300" height="225" /><p class="wp-caption-text">Kit Contents</p></div>
<p>Inside the kit comes a nicely packaged assortment of parts in the right hand compartments and in the top compartment.  More on those in a bit.  The left hand compartment contains several pin jumpers for breadboarding and Arduino connections and the center large compartment holds the USB cable, the circuit flash cards, the Arduino in its own box and the mounting plate and breadboard.</p>
<div id="attachment_1017" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-1017" title="Arduino Box" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/09/DSCF2140-300x225.jpg" alt="Arduino Box" width="300" height="225" /><p class="wp-caption-text">Arduino Box</p></div>
<p>The Arduino Uno comes in its own little box, prepackaged and QC&#8217;ed from Italy where the Arduino was built and designed.</p>
<div id="attachment_1018" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-1018" title="Unboxed Arduino" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/09/DSCF2141-300x225.jpg" alt="Unboxed Arduino" width="300" height="225" /><p class="wp-caption-text">Unboxed Arduino</p></div>
<p>Along with the Arduino Uno comes a handful of stickers and a little pamphlet with more information about the Arduino.</p>
<div id="attachment_1019" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-1019" title="Mounted Arduino and Breadboard" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/09/DSCF2142-300x225.jpg" alt="Mounted Arduino and Breadboard" width="300" height="225" /><p class="wp-caption-text">Mounted Arduino and Breadboard</p></div>
<p>The mounted Arduino and breadboard on the included Sparkfun mounting plate.  This gives the user a good and stable place to work with the Arduino and the sample circuits in order to understand the Arduino&#8217;s capabilities.</p>
<div id="attachment_1020" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-1020" title="Parts Pictures" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/09/DSCF2143-300x225.jpg" alt="Parts Pictures" width="300" height="225" /><p class="wp-caption-text">Parts Pictures</p></div>
<p>The other parts of the SIK kit include:</p>
<ul>
<li> 74HC595 shift register (pictured)</li>
<li>Rotary Potentiometer</li>
<li>Photoresistor</li>
<li>Two pushbuttons</li>
<li>Piezo speaker</li>
<li>Several LEDs</li>
<li>Several Resistors in a few different values</li>
<li>two Diodes</li>
<li>Transistor (2N2222 variant)</li>
<li>Subminiature Hobby Servo</li>
<li>DC Motor</li>
<li>Flex sensor (top center)</li>
<li>Variable Flex resistor (under sensor)</li>
<li>Additional headers and pins</li>
</ul>
<p>The kit also includes a small booklet that has several circuits and sample code to get started.</p>
<div id="attachment_1021" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-1021" title="Manual, flashcards and USB cable" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/09/DSCF2144-300x225.jpg" alt="Manual, flashcards and USB cable" width="300" height="225" /><p class="wp-caption-text">Manual, flashcards and USB cable</p></div>
<p>The booklet (pictured) contains several circuits and is intended to be used with the flash cards together in order to guide the novice through building the circuits and becoming familiar with the Arduino.  The flash cards each contain a circuit diagram that correlates to how the components should be connected to the Arduino and the book contains sample code with a brief explanation of how the code works.</p>
<h3>Thoughts on the booklet itself</h3>
<p>The book is targeted at new users to the Arduino platform however I quickly came to the conclusion that this kit is not targeted at beginners to electronics.   Coming from the &#8220;What&#8217;s A Microcontroller&#8221; world that explained everything including the basic 101&#8242;s of electronics, this may be a bit off-putting for some however with an understanding of some of the basics, this may serve to bridge the gap between building basic passive electronics projects and more advanced digital electronics projects.</p>
<p>Unlike the &#8220;What&#8217;s A Microcontroller&#8221; kit, there is no complete guide to the command reference included in the kit however the Basic Stamp and the Arduino both have extensive community support.</p>
<h3>Final Thoughts on the Kit</h3>
<p>The Sparkfun Inventor&#8217;s Kit appears to be well stocked with a typical selection of components fit for a beginner&#8217;s kit and will make a good start in working with the Arduino, even if you have never had any microcontroller experience.  While I can&#8217;t recommend this kit as a complete beginner&#8217;s guide to electronics, any newbie should be able to perform additional research to locate the answers they seek.  This is not a completely offline course but I do not consider this to be enough of a deterrent to stop from recommending the kit.  I feel that this kit will be a great addition to any electronics bench and will help anyone with even the most basic electronics experience get started with the Arduino.</p>
<p><strong>Verdict:  Buy!</strong></p>
<p>Cost: $99</p>
<p>Found at: Microcenter and sparkfun.com (sku: <a href="http://www.sparkfun.com/products/10339" target="_blank">RTL-10339</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yourwarrantyisvoid.com/2011/09/09/reviews-sparkfun-inventors-kit-at-mircocenter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reviews: WD TV Live Plus</title>
		<link>http://www.yourwarrantyisvoid.com/2011/08/26/reviews-wd-tv-live-plus/</link>
		<comments>http://www.yourwarrantyisvoid.com/2011/08/26/reviews-wd-tv-live-plus/#comments</comments>
		<pubDate>Fri, 26 Aug 2011 17:06:02 +0000</pubDate>
		<dc:creator>firestorm_v1</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Product Reviews]]></category>
		<category><![CDATA[media center]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Small Form Factor]]></category>

		<guid isPermaLink="false">http://www.yourwarrantyisvoid.com/?p=992</guid>
		<description><![CDATA[In this post, I will review a recently acquired WD TV Live Plus purchased from Microcenter for around $100.  The quest was to find a media player solution that could read media from network shares and play them with minimal fuss.  Since this is going to be attached to the primary TV, it has to [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="size-medium wp-image-993 aligncenter" title="WD logo" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/wdmonogramc-300x199.gif" alt="WD logo used with permission granted from wdc.com" width="300" height="199" /></p>
<p style="text-align: left;">In this post, I will review a recently acquired WD TV Live Plus purchased from Microcenter for around $100.  The quest was to find a media player solution that could read media from network shares and play them with minimal fuss.  Since this is going to be attached to the primary TV, it has to be &#8220;Girlfriend Approved&#8221; and easy to use.  I believe that the WD TV Live Plus fits this requirement adequately however the installation of the device could be easier.  Once done, the device is wonderful.  Read the full review after the break.</p>
<p style="text-align: left;"><span id="more-992"></span></p>
<h2 style="text-align: left;">Foreword</h2>
<p>One of the things that I&#8217;ve been keeping a close eye on is the development of the media center computer.  A non-PC PC that is used to play local network content and can provide other services through the TV and still maintain the ease of use of a standard DVD player.  I had previously experimented with XBMC and was pleased with it&#8217;s overall hardware support and the features it supported &#8220;out of the box&#8221; however the UI was a bit kludgy and having to predefine all media sources and items before it would show up.  It also didn&#8217;t help much that the only device that I had that would work properly was an old Averatec laptop which did work very well, even with the embedded Intel graphics.</p>
<p>I skipped the newer iterations of XBMC partially due to lack of time and due to the fact that I was still not looking forward to using the Averatec laptop as it required a mouse and I didn&#8217;t have the money to pony up for Windows Media remote (which would have been supported).  Time grew on and by then my needs for additional storage had exceeded a single drive.  I built a Windows based NAS server using a 3ware card donated by a friend and buit a 2Tb storage array.  Soon after that, I got to the point where looking at a media player began to become feasible again as now I had plenty of storage and lots of plans.  I ultimately wanted to rip and encode my DVDs so that I could play them without needing to swap disks endlessly.</p>
<p>I was already accustomed to using Netflix on the Xbox360, however I wanted the same convenience of couch-surfing with all my local media.  A bonus through work found me with extra cash to finally take a look at a media player.  My requirements were simple.</p>
<ul>
<li>It must support a variety of media in a variety of formats and codecs.</li>
<li>It must have a remote and be easily operated.</li>
<li>It must have a variety of outputs including HDMI and Component.</li>
<li>It must be able to read SMB shares easily and remember credentials.</li>
<li>It must be inexpensive.</li>
<li>The box, UI and remote have to not look fugly.</li>
</ul>
<h2>Research, research, research</h2>
<p>I started looking around at a lot of the common media players that are out there.  The Apple TV was too &#8220;hipster&#8221; and I really didn&#8217;t feel like dealing with iTunes after the fiasco that was my iPod.  The price was right and the Apple TV did have the right connectors, but dependence on the iTunes application really made it a deal killer.</p>
<p>Boxee was an attractive option and had high ratings however when I saw the <a href="http://www.boxee.tv/">final product and it&#8217;s cubelike design</a>, it was an instant turnoff. While the hardware was more than adequate, the box itself looked rather ugly. When I did some additional research, the price point (at almost $250 at initial research, now $199) it was still out of my price range. While Boxee did have the free software option like XBMC, I had no &#8220;decent&#8221; hardware on it to make it not suck. so unfortunately this option was nixed.</p>
<p>There were some other media devices that I had found however they were really proprietary and for various reasons, they don&#8217;t even merit mention.  That said, I reluctantly asked around work and several coworkers offered suggestions, most of which were either Apple TV, XBMC, Boxee.  A couple of guys mentioned the WDTV Live Plus so I started doing research.</p>
<p>The WD TV Live Plus appeared to support all of my requirements although several forum posts came up about difficulty with networking.  At $100 a unit, this appeared to be a viable option so I decided to gamble.</p>
<h2>Hardware</h2>
<p>Without further ado, let&#8217;s take a look at what we&#8217;re up against.</p>
<div id="attachment_994" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-994" title="WD TV Live Plus box" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/DSCF2121-300x225.jpg" alt="WD TV Live Plus box" width="300" height="225" /><p class="wp-caption-text">WD TV Live Plus box</p></div>
<p>This is the outside of the box.  Inside the box, you get a remote, two AAA batteries, the WDTV Live Plus, a 1/4in to AV (Video, L and R Audio) cable, a 1/4in to Component (Y,Pb,Pr) cable and power supply adapter.</p>
<div id="attachment_995" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-995" title="WDTV size comparison" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/DSCF2122-300x225.jpg" alt="WDTV size comparison" width="300" height="225" /><p class="wp-caption-text">WDTV size comparison</p></div>
<p>To put a size comparison on things, this thing is SMALL.  It&#8217;s about the size of a large pocket switch roughly 4inches deep, five inches wide and about an inch tall. The remote control is about three inches long  and an inch wide and roughly a half-inch deep. Although it is small, it does fit in either hand comfortably thanks in part to a finger wide notch cut into the bottom of the remote.</p>
<div id="attachment_996" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-996" title="Back ports" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/DSCF2116-300x225.jpg" alt="Back Ports" width="300" height="225" /><p class="wp-caption-text">Back Ports</p></div>
<p>The rear of the WDTV contains several ports as shown above.  The ports from left to right are Power, USB, HDMI, Optical Audio TOSLINK, Ethernet, Component, Composite+Audio.</p>
<div id="attachment_997" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-997" title="Top view" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/DSCF2117-300x225.jpg" alt="Top view" width="300" height="225" /><p class="wp-caption-text">Top view</p></div>
<p>The Top of the WDTV features an additional USB port and the always good-to-have reset pinhole.  In the event of a device failure, you can use the pinhole to factory reset the device and to perform software updates.</p>
<div id="attachment_998" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-998" title="My WDTV installed and running." src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/DSCF2120-300x225.jpg" alt="My WDTV installed and running." width="300" height="225" /><p class="wp-caption-text">My WDTV installed and running.</p></div>
<p>Here is a picture of my WDTV installed and running.  To put it in persepective, that is a Netgear 8 port switch it is sitting on top of and the salt rock to the right is about the size of a 2 liter bottle of soda.</p>
<h3>Other things worth mentioning:</h3>
<ul>
<li>The two USB ports can support a variety of USB Mass Storage devices including cameras, USB Hard drives, Thumb drives and Media Card readers.  It can also support a limited range of <a href="http://wdc.custhelp.com/app/answers/detail/a_id/3805/~/list-of-compatible-devices-for-the-wd-tv-live-hd-media-player-and-wd-tv-live" target="_blank">wireless adapters, USB keyboards and other options</a>. Although Wireless options are available, my network does not run Wireless N and as stated in the link, Wireless G may be too slow for streaming.  I did not get the ability to test Wireless connectivity as my network is primarily wired 10/100 network.</li>
<li>There is no HDMI cable included with this kit so you will need to buy one if you intend to use HDMI.</li>
</ul>
<p>&nbsp;</p>
<h2>Software</h2>
<p>As mentioned earlier, I required that the device be easy to use and able to pick up SMB shares While the UI appeared to be quite usable, there were difficulties in getting the network shares to show up.  Several posts to the WD Customer Support forum complained about this very same issue however I was able to overcome the issue once I found out what the root issue was. If you want a further review of the software, skip this section.</p>
<h3>Not all SMB networks are the same</h3>
<p>As stated on the box, this device should be able to read content from SMB (MS Network) shares and play it however there was a significant issue with the implementation of the SMB protocol in the WD TV Live Plus.  My network is largely Windows clients seeing as how my NAS is a Windows XP computer with a storage array and that most of my computers are Windows XP based (except for my core networking equipment and my laptop which uses Ubuntu.)  This ended up causing more hell than I was expecting and I&#8217;ll explain.</p>
<h3>Oh master, where art thou?</h3>
<p>In a Windows network where there is no domain controller, Windows computers will get into an election process to attempt to establish a browse master.  This browse master is a Windows computer that maintains a list of active computers on the network.  This behavior is part of NetBIOS and SMB sharing and allows the computers to &#8220;discover&#8221; each other.  Once the browse master is established, additional computers will communicate with the master to &#8220;register&#8221; themselves, and once registered can discover each other&#8217;s network shares.  This share list is populated each time someone tries to browse the network.</p>
<h3>I&#8217;m talking, but no one&#8217;s listening!</h3>
<p>The WDTV on boot, will perform a broadcast to the network on UDP port 137 (NetBIOS Name service) which is according to the NetBIOS protocol.  It waits for a browse master to return the broadcast so it can then download the browse list. The issue is that Microsoft has altered the way NetBIOS works and in doing so, has altered the way NetBIOS operates.  One of the alterations is that Windows computers (whether browse master or not) is that the computers will no longer respond to broadcasts to port 137.  The result is that the WDTV will never receive the response it&#8217;s looking for and it&#8217;s server list will never get updated.</p>
<h3>You are my slave now!</h3>
<p>The workaround is to install NetBIOS (part of the SAMBA package) on a Linux box and set &#8220;local master = yes&#8221; in samba.conf.  This will also give you the added benefit of sped up network browsing on your computers and the installation of NetBIOS is very simple, requiring only one modification to a configuration file and a service restart.  In my testing of the WDTV,  I was unable to get the WDTV to show any network shares prior to the installation of the NetBIOS service.  Once I installed the NetBIOS service, it was a matter of seconds that the network shares listed out all of the active computers on the network.</p>
<h2>Carrying on&#8230;.</h2>
<p>Testing the UI under component, composite and HDMI cables showed little difference in the display resolution aside from the appreciable differences in the three connection technologues themselves. In each test, the UI was sharp and clear with menu options easily highlighted. The UI is a dark-blue theme and reminds me a lot of the Playstation 3 interface.</p>
<div id="attachment_999" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-999" title="UI main image" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/DSCF2113-300x225.jpg" alt="UI main image" width="300" height="225" /><p class="wp-caption-text">UI main image</p></div>
<p>In the above image, I have highlighted the server &#8220;Zeus&#8221; from Videos -&gt; Network shares.   The icons scroll vertically to allow you to select options, while horizontal movement allows you to proceed or go back via the four way D-pad on the remote.  Hitting &#8220;OK&#8221; is only required on media titles, menu options (like Configuration Settings) and various sub-menus as needed.</p>
<div id="attachment_1000" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-1000" title="Media List" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/08/DSCF2115-300x225.jpg" alt="Media List" width="300" height="225" /><p class="wp-caption-text">Media List</p></div>
<p>The Media List view shows up once a server has been selected and allows you to drill down to find the content you want.  On the &#8220;Zeus&#8221; server, I have several shares dedicated to each type of media that the WDTV supports.  This is the list of the &#8220;Movies&#8221; fileshare.  Photos and Music are other fileshares available.  In this view, you can simply highlight a movie and without further action, it will start playing in the preview window on the right.  If you want to play it fullscreen, just select the preview window and hit OK.  The display will then go full size without missing a beat.</p>
<p>All in all, the UI is simple to use, easy to navigate and offers a lot of functionality without cluttering up the display.</p>
<h3>It also has apps</h3>
<p>I hesitate to mention this as I didn&#8217;t purchase the WDTV for applications, but it does bear mentioning.  This device supports games and apps including Youtube, Facebook and Netflix support. While I did briefly try out the Netflix and Youtube options and they appeared to work as expected, I did not try the Facebook app and felt that the inclusion of Facebook on a media client to be in excess.  I can&#8217;t contemplate using my media client to check my Facebook as I have phones, laptops and full-size computers for that.</p>
<h2>Final Verdict</h2>
<p>To summarize the total experience of the WD TV Live Plus, let&#8217;s break down the experience into the Good and the Bad. It may be cliche to do it, but it works well.</p>
<h3>The Good</h3>
<ul>
<li>Small Form Factor</li>
<li>Includes remote, component and composite cables and battery</li>
<li>Supports HDMI, DVI (via HDMI to DVI cable), Composite and Component connections.</li>
<li>Includes TOSLINK optical audio out for connectivity to a surround sound system.</li>
<li>Plays a wide variety of video formats: AVI(Xvid, AVC, MPEG 1,2 and 4, WMV9, VC-1, MPEG/MPG, VOB (DVD), MKV, TS/TP/M2T, MP4/MOV, M2TS and WMV9.  I have not tested DivX format as I don&#8217;t have any DivX formatted media.</li>
<li>Plays a wide variety of audio formats: MP3, WAV, PCM, LPCM, WMA, AAC, FLAC, MKA, AIF/AIFF, OGG, Dolby Digital.</li>
<li>Picture is clear regardless of connector type</li>
<li>Menu navigation is easy and intuitive without clutter.</li>
</ul>
<h3>The Bad</h3>
<ul>
<li>No HDMI cable included in kit.</li>
<li>Networking requires NetBIOS browse master and setup can be daunting for non-Linux networks or unexperienced users.</li>
<li>Will not play DRM protected content.</li>
<li>No Web-based interface or control application.</li>
</ul>
<h3>My Thoughts</h3>
<p>The WDTV Live Plus is a great addition to the network and will work very well for playing media. After getting the network issue resolved, this device has flawlessly performed without issue for the last week.  I have started a project to rip all my DVDs to the NAS so I can watch all my movies and TV shows without having to touch a single DVD disc.  This product gets a firm thumbs up from me.</p>
<h3>My Girlfriend&#8217;s Thoughts</h3>
<p>Of course, being a geek means I have a high tolerance for making stuff work, but since I live with my girlfriend, it doesn&#8217;t get a thumbs up if she can&#8217;t use it.  In this particular case, she liked the menu configuration and ease of navigation.  She was able to look at video content with very little prompting from me unlike the initial case of the failed XBMC attempt. The WDTV Live &#8220;just worked&#8221; and she was very pleased with it.  She says it&#8217;s definitely Girlfriend Approved and she can&#8217;t wait until I get the DVDs ripped.</p>
<p>In the next month or so, I will provide a follow up on how to establish a NetBIOS browse master, rip and encode DVDs and how to set up fileshares in Windows to allow you to use your WDTV effectively.  Minus the initial configuration issue, this device is cheap on cost without being cheap on features. It is a well designed product that will help integrate computer media into your existing entertainment system without significantly impacting your wallet or your sanity.</p>
<p>&nbsp;</p>
<h2><strong>Verdict:  Buy!</strong></h2>
<p>Cost: around $100, sometimes on sale for around $70-80</p>
<p>Availability: Most Online Retailers, and some brick-and-mortar stores like Best buy, Fry&#8217;s, etc..</p>
<p>&nbsp;</p>
<p>Have fun!</p>
<p>FIRESTORM_v1</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yourwarrantyisvoid.com/2011/08/26/reviews-wd-tv-live-plus/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Networking: Duplicating Drops in structured wiring</title>
		<link>http://www.yourwarrantyisvoid.com/2011/07/29/networking-duplicating-drops-in-structured-wiring/</link>
		<comments>http://www.yourwarrantyisvoid.com/2011/07/29/networking-duplicating-drops-in-structured-wiring/#comments</comments>
		<pubDate>Fri, 29 Jul 2011 18:13:04 +0000</pubDate>
		<dc:creator>firestorm_v1</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[How-To's]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[patch cord]]></category>
		<category><![CDATA[router]]></category>

		<guid isPermaLink="false">http://www.yourwarrantyisvoid.com/?p=952</guid>
		<description><![CDATA[Structured wiring in businesses and the enterprise are as expected as the sun shining and a regular paycheck, however in the home a structured wiring solution can be an unexpected gift from the Gods of Ethernet.  While structured wiring in an apartment complex is usually done central to a utility closet or shelf, sometimes the [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-medium wp-image-953" title="Networking" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/07/DSCF2103-300x225.jpg" alt="Networking" width="300" height="225" /></p>
<p>Structured wiring in businesses and the enterprise are as expected as the sun shining and a regular paycheck, however in the home a structured wiring solution can be an unexpected gift from the Gods of Ethernet.  While structured wiring in an apartment complex is usually done central to a utility closet or shelf, sometimes the central point isn&#8217;t always convenient for your router or you find yourself needing to run multiple networks.  In this tutorial, I will show you how to turn one structured wiring drop into two drops for carrying two different network segments, something that can be of benefit should you ever need it.<span id="more-952"></span></p>
<h3>What these splitters do and what they don&#8217;t do.</h3>
<p>Before we begin slicing up cables, it&#8217;s important to understand what is going on here so you can decide if this will work for you.  Generally speaking, these splitters can be used if you want to carry two <strong>different</strong> networks over the same drop. If you are simply looking for more connections to your home network, and you are not doing anything special, you will more than likely want to save some time and get a mini-switch instead.  Here&#8217;s a good rundown of some scenarios of why you should and should not consider these splitters:<strong></strong></p>
<p>These splitters would be a good idea for the following scenarios:</p>
<ul>
<li>Moving your router from the default ingress point.  In my case, the central &#8220;panel&#8221; is in the utility closet, but I want my router on my desk.  I use the &#8220;1&#8243; portion of the splitter to transport the WAN segment to the WAN port of my router, then use the &#8220;2&#8243; portion of the splitter to transport the LAN segment to a mini-hub in the closet to activate the rest of the jacks in the house.</li>
<li>Moving a &#8220;hostile&#8221; segment or Guest network to another location.  An example would be having a router installed at the ingress point and using a splitter to transport a &#8220;Guest Network&#8221; and a &#8220;LAN&#8221; connection via the same drop.  In this case, the Guest Network feeds an open access point, while the LAN feeds a desktop computer. In this application, the Guest Network is kept physically separate from the LAN via the splitters but allows you to position the access point somewhere more convenient while maintaining the availability of the LAN.</li>
<li>Transporting two Ethernet drops to a managed switch located in a central closet.  An example for this would be to allow per-port monitoring and administration of both drops individually as opposed to using a mini-switch which would force you to  perform the change across all devices attached to the mini-switch.</li>
</ul>
<p>These splitters would not be a good idea for the following scenarios:</p>
<ul>
<li>Creating more Ethernet ports for the same network and you are not using a managed switch.   If you are plugging two devices into your LAN at the same location, just use a mini-switch and save yourself the trouble. There&#8217;s no benefit to using splitters in a non-managed switch environment. Additionally, you may incur additional costs with having to buy an additional mini-switch to split the connections off at the central panel anyways.</li>
<li>You are using Gigabit Ethernet and do not want to drop the line speed in the location you are looking at.</li>
<li>You are using Power over Ethernet at this location and do not want to move the power supply.</li>
</ul>
<h3>A little bit on structured wiring and Ethernet standards</h3>
<p>In a structured wiring environment, a &#8220;drop&#8221; is the term for a 4 pair (8 wire) cable run through ceilings, walls, etc from a faceplate with proper termination to a central wiring panel with proper termination (usually a patch panel of sorts).  It&#8217;s called structured wiring as the wiring is usually planned out first with attention to detail and locations of equipment like access points, computers, etc.  Generally speaking, if you are in a structured wiring location and you see an RJ-45 jack marked &#8220;Cat-5&#8243; this generally means that it&#8217;s an Ethernet jack and that the cabling and connectors comply with the Cat-5 standard.</p>
<p>Speaking of wiring standards, you may want to <a title="Network Wiring Standards" href="http://www.zytrax.com/tech/layer_1/cables/tech_lan.htm" target="_blank">take a look at this link</a> which provides more detail into the wiring convention commonly used in structured wiring for Ethernet networks.</p>
<p>In standard 10/100 Ethernet cabling that uses an RJ-45 jack, you have two wires(a pair) for transmit and two wires(a pair) for receive.  In most locations, the extra two pairs (four wires) are simply left idle and untouched. In rare situations (at least in residential equipment) these extra pairs are used for Power over Ethernet which use these spare pairs to deliver power to a network device where it is not convenient to use a standard &#8220;wall-wart&#8221; power supply. This requires special adapters (not unlike our splitters) to send power and network connectivity over the same drop, then split it again at the device end.   As mentioned before, if you are using PoE to feed a device using a drop that you need two connections for, you will either need to move the PoE power supply to another location or use our splitter elsewhere.</p>
<p>Unfortunately, Gigabit Ethernet requires all four pairs be used for sending and receiving at Gig-E speeds. If you are not willing to move the Gig-E device and are not willing to drop the speed to 10/100 , you will need to use the splitter elsewhere.</p>
<h3>Do the Splits!</h3>
<p>In order to pull this off, you will need the following:</p>
<ul>
<li>Two Cat-5 patch cords</li>
<li>A RJ45 crimper</li>
<li>Four RJ45 Crimp Ends suitable for the wire in your patch cords. (more if you are new at this, just in case)</li>
<li>Heatshrink that is big enough to accommodate twice the diameter of your patch cords.</li>
<li>Lighter</li>
<li>Diagonal cutters</li>
<li>Sharpie (not pictured)</li>
<li>Cat-5 tester (Optional, not pictured)</li>
<li>Cat-5 Female to Female junction adapter (optional, not pictured)</li>
</ul>
<div id="attachment_954" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/07/DSCF2094.jpg"><img class="size-medium wp-image-954" title="Tools" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/07/DSCF2094-300x225.jpg" alt="Tools" width="300" height="225" /></a><p class="wp-caption-text">Tools</p></div>
<p>To start off, cut one CAT-5 end off of your patch cord and determine how far back you want to strip the jacket off.  In my example, I wanted this splitter to go next to a managed switch where the ports are close together so I used about 8 inches which leaves about 4 inches for each &#8220;branch&#8221;.   If you are using a pocket switch and a computer, you may want to use one foot (12 inches) which leaves you with two 6 inch branches.</p>
<p>Start snipping the jacket of the patch cord, paying close attention to not damage any of the wires underneath. If you do snip a wire, cut the rest of them at the same length and repeat the process.   Once you have managed to snip the jacket clean, begin pulling the jacket off of the cable in one piece.  When completed, you should have eight wires similar to the below picture.</p>
<div id="attachment_955" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/07/DSCF2098.jpg"><img class="size-medium wp-image-955" title="Stripped Wiring" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/07/DSCF2098-300x225.jpg" alt="Stripped Wiring" width="300" height="225" /></a><p class="wp-caption-text">Stripped Wiring</p></div>
<p>Split the wires into two groups.  Separate the White/Blue and the White/Brown pairs from the White/Green and White/Orange pairs.  Slip the heatshrink tube over all four pairs down past the cut jacket.</p>
<p>Fold the stripped away jacket in half and cut at the half line.  Slip one piece of the jacket over the White/Blue and White/Brown pairs, and thread the White/Green and White/Orange pairs through the remaining piece of the jacket.  Use the image below as a guide.</p>
<div id="attachment_956" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/07/DSCF2099.jpg"><img class="size-medium wp-image-956" title="Wires threaded through Jacket" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/07/DSCF2099-300x225.jpg" alt="Wires threaded through Jacket" width="300" height="225" /></a><p class="wp-caption-text">Wires threaded through Jacket</p></div>
<p>Slide the two jacket pieces down as far as they will go, then push the heatshrink tube at least one inch past the split.  This will toughen the split to ensure it doesn&#8217;t fall apart with use.  Use the lighter to shrink the tubing around the three pieces of jacket.</p>
<p>Now for the fun part.  At the ends of the two pieces of jacket, you now have one piece with a White/Blue pair and a White/Brown pair and another piece with White/Orange and White/Green. We need to put ends on these wires so we can start using them.  Start off by spreading the wires out and untwisting them like in the image below.</p>
<div id="attachment_957" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/07/DSCF2100.jpg"><img class="size-medium wp-image-957" title="Separated Wires" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/07/DSCF2100-300x225.jpg" alt="Separated Wires" width="300" height="225" /></a><p class="wp-caption-text">Separated Wires</p></div>
<p>Trim the wires so that there is approximately one inch sticking out of the jacket and make sure that the wires are laid out like so:</p>
<ul>
<li>Solid Green (or green with white dots)</li>
<li>White/Green &#8211; white wire with green stripe</li>
<li>Solid Orange (or orange with white dots)</li>
<li>White/Orange &#8211; white wire with orange stripe</li>
</ul>
<p>The important part is when you insert them into the crimp end, the solid green wire must go into position 3, and the rest will go into positions 6, 7 and 8 as shown below.  Please take note that the orientation of the RJ-45 crimp end is that the spring clip is pointing towards you, and the wiring enters from the left.</p>
<ul>
<li>Position 1 &#8211; Blank</li>
<li>Position 2 &#8211; Blank</li>
<li>Position 3 &#8211; Solid Green</li>
<li>Position 4 &#8211; Blank</li>
<li>Position 5 &#8211; Blank</li>
<li>Position 6 &#8211; White/Green</li>
<li>Position 7 &#8211; Solid Orange</li>
<li>Position 8 &#8211; White/Orange</li>
</ul>
<p>Before you crimp the RJ45 onto the wires, hold the whole thing up to a bright light and ensure that the wires are long enough to hit the end of the connector.  Sometimes, a bad crimp can result if the wires are too short.  Use the below image as a reference and take some time to make sure your wiring is correct.  If all looks good, go ahead and crimp!</p>
<div id="attachment_958" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/07/DSCF2101.jpg"><img class="size-medium wp-image-958" title="Visual Inspection" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/07/DSCF2101-300x225.jpg" alt="Visual Inspection" width="300" height="225" /></a><p class="wp-caption-text">Visual Inspection</p></div>
<p>Now for the White/Blue and White/Brown pairs, you must perform the same process, except this time we will use White/Brown in place of the White/Orange pair and the White/Blue will substitute the White/Green.  Our wiring diagram will change to below:</p>
<ul>
<li>Position 1 &#8211; Blank</li>
<li>Position 2 &#8211; Blank</li>
<li>Position 3 &#8211; Solid Blue (or Blue wire with White dots)</li>
<li>Position 4 &#8211; Blank</li>
<li>Position 5 &#8211; Blank</li>
<li>Position 6 &#8211; White/Blue</li>
<li>Position 7 &#8211; Solid Brown (or Brown wire with White dots)</li>
<li>Position 8 &#8211; White/Brown</li>
</ul>
<p>Do the same inspection as you did for the first crimp and check, recheck and crimp your second connector.    Mark the crimp with the White/Orange and White/Green wires as &#8220;1&#8243; and the other crimp with the White/Blue and White/Brown wires as &#8220;2&#8243;.  This will be important later on when you implement your splitters.</p>
<h3>Do it again, Sam!</h3>
<p>Now that you have one splitter, go ahead and do it again with the other Cat-5 patch cord.  When you are complete, your patch cord should look like the following image.</p>
<div id="attachment_959" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/07/DSCF2097.jpg"><img class="size-medium wp-image-959" title="Finished Splitter" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/07/DSCF2097-300x225.jpg" alt="Finished Splitter" width="300" height="225" /></a><p class="wp-caption-text">Finished Splitter</p></div>
<h3>Final Thoughts</h3>
<p>Now that you have a pair of these splitters, you should be able to enjoy a bit more freedom when setting up your network in a structured wiring environment where additional cable runs are simply not feasible.  In my particular installation, I am using my splitters to feed the router&#8217;s output that carries VLAN tagged traffic into a managed switch.  The other leg of the splitter, goes back to the wiring closet to feed a mini-switch with network connectivity.  VLAN tagged traffic will not traverse a non-managed switch so for me this was the only way to be able to use my VLAN tagged network and my &#8220;primary&#8221; network without having to give up either.  Below is an image of my splitter feeding my 24 port switch. Yes the switch is on however it appears that the flash washed the lights out.</p>
<div id="attachment_960" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/07/DSCF2102.jpg"><img class="size-medium wp-image-960" title="Installed Splitter" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/07/DSCF2102-300x225.jpg" alt="Installed Splitter" width="300" height="225" /></a><p class="wp-caption-text">Installed Splitter</p></div>
<p>I hope you enjoyed this quick post as I did making the splitters.  Reply to this post and tell others how you intend to use your splitters.</p>
<p>&nbsp;</p>
<p>Happy Hacking!</p>
<p>&nbsp;</p>
<p>FIRESTORM_v1</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yourwarrantyisvoid.com/2011/07/29/networking-duplicating-drops-in-structured-wiring/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>CVS Netbook Revisited</title>
		<link>http://www.yourwarrantyisvoid.com/2011/07/25/cvs-netbook-revisited/</link>
		<comments>http://www.yourwarrantyisvoid.com/2011/07/25/cvs-netbook-revisited/#comments</comments>
		<pubDate>Mon, 25 Jul 2011 16:42:40 +0000</pubDate>
		<dc:creator>firestorm_v1</dc:creator>
				<category><![CDATA[Embedded devices]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[How-To's]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[netbook]]></category>
		<category><![CDATA[Sylvania]]></category>

		<guid isPermaLink="false">http://www.yourwarrantyisvoid.com/?p=906</guid>
		<description><![CDATA[A few months ago, I posted a hardware teardown of the CVS Sylvania Netbook pictured above. After working with it and performing a lot of research on it, I promised a follow up article, and here it is.  To sum it all up, with a bit of modification to the software, a spare SD card [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="size-medium wp-image-751 aligncenter" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/01/2011-01-06-17.11.07-300x225.jpg" alt="" width="300" height="225" /></p>
<p>A few months ago, I posted a hardware teardown of the CVS Sylvania Netbook pictured above. After working with it and performing a lot of research on it, I promised a follow up article, and here it is.  To sum it all up, with a bit of modification to the software, a spare SD card and a lot of patience, you can actually turn this thing into a somewhat useful Linux device.  There&#8217;s also some improvements and suggestions to be had for improving the Windows CE side of things should you decide to continue using it in its default state.</p>
<p><span id="more-906"></span></p>
<p>When I posted the original teardown, I was somewhat distressed at how little information there was for this device. There was a ton of &#8220;marketing&#8221; material online however very few real-world posts.  This appears to have changed and although most of the reviews lamblasted the device as a horrible design and underpowered, I have found that for the price I paid for it, it&#8217;s not bad at all.  In this article, we will be focusing on software because as much as I&#8217;d like to say I&#8217;ve done a lot of hardware mods to this thing, the truth of the matter is that I haven&#8217;t.  Time has continued to get away from me and I&#8217;ve had to put a lot of projects on hold.  But let&#8217;s not start this article off on a downbeat.</p>
<p>In the three months that I&#8217;ve been doing research on the Sylvania Netbook, I have uncovered a lot of information that can help turn this machine into a pretty useful piece of equipment.  The fact that it has a pretty decent battery in of itself should be of merit to justify the time invested in fine-tuning it.</p>
<h2>1: Windows CE</h2>
<p>In my research, there have been two key complaints against the Sylvania netbook in regards to a &#8220;stock&#8221; configuration.  The first complaint has been that it is running Windows CE (affectionately called &#8220;WinCE&#8221;) and the second being that the WinCE installation is really badly implemented.</p>
<ul>
<li>The key thing to remember with working with Windows CE is that <strong>Windows CE is NOT Windows like on your desktop or &#8220;normal&#8221; laptop!</strong> Windows CE was designed for small form factor devices and although it shares the same name as it&#8217;s bigger brother desktop OS, <strong>Windows CE can not run Native Windows applications.</strong> This appears to be the biggest hurdle in locating user software for the device as people will attempt to download software then when they get the software into the netbook, they are thrown off by an error message stating it&#8217;s not a &#8220;valid&#8221; application.  Consider it like taking a MacOS program designed for MacOS and attempting to get it running in Windows XP.  It ain&#8217;t gonna happen.  That being said, there <strong>is</strong> Windows CE applications out there, however the pickings are slim.</li>
</ul>
<ul>
<li>The other issue with working with the stock Windows CE installation is that the OS software is so badly implemented on the netbook that most things that should work, don&#8217;t.  Thankfully for us there is a patch available that will make things easier.  From research, the patch addresses several performance issues with the core OS, several updates to the builtin applications as well as an update to Internet Explorer.  Unfortunately, IE will still render mobile sites by default, but the rendering won&#8217;t take as long.  The patch also fixes the issue with the wireless card not being able to properly associate with WPA/WPA2 secured networks and DHCP release/DHCP renew works as expected.  I have uploaded the patch to here.  In order to install the patch, follow the below instructions. You will need a spare SD card at least 128MB in size.</li>
</ul>
<p>Here&#8217;s how to download and perform the OS update:</p>
<ol>
<li>Download the patch from here:  <a href="http://www.yourwarrantyisvoid.com/downloads/files/sylvania_smartbook_OS_update.zip" target="_blank">sylvania_laptop_OS_update.zip</a></li>
<li>Extract the executable to an SD card.</li>
<li>Insert the SD card into the Sylvania netbook.</li>
<li>Browse to the SD card slot (Computer -&gt; SD Card)</li>
<li>Launch the patch and follow the on screen prompts.</li>
</ol>
<h2>2:On the Linux side of things&#8230;</h2>
<p>When I did my original research, I was fortunate to have come by a site dedicated to a Linux distribution made solely for the WM8505 series devices like the Sylvania Netbook. The site and the distribution were called Bento Linux and much like the Japanese namesake, the distribution was very small and was designed to be able to run within the computer&#8217;s limited spec.  Unfortunately, the site www.bento-linux.org no longer exists but thankfully I still have the documentation and files needed to pull it off.  If you are the owner of bento-linux.org and are willing to give me the site files, I would be more than happy to host it here. Please contact me in the comments.</p>
<p>One of the added benefits of Bento-Linux is that unlike some replacement OS installations, this is a sidecar installation meaning that all work is done on the SD card.  If you want to boot to Windows CE, halt the Linux OS, pop out the SD card and power the Netbook back on and you&#8217;re up and running like nothing happened.  Although the Bento Linux site did have instructions for performing an installation to the device&#8217;s flash ram, it is not recommended as if you accidentally mess up the Linux distribution, there may be no recovery. In a sidecar installation, you can pop the SD card into another device, make your changes, and then put the SD card into the netbook and you&#8217;re up and running again.</p>
<p>Although the site claimed that the distro could run on a 512MB SD card, I will up the recommendation to at least a 2GB card.  Prices are low and SD cards are very commonplace so it&#8217;s worth it to get a larger chip.  I started out on a 2GB SD card, but later upgraded to a 4GB Microdrive and noticed a significant performance increase going from solid-state memory to a USB Microdrive. Your mileage will vary, but it is recommended to stick with an SD card first, then perform upgrades and additional installations as needed later on.  As far as USB devices are concerned, you can use any USB storage device/keydrive that is recognized by the usb mass-storage driver in Linux.</p>
<p>Please note that the version of Bento I was running is usable however it did not appear that the sound card was operational. Since I am intending to use this as an external serial console, this was not a deal breaker for me.</p>
<h3>Installation (SD Card Only)</h3>
<p>Bento-linux comes in two parts. One part is for a FAT16 partition placed at the beginning of the SD card and it contains the boot commands needed to tell u-boot (the Netbook&#8217;s bootloader) how to boot the linux kernel and the root filesystem.  The other part contains the linux kernel and the filesystem in an EXT3 filesystem and will contain all the files needed to run Linux.</p>
<ol>
<li>You will need to start with an SD card at least 1GB in size.  I used a 2GB which gave me some room to play around on and of course the bigger, the better.</li>
<li>Partition the SD card with a 20MB FAT16 partition at the beginning of the card and the rest of the disk space can be allocated for an EXT3 partition.  Do not create a swap partition.</li>
<li>Download the file <a title="FAT partition for Bento Linux" href="http://www.yourwarrantyisvoid.com/downloads/files/fatpart.tgz" target="_blank">fatpart.tgz</a> and extract it into the root of the FAT partition on the SD card.</li>
<li>Download the file <a title="EXT3 partition file for Bento Linux" href="http://www.yourwarrantyisvoid.com/downloads/files/extpart.tgz" target="_blank">extpart.tgz</a> and extract it into the root of the EXT3 partition of the SD card.</li>
<li>Unmount the card and insert into the Sylvania&#8217;s SD cardslot and power on the machine. It should boot the Bento Linux distribution</li>
</ol>
<h3>Installation (SD Card + USB stick)</h3>
<p>This setup does not require special partitioning, however it does require that the SD card be formatted FAT16.   You will also need a USB storage device formatted EXT3.</p>
<ol>
<li>Download the file <a href="http://www.yourwarrantyisvoid.com/downloads/files/fatpartusb.tgz" target="_blank">fatpartusb.tgz</a> and extract it to the root of the FAT formatted SD card.</li>
<li>Download the file extpart.tgz and extract it to the root of the EXT3 formatted USB stick (or hard drive).</li>
<li>Insert the SD card into the Sylvania&#8217;s SD slot and insert the USB stick into a free USB port on the Sylvania.</li>
</ol>
<p>In either instance, when you first boot the distro, it will simply bring you to a console prompt and you are good to go.  There are a couple of things you may want to do:</p>
<ul>
<li>(Pretty much required)  Set a root password.</li>
<li>Install fluxbox (light weight graphical interface) and wicd for wireless control.</li>
<li>Install aurora (lightweight firefox lookalike)</li>
<li>Install other applications though apt-get as desired.</li>
</ul>
<p>Although the bento-linux site is no longer in existence, it appears that all the repositories that come with the distribution point to the arm ports of the official Debian repositories.  Prior to them going offline, I saw a note about Bento-Linux had the sources for the WM8505 however it appears that VIA has recently released the sources for the WM8585/VT8505 chips that drive the netbook so if you have any custom drivers, it appears that now there is an easier method for getting the drivers compiled in.  I am not a kernel compiler expert so I can&#8217;t advise on this process, however some brief research does seem to indicate that there is some element of truth to this.</p>
<h3>Linux Impressions and final words</h3>
<p>After getting the Bento Linux distribution working comfortably in the netbook, I played around with it and made some tweaks here and there that did give some notable boost in performance.   If you are using a spinning platter form of storage, creation of a  swap file or swap partition is recommended as it will give you a performance boost.  Attempting to make a swap file on the SD card or on a solid-state USB drive are not recommended because of the performance hit when writing to these devices and also due to the issue of &#8220;burn-in&#8221; when a storage cell is written to frequently.  I found that the device works decently enough for quick tasks and light webpages however it will not handle flash at all, nor will it be able to render sites with large amounts of images.  In my testing, I was able to use this device to configure Cisco switches and other devices through a USB-Serial adapter and Linux&#8217;s &#8220;minicom&#8221; terminal emulator.</p>
<p>While I believe it was a valiant effort by Sylvania to enter into the netbook market, I do believe that they should have done more research.  The Sylvania netbook, even running Linux and with all the performance tweaks mentioned, still is easily beat by Asus&#8217; first offerings into the Netbook market. The two biggest things that seem to harm this device are the lack of RAM in the system (mine only has 128MB RAM) and the sub-par processor less than 1GHz.  If you have one, then you may be able to make it work for you, however if you are considering one, I&#8217;d stay clear.  It&#8217;s not worth the price they are asking for it at CVS.</p>
<p>A couple of comments left by Syed and Dave to the original CVS netbook post indicates that there are people out there that are able to get Android running on this device.  If you have information or an article written on how you did it, let me know in the comments.  I&#8217;m interested in trying it out and finding out what works on this machine.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yourwarrantyisvoid.com/2011/07/25/cvs-netbook-revisited/feed/</wfw:commentRss>
		<slash:comments>30</slash:comments>
		</item>
		<item>
		<title>Building Snort and Nessus &#8211; Ubuntu IDS Part 3</title>
		<link>http://www.yourwarrantyisvoid.com/2011/05/20/building-snort-and-nessus-ubuntu-ids-part-3/</link>
		<comments>http://www.yourwarrantyisvoid.com/2011/05/20/building-snort-and-nessus-ubuntu-ids-part-3/#comments</comments>
		<pubDate>Fri, 20 May 2011 16:01:31 +0000</pubDate>
		<dc:creator>firestorm_v1</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[How-To's]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://www.yourwarrantyisvoid.com/?p=851</guid>
		<description><![CDATA[&#160; In this final article in the three part Ubuntu IDS series, we will go over installing, compiling and configuring Snort and Nessus on our new IDS device.  We will use Snort to analyze traffic as seen by the IDS and we will use Nessus to perform vulnerability testing on the network. The process for [...]]]></description>
			<content:encoded><![CDATA[<p>&nbsp;</p>
<p><a rel="attachment wp-att-852" href="http://www.yourwarrantyisvoid.com/2011/05/20/building-snort-and-nessus-ubuntu-ids-part-3/watchtower/"><img class="aligncenter size-medium wp-image-852" title="Watchtower" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/03/Watchtower-300x199.jpg" alt="" width="300" height="199" /></a>In this final article in the three part Ubuntu IDS series, we will go over installing, compiling and configuring Snort and Nessus on our new IDS device.  We will use Snort to analyze traffic as seen by the IDS and we will use Nessus to perform vulnerability testing on the network. The process for installing Snort will also cover installing SnortReport provided by Symmetrix Technologies so we can translate Snort&#8217;s cryptic messages into a more readable format that we can take action on.  Read on as we wrap up the installation and finish our IDS device.</p>
<p><span id="more-851"></span>This article is divided into three sections. The first section will cover installing Snort, then we will move on to customizing Snort beyond the steps covered in the first section for our specific installation.  Finally we will end with installing Nessus.</p>
<h2>1:  Installing Snort</h2>
<p>Admittedly, this was the longest part in the series. I had tried manually to compile and install Snort from sources over and over again and wasn&#8217;t getting anywhere fast.  I had performed research over and over again on what options to use and was no further along than when I had unzipped the sources.  Luckily my research finally turned up a complete HOWTO article written by Symmetrix Technologies which provided instructions on how to compile and set up Snort.  You can download their HOWTO from this site:  <a href="http://www.symmetrixtech.com/download.html">http://www.symmetrixtech.com/articles/004-snortinstallguide286.pdf</a></p>
<p><strong>There are some discrepancies that you must take note of:</strong> If you are using the bonded interface as described in the prior articles, you will need to use the interface &#8220;bond0&#8243; instead of the document&#8217;s provided eth1 interface for monitoring.  If you monitor an ethX interface, you will only get half of the conversation, and since most of Snort&#8217;s ability to detect traffic relies on analyzing stimulus and the responses to that stimulus, you will be severely cutting down on Snort&#8217;s effectiveness.</p>
<h2>2: Snort Tuning</h2>
<p>If you&#8217;re this far in, then it&#8217;s safe to assume that you have already downloaded Snort, the associated ruleset and have SnortReport installed and running.  There are some things that the Snort installation howto did not entirely touch on and these are things that we will cover here.</p>
<p><strong>Adding BPF to /etc/init.d/rc.local</strong></p>
<p>One of the things missing from the Installation HOWTO was to add a BPF expression to the snort command line. BPF stands for &#8220;Berkeley Packet Filter&#8221; and is used by Snort and tcpdump to control what traffic is being analyzed by the respective tool.  In our configuration, we need to add an exception for the IDS&#8217;s management traffic otherwise when we install and run Nessus, we will end up triggering a ton of alerts.</p>
<p>Edit the /etc/rc.local file and locate the snort line.  Add &#8221; not host 192.168.0.253&#8243; to the end of the snort line. Replace 192.168.0.253 with that of the IP of the management interface of your IDS.  This is the BPF syntax that tells it to monitor your network but not the IP of your IDS device. By adding it to the end of the snort command, we are effectively telling Snort to not listen to the traffic generated by Nessus when we decide to fire it off.</p>
<p><strong>Password Protect SnortReport:</strong></p>
<p>Regardless of whether or not your IDS device can be reached from the Internet, there exists several vulnerabilities in SnortReport including one that allows potential code execution.  This could allow someone that knows you run SnortReport to execute code on your IDS and would be counterproductive to our efforts.  Until SnortReport has been fixed by SymmetrixTech, we will have to use a more basic method of securing it.  In order to provide minimal protection for SnortReport, we will add .htaccess protection to the directory that SnortReport was installed in so that way only authorized people will have access to SnortReport.</p>
<p>As root, we will use htpasswd to create the password file.  If you forget it later on, you can recreate the file easily using the below steps. Use the below command to make the password file and replace &#8220;joe&#8221; with that of your desired username.</p>
<p><strong># htpasswd -c /var/snortreportpasswd joe</strong></p>
<p>Now, we need to create a .htaccess file in /var/www/snortreport-1.3.1 to reference it.  Copy the below code and enter it into /var/www/snortreport-1.3.1/.htaccess and don&#8217;t forget the . in the filename.</p>
<pre>AuthName "SnortReport"
AuthType Basic
AuthUserFile /var/snortreportpasswd
Require valid-user
</pre>
<p>Finally, there is one more change we need to make to Apache2 to get the .htaccess protection working.  Edit /etc/apache2/sites-available/default and look for the clause that looks like the one below:</p>
<pre>&lt;Directory /var/www/&gt;
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
&lt;/Directory&gt;</pre>
<p>Change the &#8220;<strong>AllowOverride None</strong>&#8221; to &#8220;<strong>AllowOverride All&#8221;</strong> and then restart apache2 via <strong>/etc/init.d/apache2 restart</strong> . Now try it out by going to http://(your IDS IP address)/snortreport-1.3.1/alerts.php. You should  get a password prompt. Type in the password that you created using the htpasswd command earlier and you should see a green page that says SnortReport.</p>
<p>When you first load the page, you will see two dropdowns for Timeframe and Day.  If your IDS has received any incidents, you will see it show the incidents here.   Clicking on the incident summary will show more details including the source and destination IP addresses. Clicking on the IP will return correlated events that include the source or destination IP you clicked on and will show packet payloads and IP addressing information.</p>
<p>Now that you have a way to read the incidents that the IDS receives, it&#8217;s up to you to decide whether or not the incidents generated are something to take action against. However, installing an IDS is only one half of the solution.  In order to be aware of the effect an attack may have on your network, you first must know what vulnerabilities exist on your network.  For that, we turn to the free vulnerability scanner, Nessus.</p>
<h2>3: Installing Nessus</h2>
<p>Nessus is widely used as a professional commercial-grade vulnerability scanner. It can generate reports that indicate per host what vulnerabilities exist and can provide information on where to go to learn more about patching or mitigating the threat.  Keep in mind that while Nessus is often used on Linux, it is a commercial product.  It does have a home version which we will be using in our installation however the home version can not be used in a commercial environment.</p>
<p>The Nessus HomeFeed provides your Nessus installation with the most up-to-date vulnerability detection methods and signatures.  Access to the HomeFeed does come at a cost, however the benefits of having a vulnerability scanner outweigh the loss of a couple of features. Most notably, a feature that is only available to their commercial feed is that you can not set up recurring scans of you home network, e.g. you can&#8217;t tell the IDS to automatically scan your network and generate reports on a regular schedule.  The only other limitation that I have been able to find is that the scans are limited to 16 active hosts per report so if you have 32 hosts, you will need to run two scans. Despite the two limitations mentioned above, Nessus is still a great scanner, and will work quite well for identifying vulnerabilities on your network.</p>
<p>All that being said, let&#8217;s get started.</p>
<p>First off, head to Tenable Security&#8217;s website at <a title="Nessus Security" href="http://www.tenable.com/products/nessus/nessus-homefeed" target="_blank">http://www.tenable.com/products/nessus/nessus-homefeed</a> and register to receive your activation code. Keep your email handy, you will need it later.</p>
<p>Next, head to <a href="http://www.tenable.com/products/nessus/nessus-download-agreement" target="_blank">http://www.tenable.com/products/nessus/nessus-download-agreement</a> and agree to the license, then download the Ubuntu debian package that is appropriate for your distribution.  Since this tutorial is based on using Ubuntu 10.04, I downloaded the Ubuntu 10.04 32 bit version. Although the filename says &#8220;ubuntu910&#8243;, this version was recommended by Tenable as the version to use for 10.04.</p>
<p>Now, SCP the installation package to the IDS and then use <strong>dpkg -i Nessus-4.4.1-ubuntu910_i386.deb</strong> to install it into the server. <strong>Please note:</strong> If your Ubuntu Server is running a 64 bit kernel, please download the 64bit version of Nessus.</p>
<p>Once installed, you will need to add a Nessus user to the service so you can login.  Nessus users are seperate from OS users, so you can have multiple users without having to add multiple users to the system.  To start this process, run <strong>/sbin/nessus-adduser</strong> and follow the prompts.  For the first user that you add, you will want to add an administrative user. This user will be able to adjust Nessus&#8217;s scan policies, behaviors and other settings within Nessus.</p>
<p>Now that you&#8217;ve added a user, you will need to register your Nessus installation using the HomeFeed code in your email.  Run the command <strong>/opt/nessus/bin/nessus-fetch &#8211;register &lt;Activation Code&gt;</strong> and allow it to complete the installation. Substitute <strong>&lt;Activation Code&gt;</strong> with the HomeFeed code in the email.  <strong>Please note:</strong> This step may take a considerable amount of time due to the fact that Nessus will download and update itself according to the HomeFeed subscription.  This only took about an hour on my system, your mileage may vary depending on Internet connectivity speeds.</p>
<p>Now that the Nessus service is installed, registered and updated, it&#8217;s time to test the installation.  Open a web browser and go to <strong>https://your-ids-ip-address:8834</strong> .  If you are running Firefox and are using Noscript, AdblockPlus or Flashblock, you will need to add exceptions for Javascript and Flash for the IDS IP.  This is required as the Nessus UI relies entirely on Javascript and Flash.</p>
<p>Now that you have Nessus installed, it is <strong>highly</strong> recommended to take a read through the Nessus User&#8217;s Guide: <a href="http://cgi.tenable.com/nessus_4.4_user_guide.pdf" target="_blank">http://cgi.tenable.com/nessus_4.4_user_guide.pdf</a> While Nessus is a vulnerability scanner, some of the tests it performs can cause unpredictable results. It is recommended to set up a &#8220;safe&#8221; scan that performs basic testing and then set up a &#8220;full&#8221; scan for aggressive testing.</p>
<h3>How to read the scan results:</h3>
<p>Once you have made it through the User&#8217;s Guide and have performed your first scan, you can download or view the report.  The report is listed according to IP address, then service name, then vulnerability. Each vulnerability will include the service name, port, protocol, related CVE information (links to the CVE database for more information), as well as common fixes for the vulnerability.</p>
<p>I recommend taking a look at the vulnerability list in this order:</p>
<ol>
<li>Externally accessible services: A vulnerability in Apache that listens to the outside world threatens your internal network.  Address this first!</li>
<li>Internally accessible services on the same server as external services:  Should the external service be compromised, internal services could be used to further compromise the network.</li>
<li>Internally accessible services: A service listening internally may not pose much of a threat, but may be a possible point of compromise should another host get infected.  ( A common example is a weakness in older versions of Samba that would allow for remote code execution.)</li>
</ol>
<p>Generally speaking, it is a good idea to keep up to date with all service packs, updates and patches as this will prevent any known exploits from turning into full-blown worms.  Remember, it only takes one vulnerability to get compromised.</p>
<h2>Final thoughts:</h2>
<p>This has definitely been quite a project. I have learned a whole lot about network security in the course of my GCIA training and in building this project. I honestly think that building an IDS device from scratch is a great way to get acquainted with network security and how to perform vulnerability assessments.  Using Snort Report to analyze suspicious traffic and incoming threats and using Nessus to identify vulnerabilities in your system will help your home network stay secure against the ever evolving threats going around the Internet.</p>
<p>Always remember that security is no use  if the warnings go unheeded.  While you don&#8217;t have to turn into a complete security nut, make it a good habit to take a look at Snort Report once a week at least.  Personally, I record the number of events logged and if it changes, I then investigate further however I haven&#8217;t picked up any incidents in the last month so for me it&#8217;s a pretty easy check.  If you find yourself with tons of IRC events and you don&#8217;t use IRC, it&#8217;s very possible that you have an active trojan on your hands and may warrant further investigation.</p>
<p>I hope you had fun and learned a lot from this project. I had a lot of fun building it and working out the kinks to make it all work together.  If you have any comments or questions, please leave me a comment and I&#8217;ll do my best to answer.</p>
<p>FIRESTORM_v1</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yourwarrantyisvoid.com/2011/05/20/building-snort-and-nessus-ubuntu-ids-part-3/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Setting up bonding networking -Ubuntu IDS Part 2</title>
		<link>http://www.yourwarrantyisvoid.com/2011/05/04/building-an-ubuntu-ids-part-2/</link>
		<comments>http://www.yourwarrantyisvoid.com/2011/05/04/building-an-ubuntu-ids-part-2/#comments</comments>
		<pubDate>Wed, 04 May 2011 16:01:59 +0000</pubDate>
		<dc:creator>firestorm_v1</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[How-To's]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://www.yourwarrantyisvoid.com/?p=847</guid>
		<description><![CDATA[In an earlier article, I demonstrated how you can build a passive monitoring device for an Ethernet network as the first part to a three part project to build a home IDS device.  In this article, the second in the series, I will describe how to set up the networking for an IDS using the [...]]]></description>
			<content:encoded><![CDATA[<p><a rel="attachment wp-att-848" href="http://www.yourwarrantyisvoid.com/2011/05/04/building-an-ubuntu-ids-part-2/cctvwall/"><img class="aligncenter size-medium wp-image-848" title="CCTV Wall" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/03/CCTVwall-300x199.jpg" alt="" width="300" height="199" /></a></p>
<p>In an earlier article, I demonstrated how you can build a passive monitoring device for an Ethernet network as the first part to a three part project to build a home IDS device.  In this article, the second in the series, I will describe how to set up the networking for an IDS using the passive tap that I built earlier.This setup will involve using a technique called bonding to take two physical interfaces and bond them together, creating a logical interface that we can use for Snort.  This article will also explain where is the best location to place the tap and what you can expect to see once the networking is set up using common Linux utilities like tcpdump.</p>
<p><span id="more-847"></span></p>
<h2>Requirements</h2>
<ul>
<li>A Passive Tap as mentioned in &#8220;<a href="http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/" target="_blank">Build a Passive Ethernet Tap</a>&#8221; or similar device.</li>
<li>Three network cards or a single network card with  three interfaces.</li>
<li>A new installation of Ubuntu Server. (I am using Ubuntu Server 10.04LTS).</li>
<li>Beer. (Always)</li>
</ul>
<p>The requirements for this project aren&#8217;t that extensive and chances are you have most if not all the equipment you need in your parts bin. The most significant item in this list is the three network cards.  If you followed the steps in my first article in this series, you already have a machine with two or three network cards in it so you&#8217;re pretty much there. If not, then go ahead and get three network cards in your Ubuntu server and ensure that all three cards re properly recognized by the system even if there&#8217;s no IP address. for them.</p>
<p>The first two network cards will be combined together to form the monitoring interface while the third card will be for our management interface.  The management interface will be assigned an IP address and will be how we acccess the server&#8217;s commandline (via SSH), and the scanning and reporting tools we will install in Part 3.</p>
<h2>Getting things set up</h2>
<p>With the proper hardware in hand, we can now set about performing the configuration necessary to getting our interfaces configured properly. In the code below, you can see the interfaces (eth0, eth1 and eth2) and that eth0 has been configured with an IP address.  If you haven&#8217;t configured yours with an IP address, this will be covered while we perform the configuration.</p>
<pre>matt@ids-01:~$ ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:18:f3:18:1c:25 
 inet addr:192.168.0.222  Bcast:192.168.0.255  Mask:255.255.255.0
 inet6 addr: fe80::218:f3ff:fe18:1c25/64 Scope:Link
 UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
 RX packets:45458 errors:0 dropped:0 overruns:0 frame:0
 TX packets:23861 errors:0 dropped:0 overruns:0 carrier:2
 collisions:0 txqueuelen:1000
 RX bytes:55984695 (55.9 MB)  TX bytes:2326303 (2.3 MB)

eth1      Link encap:Ethernet  HWaddr 00:e0:b6:00:a2:06 
 UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
 RX packets:11505094 errors:2 dropped:0 overruns:0 frame:2
 TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:1000
 RX bytes:3057886364 (3.0 GB)  TX bytes:218 (218.0 B)

eth2      Link encap:Ethernet  HWaddr 00:e0:b6:00:a2:06 
 UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
 RX packets:8061127 errors:1 dropped:0 overruns:0 frame:1
 TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:1000
 RX bytes:1434430796 (1.4 GB)  TX bytes:250 (250.0 B)

lo        Link encap:Local Loopback 
 inet addr:127.0.0.1  Mask:255.0.0.0
 inet6 addr: ::1/128 Scope:Host
 UP LOOPBACK RUNNING  MTU:16436  Metric:1
 RX packets:48 errors:0 dropped:0 overruns:0 frame:0
 TX packets:48 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:3948 (3.9 KB)  TX bytes:3948 (3.9 KB)
</pre>
<p>In this output, you can see eth0 is my management interface as it has been assigned an IP, eth1 and eth2 are both going to become a new interface called bond0.  When we set up Snort, we will use bond0 as our monitoring interface so that way we can take advantage of Snort&#8217;s stateful analysis and because it will be critical for any network analysis to hear both sides of the conversation on the passive tap.</p>
<p>In order to set up bonding, we will need to install the <strong>ifenslave</strong> package.  As root, run the below command:</p>
<p># <strong>apt-get install ifenslave</strong></p>
<p>Once apt-get completes, let&#8217;s check a few things.  First, let&#8217;s take a look at <strong>/etc/modprobe.d/aliases.conf</strong>.  Make sure that the two lines below appear in the file:</p>
<p><strong>alias bond0 bonding</strong><br />
<strong>options mode=0 miimon=100 downdelay=200 updelay=200</strong></p>
<p>If you will be making more than one bonding interface, you will need to add another alias line to coincide with the bond interfaces you wish to add (bond1, bond2, etc..) and you will need to add <strong>max_bonds=X</strong> to the end of the options line. Set X to the maximum number of bonding interfaces you will be using.</p>
<p>Now this is where things get interesting.  In order to test this out, we will bond the interfaces using the command below:</p>
<p><strong># ifenslave bond0 eth1 eth2</strong></p>
<p>It does not matter which order the two eth interfaces appear, however bond0 must come first.  This command tells the Linux kernel to take eth1 and eth2 and pair them together into a single interface (bond0).  Now that we have done that, <strong>ifconfig -a</strong> will present a new interface:</p>
<pre>root@ids-01:~# ifconfig -a
bond0     Link encap:Ethernet  HWaddr 00:e0:b6:00:a2:06 
 inet6 addr: fe80::2e0:b6ff:fe00:a206/64 Scope:Link
 UP BROADCAST RUNNING PROMISC MASTER MULTICAST  MTU:1500  Metric:1
 RX packets:19568527 errors:3 dropped:0 overruns:0 frame:3
 TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:198240524 (198.2 MB)  TX bytes:468 (468.0 B)

eth0      Link encap:Ethernet  HWaddr 00:18:f3:18:1c:25 
 inet addr:192.168.0.222  Bcast:192.168.0.255  Mask:255.255.255.0
 inet6 addr: fe80::218:f3ff:fe18:1c25/64 Scope:Link
 UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
 RX packets:45907 errors:0 dropped:0 overruns:0 frame:0
 TX packets:24117 errors:0 dropped:0 overruns:0 carrier:2
 collisions:0 txqueuelen:1000
 RX bytes:56024505 (56.0 MB)  TX bytes:2411029 (2.4 MB)

eth1      Link encap:Ethernet  HWaddr 00:e0:b6:00:a2:06 
 UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
 RX packets:11506043 errors:2 dropped:0 overruns:0 frame:2
 TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:1000
 RX bytes:3058301702 (3.0 GB)  TX bytes:218 (218.0 B)

eth2      Link encap:Ethernet  HWaddr 00:e0:b6:00:a2:06 
 UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
 RX packets:8062484 errors:1 dropped:0 overruns:0 frame:1
 TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:1000
 RX bytes:1434906118 (1.4 GB)  TX bytes:250 (250.0 B)

lo        Link encap:Local Loopback 
 inet addr:127.0.0.1  Mask:255.0.0.0
 inet6 addr: ::1/128 Scope:Host
 UP LOOPBACK RUNNING  MTU:16436  Metric:1
 RX packets:48 errors:0 dropped:0 overruns:0 frame:0
 TX packets:48 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:3948 (3.9 KB)  TX bytes:3948 (3.9 KB)
</pre>
<p>Now that we have the bonding interface up, we need to write the configuration in <strong>/etc/networking/interfaces</strong> so that they will be brought up at boot time.  After struggling with this for a few moments, I finally found out the proper rules needed in order to do this:</p>
<ol>
<li>You have to define your bonding interface first.</li>
<li>You must use an &#8220;<strong>up</strong>&#8221; statement to specify how to bring up the interfaces. We will be using the parameter <strong>promisc</strong> to ensure that the interfaces are ready for when we install Snort.</li>
<li>We must use bonding-specific statements to specify how the bonding interface will be created and for each interface&#8217;s role in the bonding configuration.</li>
</ol>
<p>Edit <strong>/etc/networking/interfaces</strong> and remove the existing information.  Add the below lines, but be sure to add the proper IP addressing information for your management interface.</p>
<pre># The primary network interface
auto eth0
iface eth0 inet static
 address 172.20.1.253
 netmask 255.255.255.0
 broadcast 172.20.1.255
 gateway 172.20.1.250

auto bond0
iface bond0 inet manual
 bond-slaves none
 bond-mode 0
 bond-miimon 100
 up ifconfig bond0 promisc up

auto eth1
iface eth1 inet manual
 up ifconfig eth1 promisc up
 bond-master bond0
 bond-primary eth1 eth2

auto eth2
iface eth2 inet manual
 up ifconfig eth2 promisc up
 bond-master bond0
 bond-primary eth1 eth2</pre>
<p>In the above configuration, the <strong>up</strong> parameter tells the network scripts to bring up the selected interface up with the promiscuous mode enabled so we can prepare the interfaces at boot time for  listening to network traffic. The <strong>bond-master</strong> and <strong>bond-primary</strong> parameters indicate which bonding interface the physical interface should be added to.  Granted for one bond interface it would appear faster to just single keywords however if you decide to set up multiple bonded interfaces, the keywords would lose meaning quickly.</p>
<p>When all is said and configured, reboot the computer.  When the computer comes back up, check <strong>ifconfig -a</strong> and see if you see something like the below.</p>
<pre>root@ids-01:~# ifconfig -a
bond0     Link encap:Ethernet  HWaddr 00:e0:b6:00:a2:06 
 inet6 addr: fe80::2e0:b6ff:fe00:a206/64 Scope:Link
 UP BROADCAST RUNNING PROMISC MASTER MULTICAST  MTU:1500  Metric:1
 RX packets:19570074 errors:3 dropped:0 overruns:0 frame:3
 TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:198918392 (198.9 MB)  TX bytes:468 (468.0 B)

eth0      Link encap:Ethernet  HWaddr 00:18:f3:18:1c:25 
 inet addr:172.20.1.253  Bcast:192.168.0.255  Mask:255.255.255.0
 inet6 addr: fe80::218:f3ff:fe18:1c25/64 Scope:Link
 UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
 RX packets:46106 errors:0 dropped:0 overruns:0 frame:0
 TX packets:24224 errors:0 dropped:0 overruns:0 carrier:2
 collisions:0 txqueuelen:1000
 RX bytes:56042559 (56.0 MB)  TX bytes:2427777 (2.4 MB)

eth1      Link encap:Ethernet  HWaddr 00:e0:b6:00:a2:06 
 UP BROADCAST RUNNING PROMISC SLAVE MULTICAST  MTU:1500  Metric:1
 RX packets:11506719 errors:2 dropped:0 overruns:0 frame:2
 TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:1000
 RX bytes:3058600599 (3.0 GB)  TX bytes:218 (218.0 B)

eth2      Link encap:Ethernet  HWaddr 00:e0:b6:00:a2:06 
 UP BROADCAST RUNNING PROMISC SLAVE MULTICAST  MTU:1500  Metric:1
 RX packets:8063355 errors:1 dropped:0 overruns:0 frame:1
 TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:1000
 RX bytes:1435285089 (1.4 GB)  TX bytes:250 (250.0 B)

lo        Link encap:Local Loopback 
 inet addr:127.0.0.1  Mask:255.0.0.0
 inet6 addr: ::1/128 Scope:Host
 UP LOOPBACK RUNNING  MTU:16436  Metric:1
 RX packets:48 errors:0 dropped:0 overruns:0 frame:0
 TX packets:48 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:3948 (3.9 KB)  TX bytes:3948 (3.9 KB)
</pre>
<h2>Now to install it&#8230;</h2>
<p>In order to install this machine where it will be most effective in your network, there are some things to consider:</p>
<ul>
<li>What kind of Internet access do you have? (Cable, DSL, FiOS, etc&#8230;..)</li>
<li>Does your ISP require running a program on your router to connect? (like PPPoE clients, RASPPPoE, others..)</li>
<li>What is considered the &#8220;edge&#8221; of your network?</li>
<li>Where is the location where the IDS would have most visibility to the network traffic generated by your computers either wired or wireless?</li>
</ul>
<p>In most corporate networks, there is a single switch that handles all the traffic for a network. This makes things a loss less complex as the network traffic is in one place however in most homes, this is simply not the case.  At least in my network, there&#8217;s at least four switches between the router (my edge) and the innermost device (my Wireless Access Point). Since I wanted all the traffic monitored, I elected to connect the passive tap between my router and the first switch.  Any internet activity generated by any device on the network will be monitored by the IDS and if malicious will generate an alert.  If you have only a couple of PCs that are wireless but have several embedded devices like gaming consoles or media streaming boxes (not media center PCs, more like Boxee boxes and the like) you may want to move the passive tap between your wireless access point and the switch connecting the embedded devices as they are a lot less likely to generate malicious traffic.  Your configuration may be different, but when in doubt, installing the passive tap and your soon-to-be IDS between your edge router and the rest of your network is a safe bet.</p>
<h2>What&#8217;s Next?</h2>
<p>We&#8217;ve covered how to build a passive tap. We just covered how to configure bonding for the passive tap.  In the final article in the series, we will discuss how to install Snort and make this machine into a full blown IDS device.</p>
<p>Happy Hacking!</p>
<p>&nbsp;</p>
<p>FIRESTORM_v1</p>
<p>&nbsp;</p>
<div id="_mcePaste" class="mcePaste" style="position: absolute; left: -10000px; top: 3862px; width: 1px; height: 1px; overflow: hidden;">root@ids-01:~# ifconfig -a<br />
bond0     Link encap:Ethernet  HWaddr 00:e0:b6:00:a2:06<br />
inet6 addr: fe80::2e0:b6ff:fe00:a206/64 Scope:Link<br />
UP BROADCAST RUNNING PROMISC MASTER MULTICAST  MTU:1500  Metric:1<br />
RX packets:19570074 errors:3 dropped:0 overruns:0 frame:3<br />
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0<br />
collisions:0 txqueuelen:0<br />
RX bytes:198918392 (198.9 MB)  TX bytes:468 (468.0 B)&nbsp;</p>
<p>bond1     Link encap:Ethernet  HWaddr 00:e0:b6:00:a2:04<br />
inet6 addr: fe80::2e0:b6ff:fe00:a204/64 Scope:Link<br />
UP BROADCAST RUNNING PROMISC MASTER MULTICAST  MTU:1500  Metric:1<br />
RX packets:24303821 errors:2 dropped:0 overruns:0 frame:2<br />
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0<br />
collisions:0 txqueuelen:0<br />
RX bytes:777005710 (777.0 MB)  TX bytes:468 (468.0 B)</p>
<p>eth0      Link encap:Ethernet  HWaddr 00:18:f3:18:1c:25<br />
inet addr:192.168.0.222  Bcast:192.168.0.255  Mask:255.255.255.0<br />
inet6 addr: fe80::218:f3ff:fe18:1c25/64 Scope:Link<br />
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1<br />
RX packets:46106 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:24224 errors:0 dropped:0 overruns:0 carrier:2<br />
collisions:0 txqueuelen:1000<br />
RX bytes:56042559 (56.0 MB)  TX bytes:2427777 (2.4 MB)</p>
<p>eth1      Link encap:Ethernet  HWaddr 00:e0:b6:00:a2:06<br />
UP BROADCAST RUNNING PROMISC SLAVE MULTICAST  MTU:1500  Metric:1<br />
RX packets:11506719 errors:2 dropped:0 overruns:0 frame:2<br />
TX packets:3 errors:0 dropped:0 overruns:0 carrier:0<br />
collisions:0 txqueuelen:1000<br />
RX bytes:3058600599 (3.0 GB)  TX bytes:218 (218.0 B)</p>
<p>eth2      Link encap:Ethernet  HWaddr 00:e0:b6:00:a2:06<br />
UP BROADCAST RUNNING PROMISC SLAVE MULTICAST  MTU:1500  Metric:1<br />
RX packets:8063355 errors:1 dropped:0 overruns:0 frame:1<br />
TX packets:3 errors:0 dropped:0 overruns:0 carrier:0<br />
collisions:0 txqueuelen:1000<br />
RX bytes:1435285089 (1.4 GB)  TX bytes:250 (250.0 B)</p>
<p>eth3      Link encap:Ethernet  HWaddr 00:e0:b6:00:a2:04<br />
UP BROADCAST RUNNING PROMISC SLAVE MULTICAST  MTU:1500  Metric:1<br />
RX packets:16316361 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:3 errors:0 dropped:0 overruns:0 carrier:0<br />
collisions:0 txqueuelen:1000<br />
RX bytes:3675415003 (3.6 GB)  TX bytes:238 (238.0 B)</p>
<p>eth4      Link encap:Ethernet  HWaddr 00:e0:b6:00:a2:04<br />
UP BROADCAST RUNNING PROMISC SLAVE MULTICAST  MTU:1500  Metric:1<br />
RX packets:7987460 errors:2 dropped:0 overruns:0 frame:2<br />
TX packets:3 errors:0 dropped:0 overruns:0 carrier:0<br />
collisions:0 txqueuelen:1000<br />
RX bytes:1396558003 (1.3 GB)  TX bytes:230 (230.0 B)</p>
<p>lo        Link encap:Local Loopback<br />
inet addr:127.0.0.1  Mask:255.0.0.0<br />
inet6 addr: ::1/128 Scope:Host<br />
UP LOOPBACK RUNNING  MTU:16436  Metric:1<br />
RX packets:48 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:48 errors:0 dropped:0 overruns:0 carrier:0<br />
collisions:0 txqueuelen:0<br />
RX bytes:3948 (3.9 KB)  TX bytes:3948 (3.9 KB)</p>
<p>root@ids-01:~#</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.yourwarrantyisvoid.com/2011/05/04/building-an-ubuntu-ids-part-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Build a Passive Ethernet Tap &#8211; Ubuntu IDS Part 1</title>
		<link>http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/</link>
		<comments>http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/#comments</comments>
		<pubDate>Wed, 06 Apr 2011 16:34:40 +0000</pubDate>
		<dc:creator>firestorm_v1</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[How-To's]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://www.yourwarrantyisvoid.com/?p=802</guid>
		<description><![CDATA[One of the things that the GCIA study has taught me is that being able to monitor the network your computer is on is a critical necessity to maintaining a secure network. Corporate environments can set up IDS devices to monitor traffic however monitoring doesn&#8217;t work unless you have proper connectivity to what you want [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/acousticcoupler/" rel="attachment wp-att-803"><img class="aligncenter size-medium wp-image-803" title="acoustic coupler" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/03/acousticcoupler-300x199.jpg" alt="Image courtesy of forums.overclockers.co.uk" width="300" height="199" /></a></p>
<p>One of the things that the GCIA study has taught me is that being able to monitor the network your computer is on is a critical necessity to maintaining a secure network. Corporate environments can set up IDS devices to monitor traffic however monitoring doesn&#8217;t work unless you have proper connectivity to what you want to monitor. Unfortunately, most of us don&#8217;t have central wiring in our house and expensive managed switches that can set up span sessions with which to monitor traffic in transit.  In this HOWTO, I will cover how to build your own monitoring connection that you can use on your own network to monitor traffic without breaking the bank. This article is first in a three part series on how to build your own home IDS for monitoring your network traffic. Look for the other two sections soon!<br />
<span id="more-802"></span></p>
<h2>A little bit more info first&#8230;</h2>
<p>In the early days of affordable Ethernet networking, devices called hubs (or repeaters) were used to bring the signals together from each workstation in order to allow the workstations to communicate with each other. When a packet was sent to the hub, the hub repeated the packet across all ports on the device and all other workstations would receive it, even if it was not destined for that particular workstation.  The hubs gave way to switches as networking technology became cheaper and faster. Unfortunately, the switches also changed the old way of signal transmission. When a workstation sends a packet to a switch, it is sent from the sender&#8217;s switch port  and arrives at  the switch port of the workstation that the packet is destined to. It does not get sent to other workstations&#8217; switch ports unlike the hub&#8217;s transmission method.  Because of the need for network monitoring, more advanced switches started offering monitor ports (Cisco calls them span sessions) that are used to forward all traffic that goes through a switch out of this specifically configured port.  This port would then be connected to the monitoring device and would allow the monitoring device to &#8220;listen&#8221; to all packets that traversed the switch.</p>
<p>The good thing is that most if not all managed switches support a monitor port however the bad thing is that a managed switch is way outside the pocketbook of most home network users.</p>
<h2>But why not use a hub?</h2>
<p>A hub would allow us to listen in on network traffic however a hub would degrade your network&#8217;s performance thanks to it&#8217;s lack of proper high speed flow control and its susceptability to collisions.  In my testing, I used a 100baseT hub between my firewall and my network and found that my previously rock solid network connection had dropped well below speed and would barely support YouTube streaming, much less Netflix.  Instead of using a hub and risking continued degradation, I decided to research another solution.</p>
<h2>So, what&#8217;s the solution and how do I use it?</h2>
<p>The solution is the Passive Tap.  This device sits between a unmanaged switch and a computer or router and allows a monitor device to listen in on the network connection between a computer and switch.  The word passive in this instance means that there is no way to detect the device&#8217;s presence. It does not have a MAC address, it does not repeat. For all intensive purposes, the tap does not exist.</p>
<p><a href="http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/passivetapmonitorsetup/" rel="attachment wp-att-804"><img class="aligncenter size-full wp-image-804" title="Passive Tap Monitor Setup" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/03/PassiveTapMonitorSetup.jpg" alt="" width="438" height="174" /></a></p>
<p>In the image above, we have connected the Passive Tap between a network switch and a monitored host in order to monitor traffic between the host and other machines on the network (in this case the Server).  This would be an ideal setup for monitoring traffic generated by the monitored host and the rest of the network with the focus being on the monitored host. In this configuration, the monitor device would pick up all traffic destined to or originating from the host and any broadcast traffic generated by the network.</p>
<p style="text-align: center;"><a href="http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/passivetapmonitorsetup2/" rel="attachment wp-att-873"><img class="size-full wp-image-873 aligncenter" title="Passive Tap Monitor Setup #2" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/03/PassiveTapMonitorSetup2.jpg" alt="Passive Tap Monitor Setup #2" width="438" height="174" /></a></p>
<p>This configuration is a bit different than the first image however the scope of the monitor device&#8217;s visibility has changed. Instead of just monitoring the Monitored Host, this configuration allows the monitor device to monitor any Internet traffic that passes between any host on the switch and the firewall. If there were additional devices connected to the switch (other desktops, an Xbox, a Wifi Access point, etc..) their communication with the Internet would also be monitored.  The only communication that would not get monitored would be communication between the devices plugged into the switch (for example the Monitored Host and a Wifi Accesspoint, etc.)</p>
<h2>Parts List</h2>
<p>In order to build a passive tap, you will need the following items.  The parts themselves cost me about $20 at a computer store which is a lot better than the $200 that some eBay sellers want.</p>
<ul>
<li>A cat-5 patch cord</li>
<li>A surface mount biscuit jack / modular mounting box. (See picture below)</li>
<li>Two CAT5 keystones (they don&#8217;t have to be green/red like mine)</li>
<li>Screwdriver</li>
<li>Wire cutters/blade</li>
<li><a href="http://en.wikipedia.org/wiki/Punch_down_tool" target="_blank">A M110 punch down tool</a> (If you have one, it makes the installation easier)</li>
<li>A monitoring computer with two network interfaces and Wireshark installed (windows) or tcpdump(linux)</li>
<li>A test computer (or device) with one network interface</li>
<li>A network switch.</li>
<li>Beer (optional)</li>
</ul>
<div id="attachment_805" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/parts/" rel="attachment wp-att-805"><img class="size-medium wp-image-805" title="Parts" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/03/Parts-300x225.jpg" alt="Parts" width="300" height="225" /></a><p class="wp-caption-text">Parts</p></div>
<p>Here&#8217;s an image of the parts. The biscuit jack on the left, the two keystones are in the center and the patch cord is on the right.</p>
<p>We&#8217;ll start off by first taking a look at the keystones up close.</p>
<div id="attachment_806" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/keystones/" rel="attachment wp-att-806"><img class="size-medium wp-image-806" title="Keystones" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/03/Keystones-300x225.jpg" alt="Keystones" width="300" height="225" /></a><p class="wp-caption-text">Keystones</p></div>
<p>These keystone jacks are wired up and marked in such a way that all you need to do to wire it up properly is to follow the color code. A closer inspection will reveal that there are small numbers in between the symbols for the wire positions. In <a href="http://www.infocellar.com/networks/cables/twisted-pair-cables.htm" target="_blank">this page on twisted pair wiring</a>, you can see that of the four pairs in a Cat-5 10/100 cable, only pairs 2 (white/orange) and 3(white/green) are used.  In order to properly receive both sides of the conversation on the wire, we will need to &#8220;tap&#8221; into both pairs and route them to the proper pins on the two keystones to each jack&#8217;s Pair 2 (receive pair) so that the data being sent can arrive at the NIC of our monitoring device.</p>
<p>If you scroll down to the section labeled &#8220;568A and 568 B Color Schemes&#8221;, you will see that the receive pair is on pins 3 and 6 of the diagram jacks.  Our keystones are similarly labelled and when we are done, we will have one pair of the Cat-5 patch cable going to pins 3 and 6 of one jack, and the other pair of the Cat-5 patch cable going to the other jack.</p>
<h2>Let&#8217;s get started.</h2>
<p>First off, it is important to understand that you must be able to do this WITHOUT NICKING OR CUTTING THE WIRES.  A cut or nick could result in either your tap not working properly or the tap getting all the data but your connected host doesn&#8217;t or any one of a whole handful of issues.  Thankfully, Cat-5 patch cords are not very expensive, but it still sucks to put a project on hold because a slip of the knife.</p>
<p>To start, lay out the patch cord and decide on where you want the tap.  Since the hosts are closer to my monitor machine, I&#8217;ve decided to create a short end and a long end with the tap being more towards one end.  You may want to have the tap in the middle or very close to one end of your patch.  It electrically does not matter.</p>
<p>Strip back about two to three inches of jacket so that you have something like below.</p>
<div id="attachment_807" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/strippedwires/" rel="attachment wp-att-807"><img class="size-medium wp-image-807" title="Stripped Wires" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/03/strippedwires-300x225.jpg" alt="Stripped Wires" width="300" height="225" /></a><p class="wp-caption-text">Stripped Wires</p></div>
<p>Mount the keystones in the surface mount box as shown below.</p>
<p>&nbsp;</p>
<div id="attachment_811" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/mounted-keystones/" rel="attachment wp-att-811"><img class="size-medium wp-image-811" title="mounted keystones" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/03/mounted-keystones-300x225.jpg" alt="mounted keystones" width="300" height="225" /></a><p class="wp-caption-text">mounted keystones</p></div>
<p>Now that they are mounted, we will then need to take a look at which pair of pins we need to match the wires up to. Below is a better side-view pic of the green jack in detail.  Please note, your jacks may appear different, but all CAT5 keystone jacks that I have seen have both a color designation and a numeric designation. Be sure to pay attention to which is which and where you are placing your wires otherwise it may not work.</p>
<div id="attachment_812" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/wiremarks/" rel="attachment wp-att-812"><img class="size-medium wp-image-812" title="Wire/Pin designations" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/03/wiremarks-300x225.jpg" alt="Wire/Pin designations" width="300" height="225" /></a><p class="wp-caption-text">Wire/Pin designations</p></div>
<p>You can click on the picture for a larger more detailed image.  In the above image (using the top set of colors as a guide) we see that the orange/white hash is pin 3 and the solid orange is pin 6. The same goes for the red jack (not shown).  That being said, untwist the orange and green wires, and place them into their respective slots. Make sure that the solid wire goes with the solid pin and the hashed wire goes with the hashed pin. A reversal here will cause the monitor port not to receive data and could affect your host/switch.</p>
<div id="attachment_815" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/readytocrimp/" rel="attachment wp-att-815"><img class="size-medium wp-image-815" title="Wires ready to crimp" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/03/readytocrimp-300x225.jpg" alt="Wires ready to crimp" width="300" height="225" /></a><p class="wp-caption-text">Wires ready to crimp</p></div>
<p>In the above photo, you can see that the white/orange pair are lightly inserted into the wire channels.  If you don&#8217;t have the M100 punch tool, you can get away with using the wire caps that came with your keystones.  These caps will push down the wire and crimp it into place over a metal pin that connects the wire to the pin in the jack.  When you are done, you will have something akin to the below:</p>
<div id="attachment_816" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/readytoclose/" rel="attachment wp-att-816"><img class="size-medium wp-image-816" title="Tap ready to close" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/03/readytoclose-300x225.jpg" alt="Tap ready to close" width="300" height="225" /></a><p class="wp-caption-text">Tap ready to close</p></div>
<p>Also of note: To act as a strain relief, I have added tiewraps on the cable. This will serve to protect the cable from getting yanked out and damaged.  In this picture, you can also see the two white caps that have punched the wires down in place. Reassemble the jack and make sure to install the screw in the lid if your jack has one.</p>
<div id="attachment_817" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/completedtap/" rel="attachment wp-att-817"><img class="size-medium wp-image-817" title="Completed Passive Ethernet Tap" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/03/completedtap-300x225.jpg" alt="Completed Passive Ethernet Tap" width="300" height="225" /></a><p class="wp-caption-text">Completed Passive Ethernet Tap</p></div>
<p>Here&#8217;s the completed tap in all it&#8217;s glory!</p>
<h2>Testing the Tap</h2>
<p>In order to test the tap, we need at least two computers, one of which must have two network adapters.  The computer with one network adapter will be our &#8220;test host&#8221; and the other computer will be our monitoring host.  On the test host, I have assigned the IP address 10.0.0.2 and on the monitoring computer, I have assigned one interface (eth0) with the IP of 10.0.0.1.  The monitoring interface (eth1) will have no IP address assigned to it and will be for testing the tap.  Remember that as far as the test host is concerned, the tap is just a CAT-5 patch cable.</p>
<p>Before proceeding, mark the passive tap where the Ethernet cables come out as A and B.  This will be important as this test will also help us label which side of the conversation we are listening to.  One side will be considered &#8220;Network to Host&#8221; and the other will be considered &#8220;Host to Network&#8221;.  It is imperative that we get both sides of the conversation, each side represented by one of the two keystone jacks. While it might not be important now, later on when you use this tap for something else (like an IDS project), you will need to know which side of the conversation you are listening to.</p>
<p>To get your test rig set up, connect the long side (side A in my case) of the tap cable to the switch.  Connect the short side (side B in my case) to the test host.  Connect the ethernet interface on the monitoring machine to the switch, but leave the  unmonitored interface disconnected.  Keep in mind that on my monitoring machine, eth0 was the interface with the IP address, and eth3 was the interface that will be used for monitoring. I&#8217;m using Linux on my system, you may need to make adjustments where needed.</p>
<ul>
<li>On the monitoring host, ensure that you can ping the test host before hooking up the monitoring interface to the tap.</li>
<li>On the monitoring host, open two terminal windows</li>
<li>In the first window, start tcpdump using this command:  <strong>sudo tcpdump -i eth3 -nvs0 -c 10 ip[9]=1</strong>This translates to start tcpdump on eth3, no host resolution (-n), verbose mode (v), no snapshot length (s0), for a count of 10 packets (-c 10) and only on ICMP protocol (ip[9]=1).</li>
<li>Attach the monitoring interface to one of the two keystones.  I picked the red jack.</li>
<li>In the second window, ping the test host using the -c 5 parameter:  <strong>ping testmachine -c 5</strong> The -c 5 tells ping to try 5 times.</li>
<li>You should see the below text in your ping window:</li>
</ul>
<p>&nbsp;</p>
<pre>$ ping  testmachine -c 5
PING testmachine (10.0.0.2) 56(84) bytes of data.
64 bytes from 10.0.0.2: icmp_seq=1 ttl=64 time=7.25 ms
64 bytes from 10.0.0.2: icmp_seq=2 ttl=64 time=0.685 ms
64 bytes from 10.0.0.2: icmp_seq=3 ttl=64 time=0.719 ms
64 bytes from 10.0.0.2: icmp_seq=4 ttl=64 time=0.746 ms
64 bytes from 10.0.0.2: icmp_seq=5 ttl=64 time=0.704 ms</pre>
<p>&nbsp;</p>
<ul>
<li>Your TCPDUMP window should show something like this:</li>
</ul>
<p>&nbsp;</p>
<pre>21:48:59.093624 IP (tos 0x0, ttl 64, id 27270, offset 0, flags [DF], proto ICMP (1), length 84)
 10.0.0.2 &gt; 10.0.0.1: ICMP echo reply, id 24899, seq 1, length 64
21:49:00.088502 IP (tos 0x0, ttl 64, id 49871, offset 0, flags [DF], proto ICMP (1), length 84)
 10.0.0.2 &gt; 10.0.0.1: ICMP echo reply, id 24899, seq 2, length 64
21:49:01.087486 IP (tos 0x0, ttl 64, id 36772, offset 0, flags [DF], proto ICMP (1), length 84)
 10.0.0.2 &gt; 10.0.0.1: ICMP echo reply, id 24899, seq 3, length 64
21:49:02.086630 IP (tos 0x0, ttl 64, id 27025, offset 0, flags [DF], proto ICMP (1), length 84)
 10.0.0.2 &gt; 10.0.0.1: ICMP echo reply, id 24899, seq 4, length 64
21:49:03.085505 IP (tos 0x0, ttl 64, id 28037, offset 0, flags [DF], proto ICMP (1), length 84)
 10.0.0.2 &gt; 10.0.0.1: ICMP echo reply, id 24899, seq 5, length 64</pre>
<p>&nbsp;</p>
<ul>
<li>Keep in mind that there are two packets associated with ping. One is an <strong>ICMP Echo Request</strong> and the other is an <strong>ICMP Echo Reply</strong> In this case I received the echo reply which means that the red jack is for &#8220;Host to Network&#8221; monitoring or B-&gt;A. If you got ICMP echo request, then your jack is A-&gt;B.</li>
<li>Mark the jack as B-&gt;A and continue testing. At this point, we know that our tap at least hears half the conversation.</li>
<li>Switch the monitor interface to the other jack (Mine is green) and rerun the ping.  Your ping should show the below just like before:</li>
</ul>
<p>&nbsp;</p>
<pre>$ ping 10.0.0.2 -c 5
PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.
64 bytes from 10.0.0.2: icmp_seq=1 ttl=64 time=9.69 ms
64 bytes from 10.0.0.2: icmp_seq=2 ttl=64 time=0.705 ms
64 bytes from 10.0.0.2: icmp_seq=3 ttl=64 time=0.663 ms
64 bytes from 10.0.0.2: icmp_seq=4 ttl=64 time=0.722 ms
64 bytes from 10.0.0.2: icmp_seq=5 ttl=64 time=0.714 ms</pre>
<p>&nbsp;</p>
<ul>
<li>This time, however, the TCPDUMP output should have changed:</li>
</ul>
<p>&nbsp;</p>
<pre>22:00:28.084339 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto ICMP (1), length 84)
 10.0.0.1 &gt; 10.0.0.2: ICMP echo request, id 40269, seq 1, length 64
22:00:29.077220 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto ICMP (1), length 84)
 10.0.0.1 &gt; 10.0.0.2: ICMP echo request, id 40269, seq 2, length 64
22:00:30.076215 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto ICMP (1), length 84)
 10.0.0.1 &gt; 10.0.0.2: ICMP echo request, id 40269, seq 3, length 64
22:00:31.075218 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto ICMP (1), length 84)
 10.0.0.1 &gt; 10.0.0.2: ICMP echo request, id 40269, seq 4, length 64
22:00:32.074214 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto ICMP (1), length 84)
 10.0.0.1 &gt; 10.0.0.2: ICMP echo request, id 40269, seq 5, length 64</pre>
<p>&nbsp;</p>
<ul>
<li>Just like before, I received 5 packets however last time I got the ICMP echo reply, this time I got the ICMP echo request.  This means that the green jack is the A-&gt;B connector, that is Network to Host. Mark it as appropriate.</li>
</ul>
<p>If you&#8217;re at this point, then you have demonstrated that the tap works.  It allows the test host to communicate with the network unimpeded, it also allows the monitoring of host to network and network to host data.  My passive tap looks like the one below:</p>
<div id="attachment_818" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/labelled/" rel="attachment wp-att-818"><img class="size-medium wp-image-818" title="Finished Passive Tap" src="http://www.yourwarrantyisvoid.com/wp-content/uploads/2011/03/labelled-300x225.jpg" alt="Finished Passive Tap" width="300" height="225" /></a><p class="wp-caption-text">Finished Passive Tap</p></div>
<h2>Now what to do?</h2>
<p>At this point, with a good passive tap in hand, you have a whole bunch of things you can do. You could:</p>
<ol>
<li>Establish an IDS for your network (my original plan)</li>
<li>Monitor a host&#8217;s traffic exchange with the network/Internet.</li>
<li>Perform traffic reconstruction for analysis.</li>
<li>Monitor network communication between your Wireless access point and the rest of your network</li>
</ol>
<h2>Troubleshooting</h2>
<p>Unfortunately, I can&#8217;t account for every situation however there may be some situations where the tcpdump test doesn&#8217;t exactly work as planned.  Here&#8217;s some common solutions if your tests don&#8217;t work quite right<strong>:</strong></p>
<p><strong>I can see the A-&gt;B traffic, but can&#8217;t see the B-&gt;A traffic. The ping window shows the host responds. (or)</strong></p>
<p><strong>I can see the B-&gt;A traffic but can&#8217;t see the A-&gt;B traffic. The ping window shows the host responds. (or)</strong></p>
<p><strong>I can not see any traffic, but the ping window shows the host responds.</strong></p>
<p><strong> </strong>Check your wires on the keystone and make sure the wire went down onto the metal pin. Sometimes when using the caps to crimp down the wires, one of the wires will shift at the last second<strong>.<br />
</strong></p>
<p><strong>I can see the ICMP Echo Request  on one port but I see nothing on the other. The ping window shows that the host does not respond.</strong></p>
<p>Check to see that the wires didn&#8217;t rip apart or that they were not nicked in the construction process.</p>
<h2>Last Thoughts</h2>
<p>Even if you don&#8217;t plan on building a home IDS, having a passive tap in your toolbox is a good idea.  You never know when you will need to intercept and analyze traffic between two devices on a network. This device will allow you to do so with minimal effort and cost all while allowing the host to chatter away unimpeded by the monitoring.</p>
<p>Happy Hacking!</p>
<p>FIRESTORM_v1</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yourwarrantyisvoid.com/2011/04/06/homeland-security-build-a-passive-ethernet-tap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

