Originally Published: Monday, 9 April 2001 Author: Dave Markowitz
Published to: enhance_articles_hardware/Hardware Articles Page: 1/1 - [Printable]

Using Linux to Troubleshoot Cable Modem Connections

Dave Markowitz, a systems engineer in the north-east shares a neat little diagnostic hack using Linux.

   Page 1 of 1  

Linux has been called the "Swiss Army Knife" of networking tools. As I have discovered, this is an apt description. Here's how I used it to solve a particular problem that I encountered in my daily work. First, some background...

I am a Field Systems Engineer for a broadband ISP in Pennsylvania. Among my tasks is to configure the routers we place on our customers' premises behind their cable modems. Also, we are in the process of upgrading our customers to the new DOCSIS cable modem standard (DOCSIS is to cable modems as V.90 is to 56k modems, a new industry standard).

As part of the service installation, the router itself is given an IP address and a hostname. Ideally, once the router's hostname is properly configured, it should automatically pick up its IP address via DHCP. However, this doesn't always work; sometimes due to problems with the new account we have to create when we put someone on a DOCSIS cable modem.

So, instead of going in and reconfiguring a customer's router with the new account info before we know that it will work, we briefly interrupt their service and attach both the old and new modems to the cable feed through a splitter. This way, the old account will still be working while we determine if the new account works. Once we determine that it does work, we'll remove the splitter.

More specifically, we find out if the new account works by giving our laptop the new hostname of the customer's router. My laptop runs Windows 2000 Professional, which means that if I change the hostname, I'll need to corral an administrator to re-add my machine to our Windows domain when I get back into the office. Some of my colleagues run Windows 98, and even though they do not have to be re-added to our domain, changing their laptop's hostname requires a reboot. As you can imagine, either of these alternatives is a real pain.

Similarly, if I go to a customer site and they are having problems getting onto the Internet, I need to determine if the cause is account-related or a bad router. E.g., sometimes our routers can contact their default gateway, but refuse to pass traffic beyond there. By renaming our laptop with their router's hostname, we can figure out if the problems are hardware, or account-related.

Linux Comes to the Rescue

And here's where Linux comes to the rescue. My laptop can be set to boot from the CD drive, and I have a Linuxcare Bootable Business Card. The BBC is a small Linux distribution meant for troubleshooting, and includes network support. It even supports some PCMCIA NICs, including mine. Adding to the coolness factor is the fact that it is actually shaped like a business card, but with rounded ends.

What I do is to connect my laptop directly to the modem using a patch cord, and then boot it using the BBC. I change the hostname to the customer's new name as follows:

[lnxcare]# hostname foo

I then start PCMCIA services:

[lnxcare]# pcmcia start

Next, I configure networking:

[lnxcare]# trivial-net-setup

...and follow the prompts. I'll try to pick up the IP via DHCP, but this doesn't always work, even with good accounts. If not, I'll do network setup again, but statically set their IP. If I can get on the Internet once the machine has its IP, I know that their new account works, and I can reconfigure their router. Likewise, if I am troubleshooting a problem connection, I can use the laptop running Linux to see if the problem is account-related or due to the router, and fix it accordingly.

Naturally, I could set up my laptop as a dual-boot system, but it has a relatively small hard disk, and I need the space for my Windows applications. Since the BBC runs from ramdisk, no permanent configuration changes need to be made to my laptop.

You can get more info on the BBC, and a downloadable .iso image, at http://www.toms.net/rb/home.html. Actual BBCs are available for free from Linuxcare, but only to Linux User Groups.

Note that you can do this with other Linux distributions. For instance, the official Slackware CD set comes with one CD that is a bootable, live Linux files-system. See http://www.slackware.com.

If you are more of a do-it-yourselfer, then check out Jordi Bataller's article, "Maragda: Running Linux from CD," appearing in the March 2001 issue of "Linux Journal."

Finally, your laptop will not boot from CD, then the floppy-based tomsrbt would be a good alternative. See http://www.toms.net/rb/home.html.

The author has been involved with personal computers since learning BASIC on a TRS-80 Model III in high school, back in the early 1980s, and has used Linux for about three years. He has worked in Information Technology for about two years, having switched into the field from law, after realizing that computers are much more pleasant to work with than lawyers.

   Page 1 of 1