Mar 07 2008

Possibly the most elite home network ever…

Published by Jonathan Wise under Articles, Toys

Once we move back to Ontario, I’ll be working from a home office. Add that to the fact that we’re not using anything more than basic cable, but digital distribution (both the paid and the found-automatically-on-the-internet-and-you-can’t-convince-me-I-shouldn’t-have-it kind) for our entertainment, and I think I have some unusual problems to solve. Here’s what I’m dealing with:

  • I want a reliable and dedicated “business” connection with no WiFi access so that my company’s source code is secure.
  • But I want access to my stuff from my iPhone and my Craptop, and visitors and passers-by should have free access to Internet, because that’s the spirit of the thing, but they shouldn’t have fee access to my files and documents, so I want both a secure and an open WiFi network.
  • The XBox 360’s method of getting shared content is incredibly noisy and resistant to QoS. The sharing program, in my case Connect360, uses broadcast messages to toss bits all over the network. The only way I’ve found to ensure Quality on this is to have a dedicated network just for sharing between the computer and the XBox.
  • My media is going to be stored in different places depending on primary usage. High quality movie rips (legally obtained, of course) shouldn’t be transcoded by Connect360. Daily TV downloads and recordings using EyeTV (and can be transcoded since they’re already pretty low quality), MP3s and Photos will be frequently revolved and updated and should be managed from a PC (manually, or by script.) All of these files need to be available from anywhere in the house.

The solution to all of these problems can be seen in this diagram (click for a larger version):

As you can see, there will be no less than 3 individual networks, with bridge points between each, where appropriate.

  • The green network represents the dedicated XBox network, allowing us to stream content from a PC regardless of the activity of other devices. We’ll open it up for free WiFi since there’s really nothing accessible on that network, but QoS all other devices as low priority.
  • The blue network is the primary home network, your typical file/print sharing setup. Living on that network is a sweet little LaCie Mini NAS drive, which will share all our high quality movies and will also have a direct USB connection to HDTV via the XBox to avoid transcoding. Other media: recordings, downloads, MP3s and photos will be shared from the home Mac to all devices over this pipe. Two touch points in the home office will allow me to listen to my music while I’m at work, and sync my calendars and e-mail with the home Mac.
  • Both the blue and the green network will be coming off a standard home Cable Internet connection, but each router will have its own public IP.
  • The purple network is a dedicated 7+ MBPS DSL connection (shooting for 10MBPS, but we’ll see what’s available) used only for connecting my home office to the Internet. It will have no wireless connection, and won’t leave my office in any way. The Blue network connection into the home office will be firewalled and won’t be set-up for Internet — SMB file sharing only, but if something goes wrong with my DSL, I can re-configure for Cable over the blue network and still do my job. The purple network will allow communication between my work computers, both of them running Synergy so I only need one keyboard and mouse. And the little iMac will by my jukebox/Photoshop/personal mail rig.
  • The two work computers will run up to 4 Virtual Machines each, but my primary VMs (represented by the monitors — and yes I’ll have 4!) will be: an e-mail/IM computer for connecting to work, a development workstation with occasional VPN access to sync source code, and a test server and client — more added as my current project dictates.

    My newest work computer will be running Microsoft’s new Windows Server 2008 with Hyper-V virtualization, allowing incredible performance of the Guest machines.

  • Any capable device can also get VPN access from any network, since its secure by nature, but only 3 machines will be configured to do it most of the time. My touch points with the physical office will be fairly limited, since I’ll be able to have local VMs of current server builds that I’ll refresh whenever I’m in the office for meetings.

I think that’s ambitious enough… but if you have a better home network, or ideas to improve this, I’d love to hear about them!

5 responses so far

Jan 08 2008

XBox360 + Connect360 + Linksys WRT54g (firmware hacked)

Published by Jonathan Wise under Hacks, Reviews

Nullriver’s Connect360 is a fantastic little app that you can run on your Mac that will fool your XBox 360 into thinking its talking to a PC, allowing you to share your iTunes, iPhoto and video libraries with the 360 dashboard. The video transcoding is a little lossy, but for SD applications it works exactly as advertised. Well worth the $20 they’re asking.

According to the Connect360 Support website, you can’t use Connect360 on your Mac to connect to your XBox 360 if your network uses a Linksys WRT54g with homebrew firmware on it. They’re right — it doesn’t work.

The solution is pretty simple, however. Abstract the Mac and the XBox from the router using a good* network switch. The switch will allow the two devices to communicate (via broadcast) with each other without having to go through the router, and all will work as expected.

*Note: The Connect360 site also warns that some switches may cause a similar problem. I’m using a NetGear Gigabit Switch to accomplish this, and it works perfectly. YMMV.

3 responses so far

Dec 20 2007

Question From A Reader: Mirroring an iTunes Library

Published by Jonathan Wise under Hacks

Shawn writes…

…i’m looking all over these internets, and I have a feeling you can point me in the right direction.

Short short version: how can I mirror/sync the itunes database file (just the database, not the song files themselves) between two macs on the same home network, so that any changes made on one mac will show up when itunes is opened on the other mac? Foldershare doesn’t seem to be working…

I’m looking to:

  • Store my itunes library (the files) on my mac mini, storing no mp3’s on my macbook pro (this is done, easily, by sharing the mini’s itunes folder and pointing the mbp to it…got that done already…it’s the sharing of the database file that I’m having trouble with)
  • Either NAS or external fw/usb drives for saving music/movies/photos attached to mini (raid 1 or 5…I’d love to hear suggestions of why a NAS or external would be a better bet…I’m leery about capability of NAS to stream high quality handbrake rips through my elcheapo linksys wrt54g router…would love to get lacie Ethernet RAID, but I don’t think it will cut it)
  • Use that repository of files on the mini/nas/external drive whenever i’m on my home network…rip a cd on the mbp, consolidate, it shoots over to the mac mini, and occasionally clean off the mbp so it’s got no MP3’s stored on it
  • Reference either the same library database file or have a mirrored library file on my macbook that updates/syncs regularly, so I can access the library (add new podcasts, new music from cd’s, etc.) even if I’m not on my home network

Advantages:

  • if i’m out and about, and add a cd to the mbp, or a podcast, I can still sync my ipod…the easiest solution of just pointing the MBP to the itunes library database on the mini is problematic, because if I’m off the network, I can’t use that library database, and I’ll get a blank itunes library, and not be able to sync the ipod. If, however, I set it up like I’m wanting to, whenever I’m out and open up itunes, I’ll just get the ‘grey exclamation point’ by all of the songs (because the actual files are still housed on the mini/external drive). Then, when I get back home and onto the home network, any changes I made to the itunes library (playcounts, playlists, etc.) would be mirrored back to the mini…and vice versa, if I happened to change the playlists on the mini…though I’m not so worried about changes from the mini being mirrored back to the MBP…that won’t happen all that often.

Problems:

  • I can’t get the damned itunes database file to mirror. I’ve tried foldershare to link folders between the two computers, and it *will* copy the itunes database over into each folder, but it loses some file information along the way: somehow, whenever it’s copied, the itunes database “turns into” a ‘unix executable file’, and is no longer recognized by itunes as a valid database file…I’ve looked at rsyncx (for about 15 minutes), but couldn’t figure out how to use it to do what I needed automatically.

Great question, Shawn. As you’ve found, this is much harder than it should be. I do have some tips you might try, but I never got all the way to a solution myself, and eventually settled with a one-way solution. I’ve posted everything I’ve discovered in the comments below. I’d love to keep this discussion going and see if we can’t find a way to get this done right…

9 responses so far

Nov 18 2007

Tomato QoS on a Linksys WRT-54G v.2

Published by Jonathan Wise under Articles

Kudos to anyone who creates their own Linux based firmware and turns a $40 consumer router, into a high-end piece of kit. Truly, they all are awesome achievements. But I’ve got to say, DDR-WRT has nothing on the Tomato firmware. After hearing how happy SuperJason was with his flashed firmware, I decided to take the plunge myself and re-flash my router.

I’d first flashed my box over a year ago to the DDR-WRT firmware and was impressed, but it definitely had a few bugs. I wanted it for DHCP reservations and QoS. DHCP reservations worked, but internal name resolution did not. And the QoS implementation made my network flaky. Tomato changed everything.

First of all, the UI isn’t as nice as DDR-WRT — which does its best to duplicate the Linksys firmware. Tomato’s is a little uglier and a lot harder to find things until you get used to it. But its so much more powerful. After reading around the Internet, I think I’ve finally settled on these QoS classifications…

A note to newbs, before I launch into my explanation: make sure you turn off “Prioritize ACK” so that you don’t get flooded with BitTorrent ACK requests.

As you can see here, I place high priority on BitTorrent traffic. That’s because it drives our TV watching. Each of the things that gets higher priority than torrent downloading has a good reason:

DNS - Normal DNS requests are tiny and should get handled right away — even if the webpage itself loads slower, you don’t want to be hanging during name resolution wondering if your Internet is down.

SMTP - Outgoing mail should go when I hit send. Maybe this is odd of me, but I like hearing the “swoosh” sound in Mail.app as soon as I hit the button.

FTP - I rarely use FTP any more, unless I’m working on a website or uploading something important. On the occasion that I do need it, I want it out of the way as fast as possible.

VNC - If I need VNC its because I’m helping someone else with their computer, or I’m connecting into mine to troubleshoot a problem. In either case, I don’t want to wait for screen refreshes.

On par with BitTorrent traffic are small HTTP requests — loading the Google homepage, or even Digg, comes in at less than 50kb, so lets just get it out of the way.

Large HTTP requests — for a download, or streaming some Flash, can frankly wait a few seconds longer. Similarly, receiving mail isn’t that urgent — it only gets checked every 15 minutes, so if it takes 16 minutes instead, who’s going to notice?

Below this is essentially everything else. If a website isn’t tight enough to get in under 50kb, but not big enough that it might be interesting enough to warrant the higher priority, it gets tucked in with bulk traffic.

The effect is immediate when you turn QoS on. My WordPress admin page, with its IFrames, takes a little bit longer to load, but never looks like its hung. My homepage and Digg come up instantly. And none of our normal use has any significant impact on my BitTorrent downloads. I’m relatively new at this QoS stuff, but having watched the Chart view and studied the Detail view, I think I’ve already learned a lot. Any suggestions from anyone with more experience?

9 responses so far

Mar 19 2007

How to use two or more WRT54Gs to extend a WiFi network

Published by Jonathan Wise under Hacks

wrt54g.jpgWDS is clumsy and hard to configure.

WiFi repeaters cost more than a router.

If you have sufficient wired network, but want to extend the range of an existing wireless router over a large area, the simplest, cheapest way to do it is with your garden variety Linksys WRT54G routers — you don’t even need to flash them to the Linux firmware.

I derived these instructions after searching all over the Internets, and I don’t remember the source, so I’ve got to re-post them for my own reference — and that of anyone else who wants to do this.

  • Connect a computer to the new, second router. Enter the router admin page using your browser.
  • Disable the DHCP server
  • Change the local IP address to be in the same subnet as the primary router, but below the range assigned by it’s DHCP server.
    • For example, your primary router probably has a local address of 192.168.1.1 and assigns IPs in the range 192.168.1.100 to 192.168.1.150. In this case, a safe IP for you to use in your second router would be 192.168.1.2 — this also makes it easy to find later!
  • Apply the changes. (some reboots may be necessary)
  • Plug your wired network into one of the standard LAN ports on the new router — do not use the Internet/WAN port.
  • Reconnect to the admin page using the new IP address you just gave it.
  • Find the Advanced Routing page and change the router’s operating mode from Gateway to Router.
  • Configure the wireless settings of the new router to exactly match the wireless settings of your primary router (including SSID and security) but use a different wireless channel. Most sites recommend spacing out your channels by 3 or 4 to avoid interference and bleed.
    • For example, if your primary router is providing wireless on Channel 6, your secondary router could safely use Channel 2 or Channel 10.

Once these steps are done, laptops will be able to roam freely between access points, and will switch, without interruption, to the strongest available signal. I’ve used this successfully with 2-3 routers, and have had a strong, stable wireless network since.

No responses yet