1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 2224cf5adSJeff Kirsher# 3224cf5adSJeff Kirsher# PPP network device configuration 4224cf5adSJeff Kirsher# 5224cf5adSJeff Kirsher 6224cf5adSJeff Kirsherconfig PPP 7224cf5adSJeff Kirsher tristate "PPP (point-to-point protocol) support" 8224cf5adSJeff Kirsher select SLHC 9a7f7f624SMasahiro Yamada help 10224cf5adSJeff Kirsher PPP (Point to Point Protocol) is a newer and better SLIP. It serves 11224cf5adSJeff Kirsher the same purpose: sending Internet traffic over telephone (and other 12224cf5adSJeff Kirsher serial) lines. Ask your access provider if they support it, because 13224cf5adSJeff Kirsher otherwise you can't use it; most Internet access providers these 14224cf5adSJeff Kirsher days support PPP rather than SLIP. 15224cf5adSJeff Kirsher 16224cf5adSJeff Kirsher To use PPP, you need an additional program called pppd as described 17224cf5adSJeff Kirsher in the PPP-HOWTO, available at 18224cf5adSJeff Kirsher <http://www.tldp.org/docs.html#howto>. Make sure that you have 19224cf5adSJeff Kirsher the version of pppd recommended in <file:Documentation/Changes>. 20224cf5adSJeff Kirsher The PPP option enlarges your kernel by about 16 KB. 21224cf5adSJeff Kirsher 22224cf5adSJeff Kirsher There are actually two versions of PPP: the traditional PPP for 23224cf5adSJeff Kirsher asynchronous lines, such as regular analog phone lines, and 24224cf5adSJeff Kirsher synchronous PPP which can be used over digital ISDN lines for 25224cf5adSJeff Kirsher example. If you want to use PPP over phone lines or other 26224cf5adSJeff Kirsher asynchronous serial lines, you need to say Y (or M) here and also to 27224cf5adSJeff Kirsher the next option, "PPP support for async serial ports". For PPP over 28224cf5adSJeff Kirsher synchronous lines, you should say Y (or M) here and to "Support 29224cf5adSJeff Kirsher synchronous PPP", below. 30224cf5adSJeff Kirsher 31224cf5adSJeff Kirsher If you said Y to "Version information on all symbols" above, then 32224cf5adSJeff Kirsher you cannot compile the PPP driver into the kernel; you can then only 33224cf5adSJeff Kirsher compile it as a module. To compile this driver as a module, choose M 34224cf5adSJeff Kirsher here. The module will be called ppp_generic. 35224cf5adSJeff Kirsher 36224cf5adSJeff Kirsherif PPP 37224cf5adSJeff Kirsher 38224cf5adSJeff Kirsherconfig PPP_BSDCOMP 39224cf5adSJeff Kirsher tristate "PPP BSD-Compress compression" 40224cf5adSJeff Kirsher depends on PPP 41a7f7f624SMasahiro Yamada help 42224cf5adSJeff Kirsher Support for the BSD-Compress compression method for PPP, which uses 43224cf5adSJeff Kirsher the LZW compression method to compress each PPP packet before it is 44224cf5adSJeff Kirsher sent over the wire. The machine at the other end of the PPP link 45224cf5adSJeff Kirsher (usually your ISP) has to support the BSD-Compress compression 46224cf5adSJeff Kirsher method as well for this to be useful. Even if they don't support it, 47224cf5adSJeff Kirsher it is safe to say Y here. 48224cf5adSJeff Kirsher 49224cf5adSJeff Kirsher The PPP Deflate compression method ("PPP Deflate compression", 50224cf5adSJeff Kirsher above) is preferable to BSD-Compress, because it compresses better 51224cf5adSJeff Kirsher and is patent-free. 52224cf5adSJeff Kirsher 53224cf5adSJeff Kirsher Note that the BSD compression code will always be compiled as a 54224cf5adSJeff Kirsher module; it is called bsd_comp and will show up in the directory 55224cf5adSJeff Kirsher modules once you have said "make modules". If unsure, say N. 56224cf5adSJeff Kirsher 57224cf5adSJeff Kirsherconfig PPP_DEFLATE 58224cf5adSJeff Kirsher tristate "PPP Deflate compression" 59224cf5adSJeff Kirsher depends on PPP 60224cf5adSJeff Kirsher select ZLIB_INFLATE 61224cf5adSJeff Kirsher select ZLIB_DEFLATE 62a7f7f624SMasahiro Yamada help 63224cf5adSJeff Kirsher Support for the Deflate compression method for PPP, which uses the 64224cf5adSJeff Kirsher Deflate algorithm (the same algorithm that gzip uses) to compress 65224cf5adSJeff Kirsher each PPP packet before it is sent over the wire. The machine at the 66224cf5adSJeff Kirsher other end of the PPP link (usually your ISP) has to support the 67224cf5adSJeff Kirsher Deflate compression method as well for this to be useful. Even if 68224cf5adSJeff Kirsher they don't support it, it is safe to say Y here. 69224cf5adSJeff Kirsher 70224cf5adSJeff Kirsher To compile this driver as a module, choose M here. 71224cf5adSJeff Kirsher 72224cf5adSJeff Kirsherconfig PPP_FILTER 73224cf5adSJeff Kirsher bool "PPP filtering" 74224cf5adSJeff Kirsher depends on PPP 75a7f7f624SMasahiro Yamada help 76224cf5adSJeff Kirsher Say Y here if you want to be able to filter the packets passing over 77224cf5adSJeff Kirsher PPP interfaces. This allows you to control which packets count as 78224cf5adSJeff Kirsher activity (i.e. which packets will reset the idle timer or bring up 79224cf5adSJeff Kirsher a demand-dialed link) and which packets are to be dropped entirely. 80224cf5adSJeff Kirsher You need to say Y here if you wish to use the pass-filter and 81224cf5adSJeff Kirsher active-filter options to pppd. 82224cf5adSJeff Kirsher 83224cf5adSJeff Kirsher If unsure, say N. 84224cf5adSJeff Kirsher 85224cf5adSJeff Kirsherconfig PPP_MPPE 868aa53cb3SKees Cook tristate "PPP MPPE compression (encryption)" 878aa53cb3SKees Cook depends on PPP 880e5a610bSArd Biesheuvel select CRYPTO_LIB_ARC4 89*b55f7295SEric Biggers select CRYPTO_LIB_SHA1 90a7f7f624SMasahiro Yamada help 91224cf5adSJeff Kirsher Support for the MPPE Encryption protocol, as employed by the 92224cf5adSJeff Kirsher Microsoft Point-to-Point Tunneling Protocol. 93224cf5adSJeff Kirsher 94224cf5adSJeff Kirsher See http://pptpclient.sourceforge.net/ for information on 95224cf5adSJeff Kirsher configuring PPTP clients and servers to utilize this method. 96224cf5adSJeff Kirsher 97224cf5adSJeff Kirsherconfig PPP_MULTILINK 988aa53cb3SKees Cook bool "PPP multilink support" 998aa53cb3SKees Cook depends on PPP 100a7f7f624SMasahiro Yamada help 101224cf5adSJeff Kirsher PPP multilink is a protocol (defined in RFC 1990) which allows you 102224cf5adSJeff Kirsher to combine several (logical or physical) lines into one logical PPP 103224cf5adSJeff Kirsher connection, so that you can utilize your full bandwidth. 104224cf5adSJeff Kirsher 105224cf5adSJeff Kirsher This has to be supported at the other end as well and you need a 106224cf5adSJeff Kirsher version of the pppd daemon which understands the multilink protocol. 107224cf5adSJeff Kirsher 108224cf5adSJeff Kirsher If unsure, say N. 109224cf5adSJeff Kirsher 110224cf5adSJeff Kirsherconfig PPPOATM 111224cf5adSJeff Kirsher tristate "PPP over ATM" 112224cf5adSJeff Kirsher depends on ATM && PPP 113a7f7f624SMasahiro Yamada help 114224cf5adSJeff Kirsher Support PPP (Point to Point Protocol) encapsulated in ATM frames. 115224cf5adSJeff Kirsher This implementation does not yet comply with section 8 of RFC2364, 116224cf5adSJeff Kirsher which can lead to bad results if the ATM peer loses state and 117224cf5adSJeff Kirsher changes its encapsulation unilaterally. 118224cf5adSJeff Kirsher 119224cf5adSJeff Kirsherconfig PPPOE 1208aa53cb3SKees Cook tristate "PPP over Ethernet" 1218aa53cb3SKees Cook depends on PPP 122a7f7f624SMasahiro Yamada help 123224cf5adSJeff Kirsher Support for PPP over Ethernet. 124224cf5adSJeff Kirsher 125224cf5adSJeff Kirsher This driver requires the latest version of pppd from the CVS 126224cf5adSJeff Kirsher repository at cvs.samba.org. Alternatively, see the 127224cf5adSJeff Kirsher RoaringPenguin package (<http://www.roaringpenguin.com/pppoe>) 128224cf5adSJeff Kirsher which contains instruction on how to use this driver (under 129224cf5adSJeff Kirsher the heading "Kernel mode PPPoE"). 130224cf5adSJeff Kirsher 13196ba44c6SJaco Kroonchoice 13296ba44c6SJaco Kroon prompt "Number of PPPoE hash bits" 13396ba44c6SJaco Kroon default PPPOE_HASH_BITS_4 13496ba44c6SJaco Kroon depends on PPPOE 13596ba44c6SJaco Kroon help 13696ba44c6SJaco Kroon Select the number of bits used for hashing PPPoE interfaces. 13796ba44c6SJaco Kroon 13896ba44c6SJaco Kroon Larger sizes reduces the risk of hash collisions at the cost 13996ba44c6SJaco Kroon of slightly increased memory usage. 14096ba44c6SJaco Kroon 14196ba44c6SJaco Kroon This hash table is on a per outer ethernet interface. 14296ba44c6SJaco Kroon 143ae91f7e4SLukas Bulwahnconfig PPPOE_HASH_BITS_1 14496ba44c6SJaco Kroon bool "1 bit (2 buckets)" 14596ba44c6SJaco Kroon 14696ba44c6SJaco Kroonconfig PPPOE_HASH_BITS_2 14796ba44c6SJaco Kroon bool "2 bits (4 buckets)" 14896ba44c6SJaco Kroon 14996ba44c6SJaco Kroonconfig PPPOE_HASH_BITS_4 15096ba44c6SJaco Kroon bool "4 bits (16 buckets)" 15196ba44c6SJaco Kroon 15296ba44c6SJaco Kroonconfig PPPOE_HASH_BITS_8 15396ba44c6SJaco Kroon bool "8 bits (256 buckets)" 15496ba44c6SJaco Kroon 15596ba44c6SJaco Kroonendchoice 15696ba44c6SJaco Kroon 15796ba44c6SJaco Kroonconfig PPPOE_HASH_BITS 15896ba44c6SJaco Kroon int 15996ba44c6SJaco Kroon default 1 if PPPOE_HASH_BITS_1 16096ba44c6SJaco Kroon default 2 if PPPOE_HASH_BITS_2 16196ba44c6SJaco Kroon default 4 if PPPOE_HASH_BITS_4 16296ba44c6SJaco Kroon default 8 if PPPOE_HASH_BITS_8 16396ba44c6SJaco Kroon default 4 16496ba44c6SJaco Kroon 165224cf5adSJeff Kirsherconfig PPTP 1668aa53cb3SKees Cook tristate "PPP over IPv4 (PPTP)" 1678aa53cb3SKees Cook depends on PPP && NET_IPGRE_DEMUX 168a7f7f624SMasahiro Yamada help 169224cf5adSJeff Kirsher Support for PPP over IPv4.(Point-to-Point Tunneling Protocol) 170224cf5adSJeff Kirsher 171224cf5adSJeff Kirsher This driver requires pppd plugin to work in client mode or 172224cf5adSJeff Kirsher modified pptpd (poptop) to work in server mode. 173224cf5adSJeff Kirsher See http://accel-pptp.sourceforge.net/ for information how to 174224cf5adSJeff Kirsher utilize this module. 175224cf5adSJeff Kirsher 176224cf5adSJeff Kirsherconfig PPPOL2TP 1778aa53cb3SKees Cook tristate "PPP over L2TP" 1788aa53cb3SKees Cook depends on L2TP && PPP 179a7f7f624SMasahiro Yamada help 180224cf5adSJeff Kirsher Support for PPP-over-L2TP socket family. L2TP is a protocol 181224cf5adSJeff Kirsher used by ISPs and enterprises to tunnel PPP traffic over UDP 182224cf5adSJeff Kirsher tunnels. L2TP is replacing PPTP for VPN uses. 1834f73bc4dSJoe Millenbachif TTY 184224cf5adSJeff Kirsher 185224cf5adSJeff Kirsherconfig PPP_ASYNC 186224cf5adSJeff Kirsher tristate "PPP support for async serial ports" 187224cf5adSJeff Kirsher depends on PPP 188224cf5adSJeff Kirsher select CRC_CCITT 189a7f7f624SMasahiro Yamada help 190224cf5adSJeff Kirsher Say Y (or M) here if you want to be able to use PPP over standard 191224cf5adSJeff Kirsher asynchronous serial ports, such as COM1 or COM2 on a PC. If you use 192224cf5adSJeff Kirsher a modem (not a synchronous or ISDN modem) to contact your ISP, you 193224cf5adSJeff Kirsher need this option. 194224cf5adSJeff Kirsher 195224cf5adSJeff Kirsher To compile this driver as a module, choose M here. 196224cf5adSJeff Kirsher 197224cf5adSJeff Kirsher If unsure, say Y. 198224cf5adSJeff Kirsher 199224cf5adSJeff Kirsherconfig PPP_SYNC_TTY 200224cf5adSJeff Kirsher tristate "PPP support for sync tty ports" 201224cf5adSJeff Kirsher depends on PPP 202a7f7f624SMasahiro Yamada help 203224cf5adSJeff Kirsher Say Y (or M) here if you want to be able to use PPP over synchronous 204224cf5adSJeff Kirsher (HDLC) tty devices, such as the SyncLink adapter. These devices 205224cf5adSJeff Kirsher are often used for high-speed leased lines like T1/E1. 206224cf5adSJeff Kirsher 207224cf5adSJeff Kirsher To compile this driver as a module, choose M here. 208224cf5adSJeff Kirsher 2094f73bc4dSJoe Millenbachendif # TTY 2104f73bc4dSJoe Millenbach 211224cf5adSJeff Kirsherendif # PPP 212