Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
MPD5(8)			  BSD System Manager's Manual		       MPD5(8)

     mpd5 -- netgraph multi-link PPP daemon

     mpd5 [-bkov] [-d directory] [-f file] [-p pid-file] [-s ident]
	  [-m service] [configuration]

     mpd5 is a user mode PPP daemon using the netgraph(4) networking system.
     By	using Netgraph,	mpd5 combines the robustness and flexibility of	a
     user-mode PPP implementation with the speed and reliability of kernel-
     mode packet forwarding.  All PPP negotiation is handled in	user level
     code, while all data intensive operations such as encryption, compres-
     sion, and multi-link framing are handled strictly in the kernel.  Mpd
     supports several link layer types,	a fully	event-driven modem chat
     scripting language, and other features.

     mpd5 creates a ng_ppp(4) netgraph node that is placed between a
     ng_iface(4) netgraph interface one	or more	link layer devices, performing
     multi-link	PPP negotiation	and encapsulation. In multi-link PPP a bundle
     is	a collection of	one or more links between two peers. Each link corre-
     sponds to some device (e.g., a modem), and	each bundle corresponds	to one
     netgraph interface.  The idea is to use all of the	links, together	con-
     nected to a remote	peer also performing multi-link	PPP, to	utilize	their
     combined bandwidth.  Packets routed through the netgraph interface	travel
     in	multi-link fragments over all of the links.  Each link is a normal PPP
     link and can deliver complete packets as well, so redundancy is another
     benefit.  Attempts	to connect two links in	the same bundle	to different
     peers, or to a peer that is not configured	for multi-link PPP, will fail.

     In	general, everything is controlled by executing commands	which are ei-
     ther entered via the console command line or read from a configuration
     file. If mpd5 is running as a background daemon, the console can be made
     accessible	via telnet(1).	Since commands may apply to a single link, the
     console prompt always shows the current bundle or the current link	in
     that bundle.  On startup mpd run commands from the	startup	label of con-
     fig file.	After that, if configuration is	supplied, mpd looks config
     file for a	matching label and runs	the corresponding commands.  If
     configuration is not supplied, mpd	looks for label	named default.

     Mpd is fully documented in	the mpd	manual,	which is available in HTML.
     The manual	can be found in	the directory /usr/local/share/doc/mpd5.

     Mpd supports the following	command	options:


	     Detach from the terminal and run as a background daemon.

     -d	dirname
     --directory dirname

	     Specify a configuration directory other than the default,

     -f	file
     --file file

	     Specify an	initial	configuration file other than the default,


	     Terminate daemon after the	last link shutdown.

     -p	file
     --pidfile file

	     Specify an	lock/process ID	storage	file other than	the default


	     Kill any existing mpd5 daemon currently running. The same pidfile
	     must be used.

     -s	ident
     --syslog-ident ident

	     Identifier	to use for syslog(3).  The default - mpd

     -m	service
     --pam-service service

	     Service name to use for pam(3).  The default - mpd


	     Display the program version and exit.


	     Display invocation	usage and exit.

     /usr/local/share/doc/mpd5	 Directory containing the mpd manual
     /usr/local/etc/mpd5	 Default configuration file directory
     mpd.conf			 Configuration file
     mpd.script			 Modem chat scripts
     mpd.secret			 Account name, password	pairs
     /var/run/		 Stored	process	ID and lock file

     netgraph(4), ngctl(8), ng_ppp(4), ng_iface(4), ppp(8).

     Archie Cobbs <>
     Alexander Motin <>
     based on ppp daemon written by Toshiharu OHNO <>

BSD			       January 21, 2022				   BSD


Want to link to this manual page? Use this URL:

home | help