| « Star Trek Online Open Beta | Chrome OS Before Its Time » |
Snowed Under Without DSL
The past few days have been trying for my family and I. Our DSL has been completely down for our entire area code for 48 hours, and it's estimated to be down for yet another 48 to 72 hours. We are all addicted to the Internet for one reason or another, so being without the 'net makes a few of us extremely grumpy, to say the least.
And by the way, Verizon's entire landline business unit sucks. Really. If you are a Verizon employee who has had anything to do with their DSL service implementation or policy, you should be ashamed of yourself. Please go find another job where you are less able to make other peoples' lives miserable.
I have always mourned the fact that, years after fiber optic cable has become a commonality in densely-populated areas, my neighborhood seems to be just a few feet out of reach of all the carriers. Verizon continues to pitch their awful, awful ADSL service, and Comcast continues to pitch their awful, awful copper (coax) cable service. Neither is viable for someone who is serious about network reliability (such as, say, an average customer, who expects their internet to "just work" like other things such as hot water and electricity). Since about 2001, we have had either Comcast or Verizon ADSL, switching often between the two because neither is any good. They seem to be totally indifferent about such major problems as corrosion on the wires that causes severe instability, modem losing sync, and long periods of downtime when it finally breaks completely. How would you like it if your electricity service were as unreliable as Verizon ADSL? You'd end up installing a diesel generator in the back yard as a redundant power supply, so you don't end up finishing your shower in the dark half the time.
Now, our DSL outage is completely unrelated to this major blizzard that has befallen the Baltimore area, and especially my hometown. The DSL outage struck a full day before a single flake of snow touched our state. But being snowed in means that: (a) the DSL outage will probably be even longer; (b) that there will probably be continuous problems until the snow is all cleared up; and (c) that we can't just run out to the store and buy an EvDO modem or something.
So, with a family of three at wit's end and serious internet withdrawal driving us mad, I hatched a plan to find any way possible to get three computers tethered to my Verizon SMT5800 phone at the same time.
I have a 5GB-per-month limit on Verizon Wireless's EvDO service, which is about 20% of the speed of our ADSL. It's definitely better than 56k, and that's assuming our phone lines don't stop working (remember what I said about Verizon's landline business being a total crap shoot?)
Ever since our outage began, I had been using the EvDO tethering from my phone to my desktop. But this only incited jealousy, bouts of anger, and so on from the other inhabitants of this abode.
The biggest obstacle to getting all three computers tethered is that all but one of the computers connect via WiFi to a wireless router, when our DSL is working. So I can't just use a series of ethernet patch cables, or a simple ethernet switch. That would've been too easy.
After trying various VPNs and proxy solutions to no avail, my final configuration turned out to be elegant, but very hackish in nature.
My Internet-facing computer ("the gateway") is a Lenovo ThinkPad X60, connected to my SMT5800 smartphone via a USB cable.
Also connected to the ThinkPad is an ethernet cable, which connects the ethernet card of the ThinkPad to my 802.11N router, a new Linksys WRT610N.
The thing that threw me for a loop is that, whenever you plug an ethernet cable into the port labeled "Internet" on the WRT610N, the router tries to "NAT" that connection to the other hosts, rather than acting as a simple switch.
The reason I couldn't use the router's DHCP/NAT features is that, on my ThinkPad, I am running Windows 7's Internet Connection Sharing (ICS) service, which itself is a DHCP/NAT system. Sometimes NAT to NAT can work, but specifically not with ICS.
So, I was at an impasse for a good two hours until I discovered that I needed to plug the ethernet cable into one of the router's several "LAN" ports, which you'd normally connect to a computer that needs to receive an internet connection. Instead, this port is being used to host an internet connection in my configuration.
The final hardware step is to connect wireless adapters from each client computer to the WRT610N router. This step has already been accomplished before when we were using ADSL, so it was easy.
Now, the software configuration steps go something like this:
0. Make sure you can successfully tether the EvDO connection to the gateway and browse the internet.
1. Enable ICS on the EvDO Dial-up Connection, and disconnect it to update the changes. Point the ICS to your ethernet adapter (Local Area Connection) as the "home network" side of the ICS.
2. ICS will assign a static IP of something like 192.167.137.1 to the Local Area Connection adapter. You can now leave this part alone. You shouldn't need to make any more changes to any software on the laptop.
3. Using a computer that has connected to the WRT610N router wirelessly, log in to its web administrative interface.
4. Disregard the "internet connection" / WAN status of the WRT610N.
5. Assign a "local IP" of the Router to something like 192.168.137.254. The second to last octet must match the second to last octet that was set by ICS on the laptop -- so, since ICS gave me 137, I plugged in 137 on the router. The 254 is important: ICS only assigns a limited range of DHCP addresses, and 254 is outside of that range. So just plug in 254 as a magic number if you like.
6. Use the same subnet on the router's local IP as the subnet chosen by ICS for the Local Area Connection.
7. Disable both the DHCP Server and the NAT functionality of the router. For the WRT610N, the NAT is a separate setting that needs to be disabled. Once you do this, the new IP address of the router configuration page is going to be whatever you set in the "local IP" field; so for me it's 192.168.137.254.
8. Change the TCP/IP v4 settings of each client computer. Manually assign an IP address within the range used by ICS, which in my case would be something like 192.168.137.44 through 192.168.137.100. The setting to change ICS' DHCP range is actually hidden in the Windows Registry.
These instructions glaze over a lot of things, such as specific instructions for various operating system versions, and details of the configuration of your specific router. But basically, summarized, I did:
1. Use a wireless router as a wireless access point or switch, which totally subverts the router functionality of it (the NAT).
2. Use Windows' ICS as a NAT and DHCP server, which allows the EvDO to happily continue on using its one public IP address.
Now, I have three computers effectively tethered to the EvDO network at native EvDO speeds over 802.11n. It's a lot faster than dial-up.
Outside my window, the winds are blowing snow around like crazy, and the roads are covered in a foot of snow. Our DSL is down. Most people in the neighborhood are probably using either dialup, or cable (assuming that works), or just watching TV. My household is surfing the web with broadband as long as the power grid continues to endure (cross your fingers!) I am overall very pleased with the stability of our power grid here, though, so I think it will be pretty good despite the snowstorm. This is a victory for Verizon Wireless, and a stab in the eye for Verizon the landline carrier.
NOTE: I have never had any negative experiences or service outages with Verizon Wireless. Although the service is quite pricy, I am extremely satisfied with Verizon Wireless. For all the badmouthing I do of Verizon's landline service, I am extremely happy with Verizon Wireless. I think Verizon should stick to cellular voice and data, and leave the landline business to someone who actually cares about their customers.
Feedback awaiting moderation
This post has 1 feedback awaiting moderation...