Friday, February 26, 2010

Asus EEEBox B202

I have to blog about this awesome machine. There are a bunch of factors that together add glory to this box. There is nothing extra-ordinary about this configuration, but the key factors are the form-factor, power consumption and the price (now).

Any web search would get you this configuration, but still here it is:

* CPU Intel Atom N270 with Hyperthreading
* Memory 1GB
* 160 GB SATA 2.5" HDD
* Integrated graphics with DVI output
* LAN 10/100/1000 Mbps
* Wireless WLAN: 802.11 b/g/n
* Card Reader SD/SDHC/MS/MS Pro/MMC
* Audio chip Realtek ALC662 Azalia CODEC
* Front I/O port USB x 2, Card Reader x 1, Headphone-out jack (WO/SPDIF) x 1, MIC x 1
* Rear I/O port USB x 2, GigaLan x 1, Line-Out (L/R) with S/PDIF x 1

Doesn't sound great? Read more:

Now, all this with a maximum power consumption of just 20W (did you read maximum?). This is awesome, and fits very well for a dedicated server that doesn't need a terminal. It consumes only around 1 unit (kwh) per 2 days while running for 24 hours at full load. And it's ultra silent.

Next, is the form-factor. Its sleek, neatly finished and its dimension is 22.2 * 17.8 * 2.69 cm and weighs just a kg. You just need to see it to believe it, so see it:



Now the price!! I should mention that B202 isn't a recent invention from Asus, but has been here in India for more than a year now. But the prices weren't attractive then (I guess the launch price was around 18K!!). Now one can buy B202 for as low as 10K on ebay India (I bought for 9K with a 10% discount paypal gift voucher). I believe the reason for this price reduction is likely that Asus is clearing off its inventory and is all ramped up for the next models; B206 etc., B206 has HDMI support, but I couldn't get it online in India. I originally wanted to assemble a low end machine with Atom N270 but when saw B202's price, I didn't think again.

If you are gamer, this isn't for you!! The graphics controller is the integrated graphics controller and is not that powerful. But it is more than decent for normal desktop applications at full HD resolution and video usage at half HD. It drives my LG 32" LCD TV at full HD resolution (1920x1080) without issues via DVI (mind you, I'm NOT talking about full HD "videos"). I was told that this struggles playing full HD videos -- I haven't tried. But it plays half-HD without issues, I'm ok with this. Getting a full HD video itself is a bigger pain, so I don't bother. Look at the full HD resolution on my TV:



One funny thing worth mentioning: Asus distributes the drivers in a CD for a comp that doesn't have a CD drive :) Not to blame them, there is no such cheap media available. So, you might have to do some initial gimmicks before you can start using it (yes, the BIOS does support boot from USB).

So all setup, eeebox is running, I see the desktop; what do you do now? There are bunch of things for which I use my eeebox. It's worth discussing how technology helps. Stay tuned...

Monday, February 22, 2010

Remotely access your servers without a static IP

This is a very common problem that many of us face. We might have 24 hours internet service at home, but it is not quite straight forward to access our home PCs remotely from office or elsewhere, simply because their IP address is a DHCP one (at least in India, we need to pay for a static IP address).

I used to ignore this issue earlier, as I never wanted to run a server 24 hours at home. Recently I started networking a bunch of devices at home. With more and more devices coming up, specially a file server or a download server, it is becoming important that I have access to them remotely wherever I'm.

As mentioned earlier, the only issue here is the changing IP address for the server (to keep it simple and focused, I have excluded my router configurations from discussion). I had almost completed a custom solution for this: a simple python script running on my server periodically, which would discover my server's public IP and will post a tweet (content with the encoded IP address) to my secret twitter account whenever the IP address changes. I can remotely watch this tweet and decode it to find my server's IP address. This is pretty neat; except for the small fact that the script needs to be constantly running and polling for IP changes.

Last weekend, when I was fine tuning security on my wireless network at home, I stumbled upon this feature called 'Dynamic DNS' - and that's exactly doing this job in a more efficient way. Dynamic DNS is a means by which any host can ask the DNS server to modify a DNS record. There are at least 2 well known Dynamic DNS service providers : www.dyndns.org, www.tzo.com. Note that this requires Dynamic DNS support from the router (thankfully my router has). Once configured, the router by itself communicates with the dynamic dns server and notifies the change in its IP address. This is much more efficient and reliable as the router by itself handles the change. I used dyndns.org, and it works great. Whatsmore, you can create a dynamic host in dyndns.org something like 'myhomeserver.dyndns.org' (only if it is still available), and map it to your account (your router uses this same username/password to update the dynamic entry for that host). Now you can just remember this hostname, and it dynamically maps to the IP address that your router reported last to the DynDNS server. dyndns.org also has options to the control TTL values of the DNS entries. This shall be used to ensure that your remote client doesn't cache the DNS response for very long, as the IP could potentially be stale by then.

No doubt, this service is useful.