DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 
Configuring the Point-to-Point Protocol (PPP)

PPP gateway

A PPP gateway is a TCP/IP gateway that has one or more PPP network interfaces. A TCP/IP gateway is a machine that has been configured to forward IP packets that are not addressed to itself. If a TCP/IP gateway has PPP network interfaces, it will forward packets that are either received over a PPP connection or are addressed to a remote system accessible via a PPP interface.

See ``Configuring a PPP gateway'' for instructions.

A system can also be configured as a gateway by setting the values of the TCP/IP parameters ipforwarding and ipsendredirects to 1. This enables packets to be routed between all network interfaces on the machine. For more information, see ``Configuring TCP/IP tunable parameters''.


NOTE: The Network Configuration Manager will also ask if you want the host to act as a gateway when you configure an additional network interface such as a Token-Ring interface or Ethernet interface.

You may want to use proxy ARP on a PPP gateway; see the following section.

Proxy ARP

For those familiar with ARP, proxy ARP solves the following problem illustrated in ``Proxy ARP example''. (For those unfamiliar with ARP, see the arp(ADMP) manual page.)

Hosts A and C need to communicate, and the only route is through host B as shown in the figure. The IP addresses that define the link between hosts A and B use the same subnet number as the Ethernet (LAN) (that is, 192.34.54.0) through which hosts B and C communicate. Therefore, host C believes the IP address 192.34.54.4 to have an Ethernet connection on the LAN. When the IP protocol layer of host C receives a packet addressed to 192.34.54.4, host C puts an ARP broadcast on the LAN asking the host of that IP address to respond with its Ethernet address. Because host A is not on the LAN, host C receives no response and believes it cannot communicate with that IP address.

Proxy ARP example

The proxy ARP solution to this problem is to put entries in host B's ARP mapping table that map the IP addresses 192.34.54.1 and 192.34.54.4 to the Ethernet address of host B on the LAN. These are called ``proxy ARP entries''. Now when host C broadcasts a request for an Ethernet address for IP address 192.34.54.4, host B will respond with its Ethernet address. Host C will send packets for 192.34.54.4 to host B's Ethernet address, and host B, if configured to forward these packets to host A, will forward them.

SCO PPP provides an endpoint configuration parameter called proxy for automatically putting the proxy ARP entries in the ARP mapping table. In the example shown here, host B should include the proxy parameter in its configuration for its end of the link with A. When the link is invoked, the proxy parameter causes the PPP daemon to search existing (but not ppp or loopback) network interfaces on host B to find an IP address that uses the same subnet number as the IP addresses of the link between A and B. If it finds such a case, it retrieves the Ethernet address for the network interface. It then inserts entries in host B's ARP mapping table that map the IP addresses for the link between A and B to the Ethernet address it found.

SCO SLIP provides an option to the slattach command for automatically putting the proxy ARP entries in the ARP mapping table. In the example shown here, host B should pass the option +a to slattach when using slattach to create the link between A and B. When passed this option, slattach searches existing (but not ppp or loopback) network interfaces on host B to find an IP address that uses the same subnet number as the IP addresses of the link between A and B. If it finds such a case, it retrieves the Ethernet address for the network interface. It then inserts entries in host B's ARP mapping table that map the IP addresses for the link between A and B to the Ethernet address that it found.


Next topic: Complex PPP connection scenarios
Previous topic: PPP authentication methods

© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003