IPCP layer commands

Mpd 3.18 User Manual : Configuring Mpd : IPCP layer commands
Previous: Interface layer commands
Next: Link layer commands

## 4.4. IPCP layer commands

This chapter describes commands that configure the IP Control Protocol (IPCP) layer. All of these commands apply to the currently active bundle.

`set ipcp ranges local/width remote/width`

  This command determines what IP addresses mpd will allow to be negotiated at the local and remote ends of the link. For each endpoint, we have a target address and a netmask width. The `width` determines how flexible we are, i.e., how close the actual negotiated address must be to the target address. A `width` of 32 means they must match exactly; a `width` of zero means any address is suitable. For example, `192.168.1.17/25` means that IP address `192.168.1.17` is desired, but any IP address in the range `192.168.1.0` through `192.168.1.128` is acceptable.

  By convention, the `local` address may be `0.0.0.0` to request that the remote server assign us an IP address. Of course, for this to work the remote side must know a priori what our local IP address should be.

  The `remote` address should not be `0.0.0.0`. This is so if the peer requests `0.0.0.0`, we have some address to give him. The `width` may of course be zero.

  If the two sides cannot agree on the IP address assignments after repeated negotiation attempts, then the connection will fail. This is manifested with the error message ``IPCP: not converging.''

`set ipcp dns primary [ secondary ]`

  Some PPP clients request DNS server information from their remote peer. This commands enables mpd to have an answer for any such clients. This command is especially useful for supplying information to PPTP clients. One or two DNS server IP addresses may be given. An address of `0.0.0.0` erases that entry.

`set ipcp nbns primary [ secondary ]`

  Some MIcrosoft PPP clients request NetBIOS name server (NBNS) information from their remote peer. This commands enables mpd to have an answer for any such clients. This command is especially useful for supplying information to PPTP clients. One or two NBNS server IP addresses may be given. An address of `0.0.0.0` erases that entry.

`set ipcp accept option ...`
`set ipcp deny option ...`
`set ipcp enable option ...`
`set ipcp disable option ...`
`set ipcp yes option ...`
`set ipcp no option ...`

  These commands configure various IPCP options. The `vjcomp` option is bi-directional in that it can be independently enabled and disabled in each direction.

  The `enable` and `disable` commands determine whether we want the corresponding option. The `accept` and `deny` commands determine whether we will allow the peer to request the corresponding option.

  The `yes` command is the same as `enable` and `accept`. The `no` command is the same as `disable` and `deny`.

The options available at the IPCP layer are:

`vjcomp`

  This option enables Van Jacobson TCP header compression, which saves several bytes per TCP data packet. You almost always want this option.

  Default `enable` and `accept`.

`req-pri-dns`
`req-sec-dns`
`req-pri-nbns`
`req-sec-nbns`

  Enabling these options causes mpd to request primary and/or secondary DNS and/or NBNS servers from the remote peer during negotiation.

  If any DNS servers are supplied by the peer, they will appear as parameters to the script specified by the `set iface up-script` command, if any.

  Currently, mpd does not use the NBNS values for anything; they just appear in the log. A future revision may actually do something with them.

`radius-ip`

  When using RADIUS for authentication, enable IP address assignment via RADIUS as well.

Mpd 3.18 User Manual : Configuring Mpd : IPCP layer commands
Previous: Interface layer commands
Next: Link layer commands