A bit about FNOS

Marc Blakely maintains FNOS, a superb DOS-based TCP/IP utility.  FNOS can perform a wide variety of Internet operations and protocols, including POP3, FTP, Telenet, PPP (with authorization), SLIP, ping, and much more.  I'm using version 1.7b, released in February of 1998; you can get a copy from Marc's home page.

FNOS is no simple FTP utility.  It includes a 10-session multitasker, with each session capable of maintaining a separate Internet connection.  FNOS can run interactively, or you can develop scripts for automating Internet activities such as web page updates.  The program supports multiple ISPs, multiple login names, and multiple dial-up scripts.  Its scripting language gives you extensive control over some of the more complex Internet operations, such as PPP.

Naturally, all of this complexity means that FNOS isn't the simplest program to use, but Marc has taken great pains to design an interface that is as easy to use as possible, and he supports that with well-written documentation and lots of sample files.  Every automatic function of FNOS can be handled with script files; full details are in the install.txt file and the various FAQ files in the distribution.

If you want to tackle installing FNOS yourself, which I strongly recommend, spend lots of time with the documentation and try some simple cases first.  I stumbled over one or two problems, but basically I completed the installation in about six hours from the time I unzipped the files.  The following problem descriptions won't mean much to you until after you've started the installation, but refer back here if you hit a snag.

I had a problem when I set up my ppp entry in autoexec.scr.  The sample autoexec.scr file left out the 'user' subargument in the ppp entry, though the documentation described it.  My dial and ppp entries now look like:

# Use the next two lines for a PAP type login
ppp pp0 pap user karllunt (password)
dialer pp0 seanet.dil

My Zoom V34X+ modem would NOT connect properly, despite changing comm ports and other futile efforts.  The symptom was that every time FNOS tried to dial out, it would immediately report that the carrier was already active, then immediately report that there was no carrier.  Turns out that the modem's initialization settings included &C0 and &D0, both of which are wrong.  Marc describes why you need to use &D2 in your initialization string, but I had to do some serious digging to solve the &C problem.  By adding &C1 to my modem initialization, the Zoom modem accurately handles the DCD line, crucial to letting FNOS dial up properly.  My seanet.dil dial-up script now looks like:

# Configure the modem for this connection.
# M0 turns the speaker off always (so it doesn't make noise at night).
# &C1 enables proper handling of DCD.
# &D2 sets the carrier control on my Zoom V34X+ modem as needed by FNOS.
send "atM0&C1&D2\r"

My home page...