Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Point-to-Point Protocol daemon
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Infobox Software | name = '''Paul's PPP''' | logo = | screenshot = | caption = | author = Paul Mackerras, based on earlier work by Drew Perkins, Brad Clements, Karl Fox, Greg Christy, and Brad Parker | developer = | released = | latest release version = 2.5.0 | latest release date = {{Release date and age|2023|04|04}} | latest preview version = | latest preview date = | operating system = [[Linux]], [[Solaris (operating system)|Solaris]] | platform = | language = | genre = [[Internet]] | license = [[BSD]]-like licenses. Not all of them apply to all parts of pppd | website = {{URL|https://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 system]]s. It is configured using [[command-line argument]]s 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 subscriber line|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 [[AppleTalk]] over the link. *After negotiation is complete, it has to set up the required network interfaces and routes, so that the connection is run by the [[Kernel (operating system)|kernel]]. pppd terminates a PPP link when: * too many frames with invalid [[frame check sequence]] (FCS) field have been received * the link is considered "idle" (if configured) * another program or the peer requests link termination. Some newer versions of pppd are also capable of handling [[Dial-on-demand routing]], where pppd sets up a virtual network, captures the packages it receives and establishes a PPP connection and forwards the captured and not-yet transmitted packages over the link. ==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 |title=pppconfig(8) }}</ref> * [[WvDial]] β A [[Command-line interface|CLI]] tool which is used for [[modem initialisation]] before starting pppd. ==References== <references/> * [[man page|Manual page]]: pppd(8) (''man pppd'' in a [[Unix]] [[Terminal emulator|terminal]] or [http://ppp.samba.org/pppd.html pppd man page at ppp.samba.org]). ==Further reading== * [http://tldp.org/HOWTO/PPP-HOWTO/ Linux PPP HOWTO] * [http://www.faqs.org/faqs/linux/faq/part5/ FAQ about ppp configuration] * [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 ==External links== * [http://vger.kernel.org/vger-lists.html#linux-ppp Linux-ppp mailing list] * [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}} * [https://opensource.apple.com/tarballs/ppp/ Apple ppp source] [[Category:Free network-related software]] [[Category:Unix network-related software]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite web
(
edit
)
Template:Freshmeat
(
edit
)
Template:Infobox Software
(
edit
)