summaryrefslogtreecommitdiffstats
path: root/share/FAQ/ppp.FAQ
diff options
context:
space:
mode:
Diffstat (limited to 'share/FAQ/ppp.FAQ')
-rwxr-xr-xshare/FAQ/ppp.FAQ368
1 files changed, 368 insertions, 0 deletions
diff --git a/share/FAQ/ppp.FAQ b/share/FAQ/ppp.FAQ
new file mode 100755
index 0000000..26133eb
--- /dev/null
+++ b/share/FAQ/ppp.FAQ
@@ -0,0 +1,368 @@
+
+ Info about setting up pppd daemon on FreeBSD-2.0
+
+Before you start setting up PPP on your machine make
+sure that pppd is located in /usr/sbin and directory /etc/ppp
+exists.
+
+pppd can work in two modes:
+
+i) as a "client" , i.e. you want to connect your machine to outside
+world via PPP serial connection or modem line.
+
+ii) as a "server" , i.e. your machine is located on the network and
+used to connect other computers using PPP.
+
+In both cases you will need to set up an options file ( /etc/ppp/options
+or ~/.ppprc if you have more then one user on your machine that uses
+PPP ).
+
+You also will need some modem/serial software ( preferably kermit )
+so you can dial and establish connection with remote host.
+
+1) Working as a PPP client
+
+I used the following options to connect to CISCO terminal server PPP
+line.
+
+----/etc/ppp/options-------
+crtscts # enable hardware flow control
+modem # modem control line
+noipdefault # remote PPP server must supply your IP address.
+ # if the remote host doesn't send your IP during IPCP
+ # negotiation , remove this option
+passive # wait for LCP packets
+domain ppp.foo.com # put your domain name here
+
+:<remote_ip> # put the IP of remote PPP host here
+ # it will be used to route packets via PPP link
+ # if you didn't specified the noipdefault option
+ # change this line to <local_ip>:<remote_ip>
+
+defaultroute # put this if you want that PPP server will be your
+ # default router
+-------------------------
+
+To connect:
+i) Dial to the remote host using kermit ( or other modem program )
+enter your user name and password ( or whatever is needed to enable PPP
+ont the remote host )
+
+ii) Exit kermit. ( without hanging up the line )
+
+iii) enter:
+/usr/src/usr.sbin/pppd.new/pppd /dev/tty01 19200
+( put the appropriate speed and device name )
+
+Now your computer is connected with PPP. If the connection fails for some
+reasons you can add the "debug" option to the /etc/ppp/options file
+and check messages on the console to track the problem
+
+Following script will make all 3 stages automatically:
+-----/etc/ppp/pppup--------
+#!/bin/sh
+ps ax |grep pppd |grep -v grep
+pid=`ps ax |grep pppd |grep -v grep|awk '{print $1;}'`
+if [ "X${pid}" != "X" ] ; then
+ echo 'killing pppd, PID=' ${pid}
+ kill ${pid}
+fi
+ps ax |grep kermit |grep -v grep
+pid=`ps ax |grep kermit |grep -v grep|awk '{print $1;}'`
+if [ "X${pid}" != "X" ] ; then
+ echo 'killing kermit, PID=' ${pid}
+ kill -9 ${pid}
+fi
+
+ifconfig ppp0 down
+ifconfig ppp0 delete
+
+kermit -y /etc/ppp/kermit.dial
+pppd /dev/tty01 19200
+-----------------------------
+
+/etc/ppp/kermit.dial is kermit script that dials and makes all
+necessary authorization on the remote host.
+( Example of such script is attached to the end of this document )
+
+Use the follwing script to disconnect the PPP line:
+-----/etc/ppp/pppdown--------
+#!/bin/sh
+pid=`ps ax |grep pppd |grep -v grep|awk '{print $1;}'`
+if [ X${pid} != "X" ] ; then
+ echo 'killing pppd, PID=' ${pid}
+ kill -TERM ${pid}
+fi
+
+ps ax |grep kermit |grep -v grep
+pid=`ps ax |grep kermit |grep -v grep|awk '{print $1;}'`
+if [ "X${pid}" != "X" ] ; then
+ echo 'killing kermit, PID=' ${pid}
+ kill -9 ${pid}
+fi
+
+/sbin/ifconfig ppp0 down
+/sbin/ifconfig ppp0 delete
+kermit -y /etc/ppp/kermit.hup
+/etc/ppp/ppptest
+------------------------------
+
+Check if PPP is still running:
+
+-----/etc/ppp/ppptest---------
+#!/bin/sh
+pid=`ps ax| grep pppd |grep -v grep|awk '{print $1;}'`
+if [ X${pid} != "X" ] ; then
+ echo 'pppd running: PID=' ${pid-NONE}
+else
+ echo 'No pppd running.'
+fi
+set -x
+netstat -n -I ppp0
+ifconfig ppp0
+-----------------------------
+
+Hangs up modem line:
+
+-----/etc/ppp/kermit.hup-----
+set line /dev/tty01 ; put your modem device here
+set speed 19200
+set file type binary
+set file names literal
+set win 8
+set rec pack 1024
+set send pack 1024
+set block 3
+set term bytesize 8
+set command bytesize 8
+set flow none
+
+pau 1
+out +++
+inp 5 OK
+out ATH0\13
+echo \13
+exit
+----------------------------
+
+2) Working as a PPP server
+
+------/etc/ppp/options------
+crtscts # Hardware flow control
+netmask 255.255.255.0 # netmask ( not required )
+192.114.208.20:192.114.208.165 # ip's of local and remote hosts
+ # local ip must be different from one
+ # you assigned to the ethernet ( or other )
+ # interface on your machine.
+ # remote IP is ip address that will be
+ # assigned to the remote machine
+domain ppp.foo.com # your domain
+passive # wait for LCP
+modem # modem line
+----------------------------
+
+Following script will enable ppp server on your machine
+
+-----/etc/ppp/pppserv-------
+#!/bin/sh
+ps ax |grep pppd |grep -v grep
+pid=`ps ax |grep pppd |grep -v grep|awk '{print $1;}'`
+if [ "X${pid}" != "X" ] ; then
+ echo 'killing pppd, PID=' ${pid}
+ kill ${pid}
+fi
+ps ax |grep kermit |grep -v grep
+pid=`ps ax |grep kermit |grep -v grep|awk '{print $1;}'`
+if [ "X${pid}" != "X" ] ; then
+ echo 'killing kermit, PID=' ${pid}
+ kill -9 ${pid}
+fi
+
+# reset ppp interface
+ifconfig ppp0 down
+ifconfig ppp0 delete
+
+# enable autoanswer mode
+kermit -y /etc/ppp/kermit.ans
+
+# run ppp
+pppd /dev/tty01 19200
+----------------------------
+
+Use this script to stop ppp server:
+
+-----/etc/ppp/pppservdown---
+#!/bin/sh
+ps ax |grep pppd |grep -v grep
+pid=`ps ax |grep pppd |grep -v grep|awk '{print $1;}'`
+if [ "X${pid}" != "X" ] ; then
+ echo 'killing pppd, PID=' ${pid}
+ kill ${pid}
+fi
+ps ax |grep kermit |grep -v grep
+pid=`ps ax |grep kermit |grep -v grep|awk '{print $1;}'`
+if [ "X${pid}" != "X" ] ; then
+ echo 'killing kermit, PID=' ${pid}
+ kill -9 ${pid}
+fi
+ifconfig ppp0 down
+ifconfig ppp0 delete
+
+kermit -y /etc/ppp/kermit.noans
+----------------------------
+
+Following kermit script will enable/disable autoanswer mode
+on your modem:
+
+-----/etc/ppp/kermit.ans----
+set line /dev/tty01
+set speed 19200
+set file type binary
+set file names literal
+set win 8
+set rec pack 1024
+set send pack 1024
+set block 3
+set term bytesize 8
+set command bytesize 8
+set flow none
+
+pau 1
+out +++
+inp 5 OK
+out ATH0\13
+inp 5 OK
+echo \13
+out ATS0=1\13 ; change this to out ATS0=0\13 if you want to disable
+ ; autoanswer mod
+inp 5 OK
+echo \13
+exit
+-----------------------------
+
+This script is used for dialing and authorizing on remote host.
+You will need to customize it for your needs.
+Put your login and password in this script , also you'll need
+to change input statement depending on responces from your modem
+and remote host.
+
+-----/etc/ppp/kermit.dial----
+
+;
+; put the com line attached to the modem here:
+;
+set line /dev/tty01
+;
+; put the modem speed here:
+;
+set speed 19200
+set file type binary ; full 8 bit file xfer
+set file names literal
+set win 8
+set rec pack 1024
+set send pack 1024
+set block 3
+set term bytesize 8
+set command bytesize 8
+set flow none
+set modem hayes
+set dial hangup off
+set carrier auto ; Then SET CARRIER if necessary,
+set dial display on ; Then SET DIAL if necessary,
+set input echo on
+set input timeout proceed
+set input case ignore
+def \%x 0 ; login prompt counter
+goto slhup
+
+:slcmd ; put the modem in command mode
+echo Put the modem in command mode.
+clear ; Clear unread characters from input buffer
+pause 1
+output +++ ; hayes escape sequence
+input 1 OK\13\10 ; wait for OK
+if success goto slhup
+output \13
+pause 1
+output at\13
+input 1 OK\13\10
+if fail goto slcmd ; if modem doesn't answer OK, try again
+
+:slhup ; hang up the phone
+clear ; Clear unread characters from input buffer
+pause 1
+echo Hanging up the phone.
+output ath0\13 ; hayes command for on hook
+input 2 OK\13\10
+if fail goto slcmd ; if no OK answer, put modem in command mode
+
+:sldial ; dial the number
+pause 1
+echo Dialing.
+output atdt9,550311\13\10 ; put phone number here
+assign \%x 0 ; zero the time counter
+
+:look
+clear ; Clear unread characters from input buffer
+increment \%x ; Count the seconds
+input 1 {CONNECT }
+if success goto sllogin
+reinput 1 {NO CARRIER\13\10}
+if success goto sldial
+reinput 1 {NO DIALTONE\13\10}
+if success goto slnodial
+reinput 1 {\255}
+if success goto slhup
+reinput 1 {\127}
+if success goto slhup
+if < \%x 60 goto look
+else goto slhup
+
+:sllogin ; login
+assign \%x 0 ; zero the time counter
+pause 1
+echo Looking for login prompt.
+
+:slloop
+increment \%x ; Count the seconds
+clear ; Clear unread characters from input buffer
+output \13
+;
+; put your expected login prompt here:
+;
+input 1 {Username: }
+if success goto sluid
+reinput 1 {\255}
+if success goto slhup
+reinput 1 {\127}
+if success goto slhup
+if < \%x 10 goto slloop ; try 10 times to get a login prompt
+else goto slhup ; hang up and start again if 10 failures
+
+:sluid
+;
+; put your userid here:
+;
+output ppp-login\13
+input 1 {Password: }
+;
+; put your password here:
+;
+output ppp-password\13
+input 1 {Entering SLIP mode.}
+echo
+quit
+
+:slnodial
+echo \7No dialtone. Check the telephone line!\7
+exit 1
+
+; local variables:
+; mode: csh
+; comment-start: "; "
+; comment-start-skip: "; "
+; end:
+------------------------
+
+###################################################################
+Gennady B. Sorokopud ( gena@NetVision.net.il ) 24/10/94 12:00
OpenPOWER on IntegriCloud