Important: You are required to change your passwords used for Gentoo services and set an email address for your Wiki account if you haven't done so. See the full announcement and Wiki email policy change for more information.

PPP

From Gentoo Wiki
Jump to: navigation, search
External resources

PPP (Point-to-Point Protocol) is commonly used in establishing a direct connection between two networking nodes. It can provide connection authentication, transmission encryption, and compression.

Installation

→ Information about USE flags
USE flag Default Recommended Description
activefilter No Enables active filter support
atm No Enables ATM (Asynchronous Transfer Mode) protocol support
dhcp No Installs PPP DHCP client plugin for IP address allocation by a DHCP server (see http://www.netservers.co.uk/gpl/)
eap-tls No Enables support for Extensible Authentication Protocol and Transport Level Security (see http://www.nikhef.nl/~janjust/ppp/index.html)
gtk No Installs GTK+ password prompting program that can be used by passprompt.so PPP plugin for reading the password from a X11 input terminal
ipv6 Yes Enables support for IP version 6
pam Yes Enables PAM (Pluggable Authentication Modules) support
radius No Enables RADIUS support

Portage has a USE flag ppp for enabling support for PPP for other packages.

Note
Enabling ppp USE flag will pull in net-dialup/ppp automatically
File/etc/portage/make.conf

USE="... ppp ..."

After setting global USE flags update your system to the changes take effect:

root # emerge --ask --changed-use --deep @world

Or emerge net-dialup/ppp package manually:

root # emerge --ask net-dialup/ppp

linux

Following kernel options need to be enabled, to support PPPoE, which is used in most cases.

Note
Using PPP compression is not suggested.
Kernel configuration

Device Drivers  --->
    [*] Network device support  --->
      <*>   PPP (point-to-point protocol) support
      < >     PPP BSD-Compress compression (NEW)
      < >     PPP Deflate compression (NEW)
      [ ]     PPP filtering (NEW)
      < >     PPP MPPE compression (encryption) (EXPERIMENTAL) (NEW)
      [ ]     PPP multilink support (EXPERIMENTAL) (NEW)
      <*>     PPP over Ethernet (EXPERIMENTAL)
      < >     PPP support for async serial ports (NEW)
      < >     PPP support for sync tty ports (NEW)
Optional PPP options
Option Driver Description
PPP BSD-Compress compression ppp_bsdcomp (Not recommended) Support for data compression. "PPP Deflate compression" is preferable.
PPP filtering - Support for packet filtering.
PPP MPPE compression (encryption) ppp_mppe Driver for Microsoft Point-to-Point Encryption.
PPP multilink support - Support for PPP multilink to combine serveral lines.
PPP over Ethernet pppoe Driver for PPPoE.
PPP support for sync tty ports ppp_sync_tty Support for synchronous devices.

Finally you need to rebuild linux, install and boot new kernel with PPP support.

Configuration

Provided eth0 following lines should be added for PPPoE connection:

File/etc/conf.d/netAdd:

...
config_ppp0="ppp"
link_ppp0="eth0" (Specify your ethernet interface)
plugins_ppp0="pppoe"
username_ppp0='user'
password_ppp0='password'
pppd_ppp0="
noauth
defaultroute
usepeerdns
holdoff 3
child-timeout 60
lcp-echo-interval 15
lcp-echo-failure 3
noaccomp noccp nobsdcomp nodeflate nopcomp novj novjccomp"
...
rc_need_ppp0="net.eth0"

Create an init script for the PPP device by symlinking to net.lo:

root # ln -s /etc/init.d/net.lo /etc/init.d/net.ppp0
root # /etc/init.d/net.ppp0 start

See also