Point-to-Point Protocol daemon: Difference between revisions

Content deleted Content added
Updated version and release date
 
(40 intermediate revisions by 20 users not shown)
Line 1:
{{Infobox Software
| name = '''pppdPaul's PPP'''
| logo =
| screenshot =
Line 7:
| developer =
| released =
| latest release version = 2.4.5.0
| latest release date = November{{Release 17,date 2009and age|2023|04|04}}
| latest preview version =
| latest preview date =
Line 16:
| genre = [[Internet]]
| license = [[BSD]]-like licenses. Not all of them apply to all parts of pppd
| website = [http{{URL|https://ppp.samba.org http://ppp.samba.org]}}
| repo = {{URL|https://github.com/ppp-project/ppp}}
}}
 
'''Point-to-Point Protocol daemon''' '''(PPPD)''' is the [[daemon (computing)|daemon]] that implements [[Point-to-Point Protocol]] (PPP). PPP is used to manage network connections between two nodes on [[Unix-like]] [[operating systemssystem]]s. It is configured using [[command-line argument]] argumentss and [[configuration file]]s.
'''PPPD''' is the '''[[Point-to-Point Protocol]] [[daemon (computer software)|daemon]]''' which is used to
manage network connections between two nodes on [[Unix-like]] [[operating systems]]. It is configured using [[command-line]] arguments and [[configuration file]]s.
 
While it has initially been used to manage only [[dial-up Internet access|dial-up access]], it is also used to manage [[broadband]] connections such as [[Digital Subscribersubscriber Lineline|DSL]], if [[Point-to-Point Protocol over Ethernet]] (PPPoE) or [[Point-to-Point Protocol over ATM]] (PPPoA) is used.
 
The role of pppd is managing PPP session establishment and session termination.
During session establishment, pppd has the role of:
* Looped link detection: PPP detects looped links using [[Magic number (programming)|magic numbers]]. When PPPD sends PPP LCP messages, these messages include a magic number. If a line is looped, the node receives an LCP message with its own magic number, instead of getting a message with the peer's magic number.
*Automatic self configuration: Using [[Link Control Protocol]] it has to negotiate protocol features like Address-and-Control-Field-Compression (ACFC), escaped characters, and the compression, encryption (like [[Microsoft Point-to-Point Encryption|MPPE]]) and authentication methods to use.
*Access control and authentication: Using protocols like [[Challenge-handshake authentication protocol]] (CHAP) or [[Password authentication protocol]] (PAP) it has to provide and check authentication data.
*Layer 3 configuration: If using [[Internet Protocol Control Protocol]] (IPCP), it will negotiate or determine [[Internet Protocol|IP]] parameters such as the [[IP address]]es, the [[maximum transmission unit]], and [[name server]] addresses. Some versions may also support [[Internetwork Packet Exchange Control Protocol]] (IPXCP) and [[AppleTalk Control Protocol]] (ATCP) for routing [[Internetwork Packet Exchange|IPX]] or [[AppletalkAppleTalk]] over the link.
*After negotiation is complete, it has to setupset up the required network interfaces and routes, so that the connection is run by the [[Kernel (computeroperating sciencesystem)|kernel]].
 
pppd terminates a PPP link when:
* too many frames with invalid [[Frameframe Checkcheck Sequencesequence]] (FCS) field have been received
* the link is considered "idle" (if configured)
* another program or the peer requests link termination.
Line 40:
 
==Frontends and configurators==
* [[kppp]] - A kde [[Graphical user interface|GUI]] [[front end processor (program)|frontend]] for pppd.
* [[gnome-ppp]] - A (discontinued) gnome [[Graphical user interface|GUI]] [[front end processor (program)|frontend]] for [[WvDial]], which in turns depends on pppd.
* pppconfig - It uses the standard ppp configuration files and sets ppp up so that the standard pon and poff commands (to connect and disconnect) and plog (to list the log) can be used to control ppp. It includes modem detection.<ref>{{cite web|url=http://man.he.net/man8/pppconfig |8|title=pppconfig(8) }}</ref>
* [[wvdialWvDial]] - A [[Command -line interface|CLI]] tool which is used for [[modem initialisation]] before starting pppd.
 
==References==
<references/>
* [[Unixman manualpage|Manual page]]: pppd(8) (''man pppd'' in a [[Unix]] [[Terminal emulator|terminal]] or {{man|8|[http://ppp.samba.org/pppd}}.html pppd man page at ppp.samba.org]).
 
==Further reading==
Line 54:
* [https://help.ubuntu.com/community/DialupModemHowto/SetUpDialer#head-0769b0061bf81bfba710118540bd86223e815761 Use of pon, poff and plog]
* [http://www.cisco.com/warp/public/471/debug_ppp_negotiation.html Understanding debug ppp negotiation Output]
* [http://ppp.samba.org/pppd.html pppd(8)]: Point-to-Point Protocol Daemon
* {{man|8|pppd}}
 
==External links==
* [http://pppvger.sambakernel.org/vger-lists.html#linux-ppp Linux-ppp Officialmailing websitelist]
* [https://dianne.skoll.ca/projects/rp-pppoe/ RP-PPPoE], a PPPoE client, server and relay implementation for Linux.
* [https://github.com/xebd/accel-ppp ACCEL-PPP], high performance PPTP/L2TP/PPPoE/IPoE server for Linux.
* {{Freshmeat|pppd|pppd}}
* [httphttps://marcopensource.infoapple.com/tarballs/?l=linux-ppp/ Apple Linux-ppp listsource]
 
[[Category:Free network-related software]]
[[Category:Unix network-related software]]
 
[[es:Pppd]]
[[it:Pppd]]
[[pl:Pppd]]
[[ru:Pppd]]