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 88224cf5adSJeff Kirsher select CRYPTO 89224cf5adSJeff Kirsher select CRYPTO_SHA1 900e5a610bSArd Biesheuvel select CRYPTO_LIB_ARC4 91a7f7f624SMasahiro Yamada help 92224cf5adSJeff Kirsher Support for the MPPE Encryption protocol, as employed by the 93224cf5adSJeff Kirsher Microsoft Point-to-Point Tunneling Protocol. 94224cf5adSJeff Kirsher 95224cf5adSJeff Kirsher See http://pptpclient.sourceforge.net/ for information on 96224cf5adSJeff Kirsher configuring PPTP clients and servers to utilize this method. 97224cf5adSJeff Kirsher 98224cf5adSJeff Kirsherconfig PPP_MULTILINK 998aa53cb3SKees Cook bool "PPP multilink support" 1008aa53cb3SKees Cook depends on PPP 101a7f7f624SMasahiro Yamada help 102224cf5adSJeff Kirsher PPP multilink is a protocol (defined in RFC 1990) which allows you 103224cf5adSJeff Kirsher to combine several (logical or physical) lines into one logical PPP 104224cf5adSJeff Kirsher connection, so that you can utilize your full bandwidth. 105224cf5adSJeff Kirsher 106224cf5adSJeff Kirsher This has to be supported at the other end as well and you need a 107224cf5adSJeff Kirsher version of the pppd daemon which understands the multilink protocol. 108224cf5adSJeff Kirsher 109224cf5adSJeff Kirsher If unsure, say N. 110224cf5adSJeff Kirsher 111224cf5adSJeff Kirsherconfig PPPOATM 112224cf5adSJeff Kirsher tristate "PPP over ATM" 113224cf5adSJeff Kirsher depends on ATM && PPP 114a7f7f624SMasahiro Yamada help 115224cf5adSJeff Kirsher Support PPP (Point to Point Protocol) encapsulated in ATM frames. 116224cf5adSJeff Kirsher This implementation does not yet comply with section 8 of RFC2364, 117224cf5adSJeff Kirsher which can lead to bad results if the ATM peer loses state and 118224cf5adSJeff Kirsher changes its encapsulation unilaterally. 119224cf5adSJeff Kirsher 120224cf5adSJeff Kirsherconfig PPPOE 1218aa53cb3SKees Cook tristate "PPP over Ethernet" 1228aa53cb3SKees Cook depends on PPP 123a7f7f624SMasahiro Yamada help 124224cf5adSJeff Kirsher Support for PPP over Ethernet. 125224cf5adSJeff Kirsher 126224cf5adSJeff Kirsher This driver requires the latest version of pppd from the CVS 127224cf5adSJeff Kirsher repository at cvs.samba.org. Alternatively, see the 128224cf5adSJeff Kirsher RoaringPenguin package (<http://www.roaringpenguin.com/pppoe>) 129224cf5adSJeff Kirsher which contains instruction on how to use this driver (under 130224cf5adSJeff Kirsher the heading "Kernel mode PPPoE"). 131224cf5adSJeff Kirsher 13296ba44c6SJaco Kroonchoice 13396ba44c6SJaco Kroon prompt "Number of PPPoE hash bits" 13496ba44c6SJaco Kroon default PPPOE_HASH_BITS_4 13596ba44c6SJaco Kroon depends on PPPOE 13696ba44c6SJaco Kroon help 13796ba44c6SJaco Kroon Select the number of bits used for hashing PPPoE interfaces. 13896ba44c6SJaco Kroon 13996ba44c6SJaco Kroon Larger sizes reduces the risk of hash collisions at the cost 14096ba44c6SJaco Kroon of slightly increased memory usage. 14196ba44c6SJaco Kroon 14296ba44c6SJaco Kroon This hash table is on a per outer ethernet interface. 14396ba44c6SJaco Kroon 144*ae91f7e4SLukas Bulwahnconfig PPPOE_HASH_BITS_1 14596ba44c6SJaco Kroon bool "1 bit (2 buckets)" 14696ba44c6SJaco Kroon 14796ba44c6SJaco Kroonconfig PPPOE_HASH_BITS_2 14896ba44c6SJaco Kroon bool "2 bits (4 buckets)" 14996ba44c6SJaco Kroon 15096ba44c6SJaco Kroonconfig PPPOE_HASH_BITS_4 15196ba44c6SJaco Kroon bool "4 bits (16 buckets)" 15296ba44c6SJaco Kroon 15396ba44c6SJaco Kroonconfig PPPOE_HASH_BITS_8 15496ba44c6SJaco Kroon bool "8 bits (256 buckets)" 15596ba44c6SJaco Kroon 15696ba44c6SJaco Kroonendchoice 15796ba44c6SJaco Kroon 15896ba44c6SJaco Kroonconfig PPPOE_HASH_BITS 15996ba44c6SJaco Kroon int 16096ba44c6SJaco Kroon default 1 if PPPOE_HASH_BITS_1 16196ba44c6SJaco Kroon default 2 if PPPOE_HASH_BITS_2 16296ba44c6SJaco Kroon default 4 if PPPOE_HASH_BITS_4 16396ba44c6SJaco Kroon default 8 if PPPOE_HASH_BITS_8 16496ba44c6SJaco Kroon default 4 16596ba44c6SJaco Kroon 166224cf5adSJeff Kirsherconfig PPTP 1678aa53cb3SKees Cook tristate "PPP over IPv4 (PPTP)" 1688aa53cb3SKees Cook depends on PPP && NET_IPGRE_DEMUX 169a7f7f624SMasahiro Yamada help 170224cf5adSJeff Kirsher Support for PPP over IPv4.(Point-to-Point Tunneling Protocol) 171224cf5adSJeff Kirsher 172224cf5adSJeff Kirsher This driver requires pppd plugin to work in client mode or 173224cf5adSJeff Kirsher modified pptpd (poptop) to work in server mode. 174224cf5adSJeff Kirsher See http://accel-pptp.sourceforge.net/ for information how to 175224cf5adSJeff Kirsher utilize this module. 176224cf5adSJeff Kirsher 177224cf5adSJeff Kirsherconfig PPPOL2TP 1788aa53cb3SKees Cook tristate "PPP over L2TP" 1798aa53cb3SKees Cook depends on L2TP && PPP 180a7f7f624SMasahiro Yamada help 181224cf5adSJeff Kirsher Support for PPP-over-L2TP socket family. L2TP is a protocol 182224cf5adSJeff Kirsher used by ISPs and enterprises to tunnel PPP traffic over UDP 183224cf5adSJeff Kirsher tunnels. L2TP is replacing PPTP for VPN uses. 1844f73bc4dSJoe Millenbachif TTY 185224cf5adSJeff Kirsher 186224cf5adSJeff Kirsherconfig PPP_ASYNC 187224cf5adSJeff Kirsher tristate "PPP support for async serial ports" 188224cf5adSJeff Kirsher depends on PPP 189224cf5adSJeff Kirsher select CRC_CCITT 190a7f7f624SMasahiro Yamada help 191224cf5adSJeff Kirsher Say Y (or M) here if you want to be able to use PPP over standard 192224cf5adSJeff Kirsher asynchronous serial ports, such as COM1 or COM2 on a PC. If you use 193224cf5adSJeff Kirsher a modem (not a synchronous or ISDN modem) to contact your ISP, you 194224cf5adSJeff Kirsher need this option. 195224cf5adSJeff Kirsher 196224cf5adSJeff Kirsher To compile this driver as a module, choose M here. 197224cf5adSJeff Kirsher 198224cf5adSJeff Kirsher If unsure, say Y. 199224cf5adSJeff Kirsher 200224cf5adSJeff Kirsherconfig PPP_SYNC_TTY 201224cf5adSJeff Kirsher tristate "PPP support for sync tty ports" 202224cf5adSJeff Kirsher depends on PPP 203a7f7f624SMasahiro Yamada help 204224cf5adSJeff Kirsher Say Y (or M) here if you want to be able to use PPP over synchronous 205224cf5adSJeff Kirsher (HDLC) tty devices, such as the SyncLink adapter. These devices 206224cf5adSJeff Kirsher are often used for high-speed leased lines like T1/E1. 207224cf5adSJeff Kirsher 208224cf5adSJeff Kirsher To compile this driver as a module, choose M here. 209224cf5adSJeff Kirsher 2104f73bc4dSJoe Millenbachendif # TTY 2114f73bc4dSJoe Millenbach 212224cf5adSJeff Kirsherendif # PPP 213