1.\" manual page [] for ppp 0.94 beta2 + alpha
2.\" $Id: ppp.8,v 1.1.1.1 1995/01/31 06:29:58 amurai Exp $
3.\" SH section heading
4.\" SS subsection heading
5.\" LP paragraph
6.\" IP indented paragraph
7.\" TP hanging label
8.TH PPP 8
9.SH NAME
10ppp \- Point to Point Protocol (aka iijppp)
11.SH SYNOPSIS
12.B ppp
13[
14.I -auto | -direct -dedicated
15] [
16.I system
17]
18.SH DESCRIPTION
19.LP
20This is user process \fIPPP\fR software package. Normally, \fIPPP\fR
21is implemented as a part of kernel and hard to debug and/or modify its
22behavior. However, in this implementation, \fIPPP\fR is implemented as
23a user process with the help of tunnel device driver.
24.LP
25
26.SH Major Features
27
28.TP 2
29o Provide interactive user interface. Using its command mode, user can
30easily enter commands to establish the connection with the peer, check
31the status of connection, and close the connection. And now, all
32functions has password protected if describe your hostname/password in
33secret file or exist secret file itself.
34
35.TP 2
36o Supports both of manual and automatic dialing. Interactive mode has
37``term'' command which enables you to talk to your modem
38directory. When your modem is connected to the peer, and it starts to
39speak \fIPPP\fR, \fIPPP\fR software detects it and turns into packet
40mode automatically. Once you have convinced how to connect with the
41peer, you can write chat script to define necessary dialing and login
42procedure for later convenience.
43
44.TP 2
45o Supports on-demand dialup capability. By using auto mode, \fIPPP\fR
46program will act as a daemon and wait for the packet send to the peer.
47Once packet is found, daemon automatically dials and establish the
48connection.
49
50.TP 2
51o
52Can act as server which accept incoming \fIPPP\fR connection.
53
54.TP 2
55o
56Supports PAP and CHAP authentification.
57
58.TP 2
59o
60Supports Proxy Arp.
61
62.TP 2
63o Supports packet filtering. User can define four kinds of filters;
64ifilter for incoming packet, ofilter for outgoing packet, dfilter to
65define dialing trigger packet and afilter to keep alive a connection
66by trigger packet.
67
68.TP 2
69o Tunnel driver supports bpf. That is, user can use tcpdump to check
70packet flow over the \fIPPP\fR link.
71
72.TP 2
73o
74Supports \fIPPP\fR over TCP capability.
75
76.TP 2
77o
78Supports IETF draft Predictor-1 compression.
79
80.TP 2
81o Runs under BSDI-1.1 and FreeBSD-1.1. Patch for NeXTSTEP 3.2 is also
82available on the net.
83
84.SH MANUAL DIALING
85
86 % ppp
87 User Process PPP written by Toshiharu OHNO.
88 -- If you write your hostname and password in ppp.secret,
89 you can't do anything even quit command --
90 ppp on tama> quit
91 what ?
92 ppp on tama> pass <password>
93 -- You can specify modem and device name using following commands.
94 ppp ON tama> set line /dev/cua01
95 ppp ON tama> set speed 38400
96 ppp ON tama> set parity even
97 ppp ON tama> show modem
98 -- Modem related parameters are shown in here
99 ppp ON tama>
100 -- Use term command to talk with your modem
101 ppp ON tama> term
102 at
103 OK
104 atdt123456
105 CONNECT
106
107 login: ppp
108 Password:
109 -- PPP started in remote side ---
110
111 -- When peer start to speak PPP, the program will detect it
112 -- automatically and back to command mode.
113 ppp on tama>
114 \fBPPP\fR>
115
116 -- NOW, you are get connected !! Note that prompt has changed to
117 -- capital letters
118 PPP ON tama> show lcp
119
120 -- You'll see LCP status --
121
122 PPP ON tama> show ipcp
123
124 -- You'll see IPCP status --
125 -- At this point, your machine has host route to the peer.
126 -- If your want to add default route entry, then enter
127
128 PPP ON tama> add 0 0 HISADDR
129
130 -- Here string `HISADDR' represents IP address of connected peer.
131
132 PPP ON tama>
133 -- Use applications (i.e. ping, telnet, ftp) in other windows
134
135 PPP ON tama> show log
136
137 -- Gives you some logging messages
138
139 PPP ON tama> close
140
141 -- Connection is closed, and modem will be hanged.
142
143 ppp ON tama> quit
144 %
145.LP
146
147.SH AUTOMATIC DIALING
148
149.LP
150To use automatic dialing, you must prepare Dial and Login chat script.
151See example definition found in ppp.conf.sample (Format of ppp.conf is
152pretty simple.)
153
154.TP 2
155o
156Each line contains one command, label or comment.
157
158.TP 2
159o
160Line stating with # is treated as a comment line.
161
162.TP 2
163o
164Label name has to start from first column and should be followed by colon (:).
165
166.TP 2
167o
168Command line must contains space or tab at first column.
169
170.LP
171If ppp.conf is ready, specify destination label name when you invoke
172ppp. Commands associated with destination label is executed when ppp
173command is invoked. Note that commands associated with ``default''
174label is ALWAYS executed.
175
176Once connection is made, you'll find that prompt is changed to
177
178 capital \fIPPP\fR>.
179
180 % ppp pm2
181 ...
182 ppp ON tama> dial
183 dial OK!
184 login OK!
185 PPP ON tama>
186
187If ppp.linkup file is available, its contents are executed when
188\fIPPP\fR link is connected. See example which add default route.
189The string HISADDR matches with IP address of connected peer.
190
191
192.SH DAIL ON DEMAND
193
194.LP
195 To play with demand dialing, you must use -auto option. Also, you
196must specify destination label with proper setup in ppp.conf. It must
197contain ``ifaddr'' command to define peer's IP address. (refer
198/etc/ppp/ppp.conf.sample)
199
200
201 % ppp -auto pm2demand
202 ...
203 %
204
205.LP
206When -auto is specified, \fIPPP\fR program works as a daemon. But,
207you are still able to use command features to check its behavior.
208
209
210 % telnet localhost 3000
211 ...
212 PPP on tama> show ipcp
213 ....
214
215.LP
216 Each ppp has associated port number, which is computed as "3000 +
217tunnel_device_number". If 3000 is not good base number, edit defs.h.
218When packet toward to remote network is detected, \fIPPP\fR will take
219dialing action and try to connect with the peer. If dialing is failed,
220program will wait for 30 seconds. Once this hold time expired, another
221trigger packet cause dialing action. Note that automatic re-dialing is
222NOT implemented.
223
224
225 To terminate program, use
226
227 PPP on tama> close
228 \fBppp\fR> quit all
229
230.LP
231 Simple ``quit'' command will terminates telnet connection, but \fIPPP\fR program itself is not terminated. You must use ``quit all'' to terminate the program running as daemon.
232.LP
233
234.SH PACKET FILTERING
235
236.LP
237This implementation supports packet filtering. There are three filters; ifilter, ofilter and dfilter. Here's some basics.
238.LP
239
240.TP 2
241o
242Filter definition has next syntax.
243
244 set filter-name rule-no action [src_addr/src_width] [dst_addr/dst_width]
245 [proto [src [lt|eq|gt] port ] [dst [lt|eq|gt] port] [estab]
246
247 a) filter-name should be ifilter, ofilter or dfiler.
248
249 b) There are two actions permit and deny. If given packet is matched
250 against the rule, action is taken immediately.
251
252 c) src_width and dst_width works like a netmask to represent address range.
253
254 d) proto must be one of icmp, udp or tcp.
255
256.TP 2
257o
258Each filter can hold upto 20 rules. Rule number starts from 0. Entire rule set is not effective until rule 0 is defined.
259
260.TP 2
261o
262If no rule is matched with a packet, that packet will be discarded (blocked).
263
264.TP 2
265o
266Use ``set filer-name -1'' to flush all rules.
267
268.LP
269 See /etc/ppp/ppp.conf.filter.example
270.LP
271
272.SH RECEIVE INCOMING PPP CONNECTION
273
274.LP
275 To receive incoming \fIPPP\fR connection request, follow next steps.
276.LP
277
278 a) Prepare bidir entry in your /etc/gettytab
279
280 bidir.38400:\
281 :bi:ap:hf:tc=38400-baud:
282
283 b) Edit /etc/ttys to enable getty on the port where modem is attached.
284
285 cua00 "/usr/libexec/getty stdir.38400" dialup on
286
287 Don't forget to send HUP signal to init process.
288
289 # kill -HUP 1
290
291 c) Prepare account for incoming user.
292
293ppp:*:21:0:PPP Login User:/home/ppp:/usr/local/bin/ppplogin
294
295 d) Create /usr/local/bin/ppplogin file with next contents.
296
297 #!/bin/sh
298 /usr/local/bin/ppp -direct
299
300 You can specify label name for further control.
301
302.LP
303 Direct mode (-direct) lets \fIPPP\fR to work with standard in and out. Again, you can telnet to 3000 to get command mode control.
304.LP
305
306.SH SETTING IDLE TIMER
307
308.LP
309 To check/set idletimer, use ``show timeout'' and ``set timeout'' command.
310.LP
311
312 Ex. ppp> set timeout 600
313
314.LP
315 Timeout period is measured in secs and default value is 180 or 3 min. To disable idle timer function, use ``set timeout 0''.
316.LP
317
318.LP
319 In -auto mode, idle timeout cause \fIPPP\fR session closed. However, \fIPPP\fR program itself is keep running. Another trigger packet cause dialing action.
320.LP
321
322.SH Predictor-1 compression
323
324.LP
325 This version supports CCP and Predictor type 1 compression based on current IETF-draft specs. As a default behavior, \fIPPP\fR will propose to use (or willing to accept) this capability and use it if peer agrees (or requests).
326.LP
327
328.LP
329 To disable CCP/predictor function completely, use ``disable pred'' and ``deny pred'' command.
330.LP
331
332.SH Controlling IP address
333
334.LP
335 \fIPPP\fR uses IPCP to negotiate IP addresses. Each side of node
336informs IP address that willing to use to the peer, and if requested
337IP address is acceptable, \fIPPP\fR returns ACK to
338requester. Otherwise, \fIPPP\fR returns NAK to suggest the peer to use
339different IP address. When both side of nodes agrees to accept the
340received request (and send ACK), IPCP is reached to open state and
341network level connection is established.
342
343
344.LP
345 To control, this IPCP behavior, this implementation has ``set
346ifaddr'' to define MY and HIS IP address.
347
348
349.TP3
350ifaddr src_addr dst_addr
351
352.LP
353Where, src_addr is the IP address that my side is willing to use, and
354dst_addr is the IP address which his side should use.
355.LP
356
357.TP3
358ifaddr 192.244.177.38 192.244.177.2
359
360For example, above specification means
361
362.TP
363o I strongly want to use 192.244.177.38 as my side. I'll disagree when
364peer suggest me to use other addresses.
365
366.TP 2
367o I strongly insists peer to use 192.244.177.2 as his side address. I
368don't permit him to use any IP address but 192.244.177.2. When peer
369request other IP address, I always suggest him to use 192.244.177.2.
370
371.LP
372 This is all right, when each side has pre-determined IP address.
373However, it is often the case one side is acting as a server which
374controls IP address and the other side should obey the direction from
375him. In order to allow more flexible behavior, `ifaddr' command
376allows user to specify IP address more loosely.
377
378
379.TP 2
380ifaddr 192.244.177.38/24 192.244.177.2/20
381
382 Number followed by slash (/) represents number of bits significant in
383IP address. That is, this example means
384
385.TP 2
386o I'd like to use 192.244.177.38 as my side address, if it is
387possible. But I also accept any IP address between 192.244.177.0 and
388192.244.177.255.
389
390.TP 2
391o I'd like to make him to use 192.244.177.2 as his side address. But
392I also permit him to use any IP address between 192.244.176.0 and
393192.244.191.255.
394
395 Notes:
396
397.TP 2
398o As you may have already noticed, 192.244.177.2 is equivalent to say
399192.244.177.2/32.
400
401.TP 2
402o As an exception, 0 is equivalent to 0.0.0.0/0. Means, I have no idea
403about IP address and obey what he says.
404
405.TP 2
406o 192.244.177.2/0 means that I'll accept/permit any IP address but
407I'll try to insist to use 192.244.177.2 at first.
408
409.SH Connecting with service provider
410
411.LP
412 1) Describe provider's phone number in DialScript. Use ``set dial'' or
413 ``set phone'' command.
414
415 2) Describle login procedure in LoginScript. Use ``set login'' command.
416
417.TP
4183) Use ``set ifaddr'' command to define IP address.
419
420 o If you know what IP address provider uses, then use it as his address.
421
422 o If provider has assigned particular IP address for you, then use it
423 as my address.
424
425 o If provider assigns your address dynamically, use 0 as my address.
426
427 o If you have no info on IP addresses, then try
428
429 set ifaddr 0 0
430.TP 2
4314) If provider request you to use PAP/CHAP auth method,
432add next lines into your ppp.conf.
433
434.TP 3
435.B enable pap (or enable chap)
436.TP 3
437.B disable chap (or disable pap)
438.TP 3
439.B set authname MyName
440.TP 3
441.B set authkey MyPassword
442.TP 3
443
444.LP
445Please refer /etc/ppp/ppp.conf.iij for some real examples.
446.LP
447
448.SH Logging facility
449
450.LP
451 \fI\fIPPP\fR\fR is able to generate following level log info as
452/var/log/ppp.log
453
454
455.TP
456.B Phase
457Phase transition log output
458.TP
459.B Chat
460Generate Chat script trace log
461.TP
462.B LQM
463Generate LQR report
464.TP
465.B LCP
466Generate LCP/IPCP packet trace
467.TP
468.B TCP/IP
469Dump TCP/IP packet
470.TP
471.B HDLC
472Dump HDLC packet in hex
473.TP
474.B Async
475Dump async level packet in hex
476
477.LP
478``set debug'' command allows you to set logging output level, and
479multiple levels can be specified. Default is equivalent to ``set
480debug phase lcp''.
481
482.SH For more details
483
484.TP 2
485o
486Please read Japanese doc for complete explanation.
487Well, it is not useful for non-japanese readers,
488but examples in the document may help you to guess.
489
490.TP 2
491o
492Please read example configuration files.
493
494.TP 2
495o
496Use ``help'', ``show ?'' and ``set ?'' command.
497
498.TP 2
499o
500NetBSD and BSDI-1.0 has been supported in previous release,
501but no longer supported in this release.
502Please contact to author if you need old driver code.
503
504.SH FILES
505.LP
506\fIPPP\fR may refers three files, ppp.conf, ppp.linkup and ppp.secret.
507These files are placed in /etc/ppp, but user can create his own files
508under HOME directory as .ppp.conf,.ppp.linkup and .ppp.secret.the ppp
509always try to consult to user's personal setup first.
510
511.TP
512.B $HOME/ppp/.ppp.[conf|linkup|secret]
513User depend configuration files.
514
515.TP
516.B /etc/ppp/ppp.conf
517System default configuration file.
518
519.TP
520.B /etc/ppp/ppp.secret
521A authorization file for each system.
522
523.TP
524.B /etc/ppp/ppp.linkup
525A checking file when
526.I ppp
527establishes network level connection.
528
529.TP
530.B /var/log/ppp.log
531Logging and debug information file.
532
533.TP
534.B /var/spool/lock/Lck..*
535tty port locking file.
536
537.SH BUGS
538
539.SH HISTORY
540This programm has deliverd into core since FreeBSD-2.1 by Atsushi
541Murai (amurai@spec.co.jp).
542
543.SH AUTHORS
544Toshiharu OHNO (tony-o@iij.ad.jp)
2.\" $Id: ppp.8,v 1.1.1.1 1995/01/31 06:29:58 amurai Exp $
3.\" SH section heading
4.\" SS subsection heading
5.\" LP paragraph
6.\" IP indented paragraph
7.\" TP hanging label
8.TH PPP 8
9.SH NAME
10ppp \- Point to Point Protocol (aka iijppp)
11.SH SYNOPSIS
12.B ppp
13[
14.I -auto | -direct -dedicated
15] [
16.I system
17]
18.SH DESCRIPTION
19.LP
20This is user process \fIPPP\fR software package. Normally, \fIPPP\fR
21is implemented as a part of kernel and hard to debug and/or modify its
22behavior. However, in this implementation, \fIPPP\fR is implemented as
23a user process with the help of tunnel device driver.
24.LP
25
26.SH Major Features
27
28.TP 2
29o Provide interactive user interface. Using its command mode, user can
30easily enter commands to establish the connection with the peer, check
31the status of connection, and close the connection. And now, all
32functions has password protected if describe your hostname/password in
33secret file or exist secret file itself.
34
35.TP 2
36o Supports both of manual and automatic dialing. Interactive mode has
37``term'' command which enables you to talk to your modem
38directory. When your modem is connected to the peer, and it starts to
39speak \fIPPP\fR, \fIPPP\fR software detects it and turns into packet
40mode automatically. Once you have convinced how to connect with the
41peer, you can write chat script to define necessary dialing and login
42procedure for later convenience.
43
44.TP 2
45o Supports on-demand dialup capability. By using auto mode, \fIPPP\fR
46program will act as a daemon and wait for the packet send to the peer.
47Once packet is found, daemon automatically dials and establish the
48connection.
49
50.TP 2
51o
52Can act as server which accept incoming \fIPPP\fR connection.
53
54.TP 2
55o
56Supports PAP and CHAP authentification.
57
58.TP 2
59o
60Supports Proxy Arp.
61
62.TP 2
63o Supports packet filtering. User can define four kinds of filters;
64ifilter for incoming packet, ofilter for outgoing packet, dfilter to
65define dialing trigger packet and afilter to keep alive a connection
66by trigger packet.
67
68.TP 2
69o Tunnel driver supports bpf. That is, user can use tcpdump to check
70packet flow over the \fIPPP\fR link.
71
72.TP 2
73o
74Supports \fIPPP\fR over TCP capability.
75
76.TP 2
77o
78Supports IETF draft Predictor-1 compression.
79
80.TP 2
81o Runs under BSDI-1.1 and FreeBSD-1.1. Patch for NeXTSTEP 3.2 is also
82available on the net.
83
84.SH MANUAL DIALING
85
86 % ppp
87 User Process PPP written by Toshiharu OHNO.
88 -- If you write your hostname and password in ppp.secret,
89 you can't do anything even quit command --
90 ppp on tama> quit
91 what ?
92 ppp on tama> pass <password>
93 -- You can specify modem and device name using following commands.
94 ppp ON tama> set line /dev/cua01
95 ppp ON tama> set speed 38400
96 ppp ON tama> set parity even
97 ppp ON tama> show modem
98 -- Modem related parameters are shown in here
99 ppp ON tama>
100 -- Use term command to talk with your modem
101 ppp ON tama> term
102 at
103 OK
104 atdt123456
105 CONNECT
106
107 login: ppp
108 Password:
109 -- PPP started in remote side ---
110
111 -- When peer start to speak PPP, the program will detect it
112 -- automatically and back to command mode.
113 ppp on tama>
114 \fBPPP\fR>
115
116 -- NOW, you are get connected !! Note that prompt has changed to
117 -- capital letters
118 PPP ON tama> show lcp
119
120 -- You'll see LCP status --
121
122 PPP ON tama> show ipcp
123
124 -- You'll see IPCP status --
125 -- At this point, your machine has host route to the peer.
126 -- If your want to add default route entry, then enter
127
128 PPP ON tama> add 0 0 HISADDR
129
130 -- Here string `HISADDR' represents IP address of connected peer.
131
132 PPP ON tama>
133 -- Use applications (i.e. ping, telnet, ftp) in other windows
134
135 PPP ON tama> show log
136
137 -- Gives you some logging messages
138
139 PPP ON tama> close
140
141 -- Connection is closed, and modem will be hanged.
142
143 ppp ON tama> quit
144 %
145.LP
146
147.SH AUTOMATIC DIALING
148
149.LP
150To use automatic dialing, you must prepare Dial and Login chat script.
151See example definition found in ppp.conf.sample (Format of ppp.conf is
152pretty simple.)
153
154.TP 2
155o
156Each line contains one command, label or comment.
157
158.TP 2
159o
160Line stating with # is treated as a comment line.
161
162.TP 2
163o
164Label name has to start from first column and should be followed by colon (:).
165
166.TP 2
167o
168Command line must contains space or tab at first column.
169
170.LP
171If ppp.conf is ready, specify destination label name when you invoke
172ppp. Commands associated with destination label is executed when ppp
173command is invoked. Note that commands associated with ``default''
174label is ALWAYS executed.
175
176Once connection is made, you'll find that prompt is changed to
177
178 capital \fIPPP\fR>.
179
180 % ppp pm2
181 ...
182 ppp ON tama> dial
183 dial OK!
184 login OK!
185 PPP ON tama>
186
187If ppp.linkup file is available, its contents are executed when
188\fIPPP\fR link is connected. See example which add default route.
189The string HISADDR matches with IP address of connected peer.
190
191
192.SH DAIL ON DEMAND
193
194.LP
195 To play with demand dialing, you must use -auto option. Also, you
196must specify destination label with proper setup in ppp.conf. It must
197contain ``ifaddr'' command to define peer's IP address. (refer
198/etc/ppp/ppp.conf.sample)
199
200
201 % ppp -auto pm2demand
202 ...
203 %
204
205.LP
206When -auto is specified, \fIPPP\fR program works as a daemon. But,
207you are still able to use command features to check its behavior.
208
209
210 % telnet localhost 3000
211 ...
212 PPP on tama> show ipcp
213 ....
214
215.LP
216 Each ppp has associated port number, which is computed as "3000 +
217tunnel_device_number". If 3000 is not good base number, edit defs.h.
218When packet toward to remote network is detected, \fIPPP\fR will take
219dialing action and try to connect with the peer. If dialing is failed,
220program will wait for 30 seconds. Once this hold time expired, another
221trigger packet cause dialing action. Note that automatic re-dialing is
222NOT implemented.
223
224
225 To terminate program, use
226
227 PPP on tama> close
228 \fBppp\fR> quit all
229
230.LP
231 Simple ``quit'' command will terminates telnet connection, but \fIPPP\fR program itself is not terminated. You must use ``quit all'' to terminate the program running as daemon.
232.LP
233
234.SH PACKET FILTERING
235
236.LP
237This implementation supports packet filtering. There are three filters; ifilter, ofilter and dfilter. Here's some basics.
238.LP
239
240.TP 2
241o
242Filter definition has next syntax.
243
244 set filter-name rule-no action [src_addr/src_width] [dst_addr/dst_width]
245 [proto [src [lt|eq|gt] port ] [dst [lt|eq|gt] port] [estab]
246
247 a) filter-name should be ifilter, ofilter or dfiler.
248
249 b) There are two actions permit and deny. If given packet is matched
250 against the rule, action is taken immediately.
251
252 c) src_width and dst_width works like a netmask to represent address range.
253
254 d) proto must be one of icmp, udp or tcp.
255
256.TP 2
257o
258Each filter can hold upto 20 rules. Rule number starts from 0. Entire rule set is not effective until rule 0 is defined.
259
260.TP 2
261o
262If no rule is matched with a packet, that packet will be discarded (blocked).
263
264.TP 2
265o
266Use ``set filer-name -1'' to flush all rules.
267
268.LP
269 See /etc/ppp/ppp.conf.filter.example
270.LP
271
272.SH RECEIVE INCOMING PPP CONNECTION
273
274.LP
275 To receive incoming \fIPPP\fR connection request, follow next steps.
276.LP
277
278 a) Prepare bidir entry in your /etc/gettytab
279
280 bidir.38400:\
281 :bi:ap:hf:tc=38400-baud:
282
283 b) Edit /etc/ttys to enable getty on the port where modem is attached.
284
285 cua00 "/usr/libexec/getty stdir.38400" dialup on
286
287 Don't forget to send HUP signal to init process.
288
289 # kill -HUP 1
290
291 c) Prepare account for incoming user.
292
293ppp:*:21:0:PPP Login User:/home/ppp:/usr/local/bin/ppplogin
294
295 d) Create /usr/local/bin/ppplogin file with next contents.
296
297 #!/bin/sh
298 /usr/local/bin/ppp -direct
299
300 You can specify label name for further control.
301
302.LP
303 Direct mode (-direct) lets \fIPPP\fR to work with standard in and out. Again, you can telnet to 3000 to get command mode control.
304.LP
305
306.SH SETTING IDLE TIMER
307
308.LP
309 To check/set idletimer, use ``show timeout'' and ``set timeout'' command.
310.LP
311
312 Ex. ppp> set timeout 600
313
314.LP
315 Timeout period is measured in secs and default value is 180 or 3 min. To disable idle timer function, use ``set timeout 0''.
316.LP
317
318.LP
319 In -auto mode, idle timeout cause \fIPPP\fR session closed. However, \fIPPP\fR program itself is keep running. Another trigger packet cause dialing action.
320.LP
321
322.SH Predictor-1 compression
323
324.LP
325 This version supports CCP and Predictor type 1 compression based on current IETF-draft specs. As a default behavior, \fIPPP\fR will propose to use (or willing to accept) this capability and use it if peer agrees (or requests).
326.LP
327
328.LP
329 To disable CCP/predictor function completely, use ``disable pred'' and ``deny pred'' command.
330.LP
331
332.SH Controlling IP address
333
334.LP
335 \fIPPP\fR uses IPCP to negotiate IP addresses. Each side of node
336informs IP address that willing to use to the peer, and if requested
337IP address is acceptable, \fIPPP\fR returns ACK to
338requester. Otherwise, \fIPPP\fR returns NAK to suggest the peer to use
339different IP address. When both side of nodes agrees to accept the
340received request (and send ACK), IPCP is reached to open state and
341network level connection is established.
342
343
344.LP
345 To control, this IPCP behavior, this implementation has ``set
346ifaddr'' to define MY and HIS IP address.
347
348
349.TP3
350ifaddr src_addr dst_addr
351
352.LP
353Where, src_addr is the IP address that my side is willing to use, and
354dst_addr is the IP address which his side should use.
355.LP
356
357.TP3
358ifaddr 192.244.177.38 192.244.177.2
359
360For example, above specification means
361
362.TP
363o I strongly want to use 192.244.177.38 as my side. I'll disagree when
364peer suggest me to use other addresses.
365
366.TP 2
367o I strongly insists peer to use 192.244.177.2 as his side address. I
368don't permit him to use any IP address but 192.244.177.2. When peer
369request other IP address, I always suggest him to use 192.244.177.2.
370
371.LP
372 This is all right, when each side has pre-determined IP address.
373However, it is often the case one side is acting as a server which
374controls IP address and the other side should obey the direction from
375him. In order to allow more flexible behavior, `ifaddr' command
376allows user to specify IP address more loosely.
377
378
379.TP 2
380ifaddr 192.244.177.38/24 192.244.177.2/20
381
382 Number followed by slash (/) represents number of bits significant in
383IP address. That is, this example means
384
385.TP 2
386o I'd like to use 192.244.177.38 as my side address, if it is
387possible. But I also accept any IP address between 192.244.177.0 and
388192.244.177.255.
389
390.TP 2
391o I'd like to make him to use 192.244.177.2 as his side address. But
392I also permit him to use any IP address between 192.244.176.0 and
393192.244.191.255.
394
395 Notes:
396
397.TP 2
398o As you may have already noticed, 192.244.177.2 is equivalent to say
399192.244.177.2/32.
400
401.TP 2
402o As an exception, 0 is equivalent to 0.0.0.0/0. Means, I have no idea
403about IP address and obey what he says.
404
405.TP 2
406o 192.244.177.2/0 means that I'll accept/permit any IP address but
407I'll try to insist to use 192.244.177.2 at first.
408
409.SH Connecting with service provider
410
411.LP
412 1) Describe provider's phone number in DialScript. Use ``set dial'' or
413 ``set phone'' command.
414
415 2) Describle login procedure in LoginScript. Use ``set login'' command.
416
417.TP
4183) Use ``set ifaddr'' command to define IP address.
419
420 o If you know what IP address provider uses, then use it as his address.
421
422 o If provider has assigned particular IP address for you, then use it
423 as my address.
424
425 o If provider assigns your address dynamically, use 0 as my address.
426
427 o If you have no info on IP addresses, then try
428
429 set ifaddr 0 0
430.TP 2
4314) If provider request you to use PAP/CHAP auth method,
432add next lines into your ppp.conf.
433
434.TP 3
435.B enable pap (or enable chap)
436.TP 3
437.B disable chap (or disable pap)
438.TP 3
439.B set authname MyName
440.TP 3
441.B set authkey MyPassword
442.TP 3
443
444.LP
445Please refer /etc/ppp/ppp.conf.iij for some real examples.
446.LP
447
448.SH Logging facility
449
450.LP
451 \fI\fIPPP\fR\fR is able to generate following level log info as
452/var/log/ppp.log
453
454
455.TP
456.B Phase
457Phase transition log output
458.TP
459.B Chat
460Generate Chat script trace log
461.TP
462.B LQM
463Generate LQR report
464.TP
465.B LCP
466Generate LCP/IPCP packet trace
467.TP
468.B TCP/IP
469Dump TCP/IP packet
470.TP
471.B HDLC
472Dump HDLC packet in hex
473.TP
474.B Async
475Dump async level packet in hex
476
477.LP
478``set debug'' command allows you to set logging output level, and
479multiple levels can be specified. Default is equivalent to ``set
480debug phase lcp''.
481
482.SH For more details
483
484.TP 2
485o
486Please read Japanese doc for complete explanation.
487Well, it is not useful for non-japanese readers,
488but examples in the document may help you to guess.
489
490.TP 2
491o
492Please read example configuration files.
493
494.TP 2
495o
496Use ``help'', ``show ?'' and ``set ?'' command.
497
498.TP 2
499o
500NetBSD and BSDI-1.0 has been supported in previous release,
501but no longer supported in this release.
502Please contact to author if you need old driver code.
503
504.SH FILES
505.LP
506\fIPPP\fR may refers three files, ppp.conf, ppp.linkup and ppp.secret.
507These files are placed in /etc/ppp, but user can create his own files
508under HOME directory as .ppp.conf,.ppp.linkup and .ppp.secret.the ppp
509always try to consult to user's personal setup first.
510
511.TP
512.B $HOME/ppp/.ppp.[conf|linkup|secret]
513User depend configuration files.
514
515.TP
516.B /etc/ppp/ppp.conf
517System default configuration file.
518
519.TP
520.B /etc/ppp/ppp.secret
521A authorization file for each system.
522
523.TP
524.B /etc/ppp/ppp.linkup
525A checking file when
526.I ppp
527establishes network level connection.
528
529.TP
530.B /var/log/ppp.log
531Logging and debug information file.
532
533.TP
534.B /var/spool/lock/Lck..*
535tty port locking file.
536
537.SH BUGS
538
539.SH HISTORY
540This programm has deliverd into core since FreeBSD-2.1 by Atsushi
541Murai (amurai@spec.co.jp).
542
543.SH AUTHORS
544Toshiharu OHNO (tony-o@iij.ad.jp)