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