Wednesday, August 27, 2008

So that is what nameservers are for

So after by BBS snafu, I called up the local ISP the BBS was using to get my own account. The nice sales woman that I spoke to told me they had two different account plans. The first one was what she called a "term" account, which included 50 hours per month for $25. The also had a "slip" account, which was $30 per month.

Not knowing the difference, I asked about them. She explained that the term account was command line based, where you would get access to a text based menu and shell access. The slip account was graphical, and required Windows. Being the geek that I was, and not knowing why I would need a "graphical" internet, and also because the term account was $5 cheaper, I opted for the term account.

After setting up my account, she gave me the information I needed to login over the phone. It was pretty simple really. I had a local access number that I would dialup with my favorite terminal software. Once connected, I would be presented with a username and password prompt, and once that was confirmed, I would be presented with a "Command:" prompt. At this, I would type "term", and it happily landed me with a connection to "larry", which was their shell host. Later I learned they also had machines named "moe" and "curly" (I smell a theme here).

So there I was with a nice text menu that would launch unix programs for me, like 'elm' and 'pine' and 'rn' and 'tin'. All the email and newsgroups I had before, were right there. I also had access to things like 'gopher' and this new thing called the world wide web, through some program called 'lynx'. It was amazing, and even more so, there was 'ftp'. After my experience with the ftp email gateways, I just had to jump in and try it out. So I launched it, and it asked me for a hostname. I told it, "sunsite.unc.edu". A few lines of output, and I was staring at an "ftp>" prompt.

Could it happen this quickly? I thought not, so I tried "cd pub" followed by "ls", just like in my very first email from before. Almost instantly, a directory listing scrolled down my screen. Not 24 hours later, but now. Wow! This was exactly what I wanted. With this, I could grab files, and using zmodem, download them directly as binary. No more uuencoding/decoding. I was in heaven.

I played around for a bit, and noticed a menu item called "Exit to shell". I'd pretty much tried all the other commands, so I figured I'd give this a whirl. It dropped me to what looked liked a dos prompt. It also printed a few lines about some common commands to use, and how to get back into the menu if you get stuck or lost. They also had aliased many of the dos commands to their unix equivalents, so DOS geeks like me would feel right at home until we got our unix feet wet.

While experimenting, I learned about a wonderful unix command called "man". The "man" command would give you a "manual" for any command you needed help with, and being the newbie that I was, I needed help with everything. I was reading the man page for every command I knew, and learning about even new commands. Day after day, I would login and spend my time reading more and more man pages. My first month's 50 hours were almost entirely spent reading man pages. I was slowly becoming a unix expert, or so I thought.

Every once in a while, I'd learn something in a man page about the filesystem layout. I learned about /etc, and unix configuration, and would explore the filesystem learning where things lived. I found out that this same box also hosted an ftp site that contained the software used by the "slip" customers.

One day, when I logged in, I was staring at the "Command:" prompt, and about to type "term" when I thought to myself, "I wonder what the slip users type here, or if maybe they use something else?" I thought, just for grins, "What if I type 'slip' here instead of term?" I figured, worse case, I would get something like 'invalid command', and would be asked to try again. I was amazed when instead, I was greeted with something like:

Your IP address is x.x.x.x.
Gateway IP adress is y.y.y.y.

Hmm, could it be this easy? I disconnected, and reconnect as a term user. Using nslookup, I found out the ip address for larry. I used zmodem to download the slip software package, and installed it under windows. When I dialed back in using it, I was connected. They had a "term" program called "telnet", and using the ip address of larry, I was able to get to my shell. Even better, I could open multiple "telnet" windows at the same time.

Then I discovered they had this thing called 'cello' a world wide web browser. I fired it up, and went to a site (can't recall the name, so ill just use sunsite.unc.edu as an example), but was somewhat disappointed when all I got back was some error saying it "couldn't resolve the hostname sunsite.unc.edu". Figuring something wasn't configure correctly, I looked at the slip software settings, and found there were some empty fields called "nameservers" and also found there was a file called "hosts". I seem to remember reading about them in the man pages, but wasn't exactly sure what they were. And of course, since I was a "term" customer, I couldn't really call tech support asking for "slip" help, now could I?

Determined to get this working, I did an 'nslookup sunsite.unc.edu' in my term window on larry, and it came back with an ip address. I cut-n-pasted the host/ip combination into my local hosts file. I did a reload in cello, and viola. A page started loading. This was amazing. There was text and IMAGES. I was awestruck, I would click on the links and browse around the site, and eventually, it would take me to some other host name I didn't have. I would then repeat my process of nslookup, cut-n-paste, and reload and continue browsing.

This was my normal process for a few weeks, until I realized the magic of nameservers. Instead of the host file, I could put  the ip address of the ISP nameservers in and all the lookups happened for me, and was near instantaneous. Personally, I was more then happy to have to do the trick I was doing, but was ecstatic about having it happen automatically. Starting to feel bad about taking advantage of using "slip" as a term user, I emailed their support and told them about it. They said they would look into, and on my next bill, I noticed I was made a "slip" customer at the "term" price, so I couldn't be happier.

No comments: