I'm cheap. That's rarely a good thing when it comes to computers because it usually ends up with me feeling like I'm trying to push a rope up a hill.

I have a wifi network at home. I'm using a Linksys WRT54G running OpenWrt. Works great. However, the guest room in our house doesn't get very good coverage at all. I had an old D-Link DI-614+ lying around, so I figured I'd put that in the attic over that room. Works great.

Except. Except that OSX has a single list of preferred networks. So if I am in the living room, I'm using the Linksys and all is well. If I move to the guest room, I have just enough signal that OSX uses the Linksys instead of the D-Link. If I swap the order in the preferred networks, then I have just enough signal in the living room that it picks the D-Link over the Linksys.

If I try to switch to the "Other" network using Internet Connect, it asks for a password. Which works, but that's too much of a pain to do all the time.

Now, I could just buy another base station that could act as a repeater for the Linksys, but like I said: I'm cheap.

Today I discovered the airport utility. It has a command line option for a different airport preferences file. The default preferences file contains the preferred networks order. I made a copy of it, moved the D-Link network to the top, and then tried:

airport --file=$HOME/guest.plist  -a

Bada bing! I switched from the Linksys to the D-Link. To switch back, I just change locations (or turn the AirPort off and then back on).