1PPTP(8) System Manager's Manual PPTP(8)
2
3
4
6 pptp - PPTP driver
7
9 pptp <pptp-server-IP> <pptp-options> [ppp-options] ...
10
12 pptp establishes the client side of a Virtual Private Network (VPN)
13 using the Point-to-Point Tunneling Protocol (PPTP). Use this program
14 to connect to an employer's PPTP based VPN, or to certain cable and
15 ADSL service providers.
16
17 By default, pptp establishes the PPTP call to the PPTP server, and then
18 starts an instance of pppd to manage the data transfer. However, pptp
19 can also be run as a connection manager within pppd.
20
22 The first non-option argument on the pptp command line must be the host
23 name or IP address of the PPTP server.
24
25 All long options (starting with "--") are interpreted as pptp options,
26 and a fatal error occurs if an unrecognised option is used.
27
28 All command-line arguments which do not start with "-" are interpreted
29 as ppp options, and passed as is to pppd unless --nolaunchpppd is
30 given.
31
32 --phone <number>
33 Pass <number> to remote host as phone number
34
35 --nolaunchpppd
36 Do not launch pppd but use stdin as the network connection. Use
37 this flag when including pptp as a pppd connection process using
38 the pty option. See EXAMPLES.
39
40 --quirks <quirk>
41 Work around a buggy PPTP implementation, adopts special case
42 handling for particular PPTP servers and ADSL modems. Currently
43 recognised values are BEZEQ_ISRAEL only
44
45 --debug
46 Run in foreground (for debugging with gdb)
47
48 --sync Enable Synchronous HDLC (pppd must use it too)
49
50 --timeout <secs>
51 Time to wait for reordered packets (0.01 to 10 secs)
52
53 --nobuffer
54 Completely disables buffering and reordering of packets. Any
55 --timeout specified will be ignored.
56
57 --idle-wait <secs>
58 Time to wait before sending a control connection echo request.
59 The RFC2637 default is 60 seconds.
60
61 --max-echo-wait <secs>
62 Time to wait for an echo reply before closing the control con‐
63 nection. The RFC2637 default is 60 seconds.
64
65 --logstring <name>
66 Use <name> instead of 'anon' in syslog messages
67
68 --localbind <addr>
69 Bind to specified IP address instead of wildcard
70
71 --rtmark <n>
72 Use specified policy routing mark for all packets. This causes
73 both the TCP control connection's packets as well as the GRE
74 packets to bear the given policy routing / netfilter mark. This
75 can be used with ip rule (from iproute2) to use a separate rout‐
76 ing table for the pptp client.
77
78 (requires root privileges or the CAP_NET_ADMIN capability.)
79
80 --nohostroute
81 Do not configure a host route pointing towards the PPTP server.
82 (cf. ROUTING below)
83
84
85 --loglevel <level>
86 Sets the debugging level (0=low, 1=default, 2=high)
87
88
89 --test-type <n>
90 Enable packet reordering tests that damage the integrity of the
91 packet stream to the server. Use this only when testing
92 servers. Zero is the default, and means that packets are sent
93 in the correct order. A value of one (1) causes a single swap
94 between two packets, such that the sequence numbers might be 1 2
95 3 4 6 5 7 8 9. A value of two (2) causes ten packets to be
96 buffered, then sent out of order but ascending, such that the
97 sequence numbers might be 1 2 3 4 16 6 7 8 9 10 11 12 13 14 15
98 17 18 19 20. A value of three (3) causes ten packets to be
99 buffered, then sent in the reverse order, like this; 1 2 3 4 16
100 15 14 13 12 11 10 9 8 7 6 5 17 18 19 20.
101
102
103 --test-rate <n>
104 Sets the number of packets to pass before causing a reordering
105 test. Default is 100. Has no effect if test-type is zero. The
106 result of test types 2 and 3 are undefined if this value is less
107 than ten.
108
109
110
112 When PPTP is used in conjunction with a default route on top of the
113 tunnel (or just any route encompassing the PPTP server), the mechanics
114 of routing would cause the PPTP packets themselves to be routed over
115 the tunnel. This would result in an encapsulation loop, destroying con‐
116 nectivity.
117
118 pptp by default works around this by looking up the route towards the
119 PPTP server at startup and configures a host route with that data.
120 This essentially "freezes" routing for PPTP packets at the startup con‐
121 figuration. This behaviour can be disabled with --nohostroute if unde‐
122 sired (like when using --rtmark to implement policy routing).
123
124 NB: the route added by pptp is currently not deleted at exit!
125
126
128 BEZEQ_ISRAEL
129 modifies packets to interoperate with Orckit ADSL modems on the
130 BEZEQ network in Israel.
131
132
134 Connection to a Microsoft Windows VPN Server
135
136 pppd noauth nobsdcomp nodeflate require-mppe-128 name domain\\\\user‐
137 name remotename PPTP pty "pptp 10.0.0.5 --nolaunchpppd"
138
139 Note that the chap-secrets file used by pppd must include an entry for
140 domain\\username
141
142
144 The pptp process collects statistics when sending and receiving GRE
145 packets. They are intended to be useful for debugging poor PPTP perfor‐
146 mance and for general monitoring of link quality. The statistics are
147 cumulative since the pptp process was started.
148
149 The statistics can be viewed by sending a SIGUSR1 signal to the "GRE-
150 to-PPP Gateway" process, which will cause it to dump them to the system
151 logs (at the LOG_NOTICE level). A better way to present the statistics
152 to applications is being sought (e.g. SNMP?).
153
154 The following statistics are collected at the time of writing (April
155 2003):
156
157 rx accepted
158 the number of GRE packets successfully passed to PPP
159
160 rx lost
161 the number of packets never received, and presumed lost in the
162 network
163
164 rx under win
165 the number of packets which were duplicates or had old sequence
166 numbers (this might be caused by a packet-reordering network if
167 your reordering timeout is set too low)
168
169 rx over win
170 the number of packets which were too far ahead in the sequence
171 to be reordered (might be caused by loss of more than 300 pack‐
172 ets in a row)
173
174 rx buffered
175 the number of packets which were slightly ahead of sequence, and
176 were either buffered for reordering, or if buffering is dis‐
177 abled, accepted immediately (resulting in the intermediate pack‐
178 ets being discarded).
179
180 rx OS errors
181 the number of times where the operating system reported an error
182 when we tried to read a packet
183
184 rx truncated
185 the number of times we received a packet which was shorter than
186 the length implied by the GRE header
187
188 rx invalid
189 the number of times we received a packet which had invalid or
190 unsupported flags set in the header, wrong version, or wrong
191 protocol.
192
193 rx acks
194 the number of pure acknowledgements received (without data). Too
195 many of these will waste bandwidth, and might be solved by tun‐
196 ing the remote host.
197
198 tx sent
199 the number of GRE packets sent with data
200
201 tx failed
202 the number of packets we tried to send, but the OS reported an
203 error
204
205 tx short
206 the number of times the OS would not let us write a complete
207 packet
208
209 tx acks
210 the number of times we sent a pure ack, without data
211
212 tx oversize
213 the number of times we couldn't send a packet because it was
214 over PACKET_MAX bytes long
215
216 round trip
217 the estimated round-trip time in milliseconds
218
219
221 pppd(8)
222
223 Documentation in /usr/share/doc/pptp
224
226 This manual page was written by James Cameron <james.cameron@hp.com>
227 from text contributed by Thomas Quinot <thomas@debian.org>, for the
228 Debian GNU/Linux system. The description of the available statistics
229 was written by Chris Wilson <chris@netservers.co.uk>. Updates for the
230 Debian distribution by Ola Lundqvist <opal@debian.org>.
231
232
233
234 PPTP(8)