README file for FloppyFW PPPoE.bz2 package 5-13-00 This is a short note describing the operation of the PPPoE package for FloppyFW. Introduction: This PPPoE package requires the PPP package. See a separate README for the PPP package. The PPPoE package contains the following: /bin/pppoe /etc/ppp/adsl-start /etc/ppp/adsl-stop /etc/ppp/adsl-connect /etc/ppp/pppoe.conf.orig /licenses/pppoe The following files are also used, and are included in the ppp package: /bin/pppd /etc/ppp/ip-up /etc/ppp/ip-down /bin/pppoe is the binary executable compiled from source obtained from www.roaringpenguin.com. This software is distributed under the terms of the GPL. See /licenses for details. adsl-start brings up the connection by calling adsl-connect and using the pppoe.conf file created by network.ini. (see below) adsl-stop brings down the pppoe connection started with adsl-start. adsl-connect actually calls pppd and pppoe to bring up and maintain the connection using the pppoe.conf file created by network.ini. (see below) pppoe.conf.orig is the original pppoe.conf file from the Roaring Penguin PPPoE client. It has many useful comments in it, so it was included for reference. /licenses/pppoe states the obvious /bin/pppd is the binary executable from the PPP.bz2 package ip-up is used to update the display, and re-start the firewall with new ip address ip-down merely updates the display when a connection is 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. NOTE: When using PPPoE at boot time, the file pppoe.conf is automatically generated by network.ini. The files /etc/ppp/options.ppp and /etc/ppp/options.chat are included in the PPP 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 for options files. Directions for use: To use PPPoE, 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=PPPoE 2. Set USER_IDENT=yourusernamehere 3. Set USER_PASSWORD=yourpassword 4. You can probably leave most other config options to the defaults. 5. OUTSIDE_NETMASK, OUTSIDE_BROADCAST and DEFAULT_GATEWAY are not necessary if you are using PPP or PPPoE. 6. Set up your inside network ip addresses. This is beyond the scope of this README. See other floppyfw documentation. 7. Set your 2 DNS nameservers, and your domain name. Ask your isp. 8. Answer the 3 questions or leave them alone. 9. 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 4 interfaces up, the loopback, the 2 eth devices, and a PPP interface. If this is the case, try to 'ping' something. 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. This is necessary with PPPoE because you cannot be sure your isp will not dynamically disconnect your connection and reconnect you on a different ip address. 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 than with PPP since it is a continuous connection. (unless a failure) My 'dynamic' ip has stayed up for as long as one month (I disconnected by re-booting, who knows how long it might stay up) 3. The PPPoE connection file is created by the /etc/network.init file. (/network.ini on the floppy) This file can be modified by editing network.ini. PROBLEMS: 1. If things dont go as planned, start with the kernel messages. (type 'dmesg | more') Make sure they dont indicate a failure of NIC initialization, etc. 2. Type 'ifconfig'. Make sure there are at least 4 interfaces up. If the missing interface is eth0 or eth1, something is wrong outside the scope of this README. If the ppp0 interface is missing, something went wrong with the PPPoE section of /etc/network.init. Try manually starting and stopping the PPPoE connection using /etc/ppp/adsl-start and /etc/ppp/adsl-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 check the username and password in the config file, and read the /etc/ppp/pppoe.conf.orig. See the man page for pppd. See the README files included in Roaring Penguin PPPoE client at www.roaringpenguin.com. HELPFUL REFERENCES: 1. Man pages for pppd. 2. Type 'pppd --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. 6. Read the pages at www.roaringpenguin.com. The /bin/pppoe binary was compiled from source obtained there, and the start and stop scripts were only slightly modified from the originals.