Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages

Manual Reference Pages  -  MPD5 (8)


mpd5 - netgraph multi-link PPP daemon


On-line Manual
See Also


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, compression, 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 corresponds 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 connected 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 either 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 config 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 deamon.

-d dirname
--directory dirname

Specify a configuration directory other than the default, /usr/local/etc/mpd5.

-f file
--file file

Specify an initial configuration file other than the default, mpd.conf.


Terminate daemon after the last link shutdown.

-p file
--pidfile file

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


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).


.An Archie Cobbs Aq Mt
.An Alexander Motin Aq Mt
.An based on ppp daemon written by Toshiharu OHNO Aq Mt
Search for    or go to Top of page |  Section 8 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.