James Chapman | fd558d1 | 2010-04-02 06:18:33 +0000 | [diff] [blame] | 1 | # |
| 2 | # Layer Two Tunneling Protocol (L2TP) |
| 3 | # |
| 4 | |
| 5 | menuconfig L2TP |
| 6 | tristate "Layer Two Tunneling Protocol (L2TP)" |
Amerigo Wang | fc18162 | 2012-09-20 20:36:06 +0000 | [diff] [blame] | 7 | depends on (IPV6 || IPV6=n) |
James Chapman | fd558d1 | 2010-04-02 06:18:33 +0000 | [diff] [blame] | 8 | depends on INET |
| 9 | ---help--- |
| 10 | Layer Two Tunneling Protocol |
| 11 | |
| 12 | From RFC 2661 <http://www.ietf.org/rfc/rfc2661.txt>. |
| 13 | |
| 14 | L2TP facilitates the tunneling of packets across an |
| 15 | intervening network in a way that is as transparent as |
| 16 | possible to both end-users and applications. |
| 17 | |
| 18 | L2TP is often used to tunnel PPP traffic over IP |
| 19 | tunnels. One IP tunnel may carry thousands of individual PPP |
| 20 | connections. L2TP is also used as a VPN protocol, popular |
| 21 | with home workers to connect to their offices. |
| 22 | |
James Chapman | f7faffa | 2010-04-02 06:18:49 +0000 | [diff] [blame] | 23 | L2TPv3 allows other protocols as well as PPP to be carried |
| 24 | over L2TP tunnels. L2TPv3 is defined in RFC 3931 |
| 25 | <http://www.ietf.org/rfc/rfc3931.txt>. |
| 26 | |
James Chapman | fd558d1 | 2010-04-02 06:18:33 +0000 | [diff] [blame] | 27 | The kernel component handles only L2TP data packets: a |
| 28 | userland daemon handles L2TP the control protocol (tunnel |
| 29 | and session setup). One such daemon is OpenL2TP |
| 30 | (http://openl2tp.org/). |
| 31 | |
| 32 | If you don't need L2TP, say N. To compile all L2TP code as |
| 33 | modules, choose M here. |
James Chapman | f7faffa | 2010-04-02 06:18:49 +0000 | [diff] [blame] | 34 | |
James Chapman | 0ad6614 | 2010-04-02 06:19:33 +0000 | [diff] [blame] | 35 | config L2TP_DEBUGFS |
| 36 | tristate "L2TP debugfs support" |
| 37 | depends on L2TP && DEBUG_FS |
| 38 | help |
| 39 | Support for l2tp directory in debugfs filesystem. This may be |
| 40 | used to dump internal state of the l2tp drivers for problem |
| 41 | analysis. |
| 42 | |
| 43 | If unsure, say 'Y'. |
| 44 | |
| 45 | To compile this driver as a module, choose M here. The module |
| 46 | will be called l2tp_debugfs. |
| 47 | |
James Chapman | f7faffa | 2010-04-02 06:18:49 +0000 | [diff] [blame] | 48 | config L2TP_V3 |
| 49 | bool "L2TPv3 support (EXPERIMENTAL)" |
| 50 | depends on EXPERIMENTAL && L2TP |
| 51 | help |
| 52 | Layer Two Tunneling Protocol Version 3 |
| 53 | |
| 54 | From RFC 3931 <http://www.ietf.org/rfc/rfc3931.txt>. |
| 55 | |
| 56 | The Layer Two Tunneling Protocol (L2TP) provides a dynamic |
| 57 | mechanism for tunneling Layer 2 (L2) "circuits" across a |
| 58 | packet-oriented data network (e.g., over IP). L2TP, as |
| 59 | originally defined in RFC 2661, is a standard method for |
| 60 | tunneling Point-to-Point Protocol (PPP) [RFC1661] sessions. |
| 61 | L2TP has since been adopted for tunneling a number of other |
| 62 | L2 protocols, including ATM, Frame Relay, HDLC and even raw |
| 63 | ethernet frames. |
| 64 | |
| 65 | If you are connecting to L2TPv3 equipment, or you want to |
| 66 | tunnel raw ethernet frames using L2TP, say Y here. If |
| 67 | unsure, say N. |
James Chapman | 0d76751 | 2010-04-02 06:19:00 +0000 | [diff] [blame] | 68 | |
| 69 | config L2TP_IP |
| 70 | tristate "L2TP IP encapsulation for L2TPv3" |
| 71 | depends on L2TP_V3 |
| 72 | help |
| 73 | Support for L2TP-over-IP socket family. |
| 74 | |
| 75 | The L2TPv3 protocol defines two possible encapsulations for |
| 76 | L2TP frames, namely UDP and plain IP (without UDP). This |
| 77 | driver provides a new L2TPIP socket family with which |
| 78 | userspace L2TPv3 daemons may create L2TP/IP tunnel sockets |
| 79 | when UDP encapsulation is not required. When L2TP is carried |
| 80 | in IP packets, it used IP protocol number 115, so this port |
| 81 | must be enabled in firewalls. |
| 82 | |
| 83 | To compile this driver as a module, choose M here. The module |
| 84 | will be called l2tp_ip. |
James Chapman | d9e31d1 | 2010-04-02 06:19:26 +0000 | [diff] [blame] | 85 | |
| 86 | config L2TP_ETH |
| 87 | tristate "L2TP ethernet pseudowire support for L2TPv3" |
| 88 | depends on L2TP_V3 |
| 89 | help |
| 90 | Support for carrying raw ethernet frames over L2TPv3. |
| 91 | |
| 92 | From RFC 4719 <http://www.ietf.org/rfc/rfc4719.txt>. |
| 93 | |
| 94 | The Layer 2 Tunneling Protocol, Version 3 (L2TPv3) can be |
| 95 | used as a control protocol and for data encapsulation to set |
| 96 | up Pseudowires for transporting layer 2 Packet Data Units |
| 97 | across an IP network [RFC3931]. |
| 98 | |
| 99 | This driver provides an ethernet virtual interface for each |
| 100 | L2TP ethernet pseudowire instance. Standard Linux tools may |
| 101 | be used to assign an IP address to the local virtual |
| 102 | interface, or add the interface to a bridge. |
| 103 | |
| 104 | If you are using L2TPv3, you will almost certainly want to |
| 105 | enable this option. |
| 106 | |
| 107 | To compile this driver as a module, choose M here. The module |
| 108 | will be called l2tp_eth. |