Home | History | Annotate | Line # | Download | only in dist
      1 PPPoL2TP plugin
      2 ===============
      3 
      4 The pppol2tp plugin lets pppd use the Linux kernel driver pppol2tp.ko
      5 to pass PPP frames in L2TP tunnels. The driver was integrated into the
      6 kernel in the 2.6.23 release. For kernels before 2.6.23, an
      7 out-of-tree kernel module is available from the pppol2tp-kmod package
      8 in the OpenL2TP project.
      9 
     10 Note that pppd receives only PPP control frames over the PPPoL2TP
     11 socket; data frames are handled entirely by the kernel.
     12 
     13 The pppol2tp plugin adds extra arguments to pppd and uses the Linux kernel
     14 PPP-over-L2TP driver to set up each session's data path.
     15 
     16 Arguments are:-
     17 
     18 pppol2tp <fd>                   - FD for PPPoL2TP socket
     19 pppol2tp_lns_mode               - PPPoL2TP LNS behavior. Default off.
     20 pppol2tp_send_seq               - PPPoL2TP enable sequence numbers in
     21                                   transmitted data packets. Default off.
     22 pppol2tp_recv_seq               - PPPoL2TP enforce sequence numbers in
     23                                   received data packets. Default off.
     24 pppol2tp_reorderto <millisecs>  - PPPoL2TP data packet reorder timeout.
     25                                   Default 0 (no reordering).
     26 pppol2tp_debug_mask <mask>      - PPPoL2TP debug mask. Bitwise OR of
     27 				  1 - verbose debug
     28 				  2 - control
     29 				  4 - kernel transport
     30 				  8 - ppp packet data
     31 				  Default: 0 (no debug).
     32 pppol2tp_ifname <ifname>	- Name of PPP network interface visible
     33 				  to "ifconfig" and "ip link".
     34 				  Default: "pppN"
     35 pppol2tp_tunnel_id <id>		- L2TP tunnel_id tunneling this PPP
     36 				  session.
     37 pppol2tp_session_id <id>	- L2TP session_id of this PPP session.
     38 				  The tunnel_id/session_id pair is used
     39 				  when sending event messages to openl2tpd.
     40 
     41 pppd will typically be started by an L2TP daemon for each L2TP sesion,
     42 supplying one or more of the above arguments as required. The pppd
     43 user will usually have no visibility of these arguments.
     44 
     45 Two hooks are exported by this plugin.
     46 
     47 void (*pppol2tp_send_accm_hook)(int tunnel_id, int session_id,
     48      uint32_t send_accm, uint32_t recv_accm);
     49 void (*pppol2tp_ip_updown_hook)(int tunnel_id, int session_id, int up);
     50 
     51 Credits
     52 =======
     53 
     54 This plugin was developed by Katalix Systems as part of the OpenL2TP
     55 project, http://openl2tp.sourceforge.net. OpenL2TP is a full-featured
     56 L2TP client-server, suitable for use as an enterprise L2TP VPN server
     57 or a VPN client.
     58 
     59 Please copy problems to the OpenL2TP mailing list:
     60 openl2tp-users (a] lists.sourceforge.net.
     61 
     62 Maintained by:
     63 	James Chapman
     64 	jchapman (a] katalix.com
     65 	Katalix Systems Ltd
     66 	http://www.katalix.com
     67