README file for FloppyFW PPP package       5-13-00

This is a short note describing the operation of the
PPP package for FloppyFW.

Introduction:

    This PPP package was originally contributed by
Gerard van Dijnsen.  It contained the following:

/bin/pppd
/bin/chat
/dev/ptyxx   #devices to use PPP
/licenses/ppp
/lib/libcrypt.so.1


    The following scripts have been added:

/etc/ppp/ip-up         
/etc/ppp/ip-down
/etc/ppp/ppp-start
/etc/ppp/ppp-stop
/etc/options.ppp
/etc/options.chat

Ip-up is used to update the display (on tty1), and re-start firewall with new 
      ip address.

ip-down merely updates the display that the connection was lost.

Note: ip-up and ip-down send output to /dev/tty1.  I
      normally use this console for monitoring only.  I use a 
      different console to type commands, etc.

ppp-start brings up the connection using the options.ppp and options.chat 
      files. (see below)

ppp-stop brings down the ppp connection started with ppp-start.

options.ppp provides pppd with connection options.

options.chat provides chat with connection options.

NOTE: When using PPP at boot time, the files options.ppp and options.chat 
      are automatically generated by network.ini. They are included in the 
      package so that a modem connection can be used manually in addition 
      to a PPPoE or static ip connection if desired.  They are assumed to 
      be only a starting point.

Directions for use:

To use demand dial PPP, all one needs to do (hear that before?) is edit 
the file /config on the floppy with the appropriate values.  Use the 
comments in the /config file for more info.  

1. Set OUTSIDE_IP=PPP

2. Set USER_IDENT=yourusernamehere

3. Set USER_PASSWORD=yourpassword

4. Set SERIAL_PORT=/dev/ttySN where N is appropriate for your system. 
   /dev/ttyS0 is com1, /dev/ttyS1 is com2, etc.

5. Set PORT_SPEED to an appropriate value greater than the desired 
   connect speed. 115200 or 57600 will likely work for most current 
   modems.  'Winmodems' will probably *not* work under linux at this 
   time. 'Losemodem' ?

6. Set TELEPHONE= to the telephone number to dial

7. Set OUTSIDE_DEV to eth1 if you have 1 NIC.  This is because (if 
   you only have 1 NIC) eth0 will need to be your inside network device.

8. OUTSIDE_NETMASK, OUTSIDE_BROADCAST and DEFAULT_GATEWAY are not 
   necessary if you are using PPP or PPPoE.

9. Set INSIDE_DEV=eth0 if you only have 1 NIC, otherwise
   it will work fine as eth1.

10. Set up your inside network ip addresses.  This is beyond the scope 
    of this readme.

11. Set your 2 DNS nameservers, and your domain name. Ask your isp.

12. Answer the 3 questions or leave them alone.

13. Boot the floppy, and carefully watch for errors in the kernel 
    messages.  If things went well, you should be able to use 
    'ifconfig' and see at least 3 interfaces up, the loopback, the 
    eth device(s), and a PPP interface.  The PPP interface is a dummy, 
    waiting for network traffic to initiate a connection.  If this is 
    the case, try to 'ping' something.  The modem should dial out, 
    authenticate, and the ping packets should start flowing.

    cntrl-c to stop the pinging.

NOTES: 
1. The ip-up script runs the firewall.init script, which re-starts 
   the firewall each time a PPP or PPPoE interface comes up.  You 
   should be able to see this info on virtual console 1.
  
2. I use consoles 2+ for typing commands, and leave console 1 showing 
   status.  As months go by, you can look at recent connection history 
   on console 1.  This is more useful for PPPoE since it is a continuous 
   connection (unless a failure), and while using PPP there will be many 
   recent connections.

3. The PPP connection files are created in the /etc/network.init file. 
   (/network.ini on the floppy) These files can be modified by editing 
   network.ini.


PROBLEMS:
1. If things don't go as planned, start with the kernel messages.  
   (type 'dmesg | more') Make sure they don't indicate a failure of NIC 
   initialization, serial port initialization, etc.

2. Type 'ifconfig'.  Make sure there are at least 3 interfaces up.  If 
   the missing interface is eth0, something is wrong outside the scope 
   of this README.  If the ppp0 interface is missing, something went 
   wrong with the PPP section of /etc/network.init.  Try manually 
   starting and stopping the PPP connection using /etc/ppp/ppp-start 
   and /etc/ppp/ppp-stop, and watching the error messages.

3. If ifconfig reports the correct interfaces, check the routing table 
   for a default route thru interface ppp0.

4. If things are failing in the connection process, I would then 
   recommend creating a script using the lines in the PPP section of 
   /etc/network.init and editing them to work with your isp.  See the 
   man pages for chat and pppd.  Since there is no editor in floppyfw, 
   use another system to adjust the various settings for chat and pppd, 
   then try it on the floppyfw machine.  After you get it working, 
   adjust the settings in network.ini and you should be in business.

HELPFUL REFERENCES:

1. Man pages for pppd and chat.

2. Type 'pppd --help' and 'chat --help' for some info.

3. Read thoroughly the README file for pppd, available at 
   ftp://cs.anu.edu.au/pub/software/ppp/.  There is a more recent 
   version included in the file ppp-2.3.11.tar.gz at that site, 
   although extracting it is beyond the scope here. 

4. Read the document at: 
   http://axion.physics.ubc.ca/ppp-linux.html. 
   This has links to other helpful sites.

5. Subscribe to the newsgroup comp.protocols.ppp.  This has a tremendous 
   amount of info, and the gurus there are very helpful.