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