Point-to-Point Protocol daemon
Sign in to saveAlso known as ppp, Paul's PPP Package
daemon which implements the PPP protocol for internetworking over dialup lines
Source code
This is the README file for ppp-2.5, a package which implements the Point-to-Point Protocol (PPP) to provide Internet connections over serial lines and other types of links which can be considered to be point-to-point links. The Point-to-Point Protocol (PPP) provides a standard way to establish a network connection over a serial link. At present, this package supports IP and IPV6 and the protocols layered above them, such as TCP and UDP. This PPP implementation consists of two parts: Kernel code, which establishes a network interface and passes packets between the serial port, the kernel networking code and the PPP daemon (pppd). This code is implemented using STREAMS modules on Solaris, and as a line discipline under Linux. The PPP daemon (pppd), which negotiates with the peer to establish the link and sets up the ppp network interface. Pppd includes support for authentication, so you can control which other systems may make a PPP connection and what IP addresses they may use. The platforms supported by this package are Linux and Solaris. (There is also code to support various old flavours of Unix in the git repository, but it is quite old and unmaintained.) The kernel code for Linux is no longer distributed with this package, since the relevant kernel code is in the official Linux kernel source (and has been for many years) and is included in all reasonably modern Linux distributions. The Linux kernel code supports using PPP over things other than serial ports, such as PPP over Ethernet and PPP over ATM. Similarly, the kernel code for Solaris is no longer distributed with this package. See the Illumos web site for pointers to the kernel module source code and build environment. The file SETUP contains general information about setting up your system for using PPP. There is also a README file for each supported system, which contains more specific details for installing PPP on that system. The supported systems, and the corresponding README files, are: In each case you start by running the ./configure script. This works out which operating system you are using and creates the appropriate makefiles. You then run make' to compile the user-level code, and (as root) make install' to install the user-level programs pppd, chat and pppstats. Several security improvements: Some options are now privileged: 'set', 'unset', 'defaultroute', and 'defaultroute6'. If a non-root user running a setuid-root pppd needs to use these options, the system administrator will have to make a 'call' file in /etc/ppp/peers containing the required option(s) for the user's use. Scripts, privileged options files and secrets files now are subject to a path check, which checks that the file and each directory in the real path to the file are owned by root and not writable by non-root. If pppd is installed setuid-root and run by a non-root user, the peer will be required to authenticate itself; previously this requirement only applied if the system had a default IPv4 route. Default route handling has changed; pppd no longer checks for an existing default route before adding its default route. The defaultroute and defaultroute6 options are now privileged, and if used, the default route will always be added. The metric of the default route can be controlled with new defaultroute-metric and defaultroute6-metric options, which are privileged. The replacedefaultroute and noreplacedefaultroute options are no longer functional, and just cause an error message to be printed. There is now a dhcpv6relay plugin, which can be used to provide IPv6 RAs to the remote side and relay the subsequent incoming DHCPv6 requests to a DHCPv6 server. Note: This is to delegate IPv6 to the remote side, not to configure IPv6 locally; in other words, this is generally only useful for service providers. For configuring IPv6 at an endpoint, projects like dhcpcd and/or radvd may be useful. VRF (Virtual Routing and Forwarding) support has been added to pppd on Linux. There is now
Excerpt from the source-code README · 10,866 chars · not written by Vinony
Wikidata facts
- Official website
- ppp.samba.org
Show 2 more facts
- source code repository URL
- github.com/paulusmack/ppp
- software version identifier
- 2.5.2
via Wikidata · CC0