This section explains how to configure Point-to-Point Protocol (PPP) with the ChorusOS 4.0 product standard interface and drivers. It assumes the serial line or modem is already physically connected. On some platforms, a unique serial line is used both for the console (accessed through tip), and for PPP. At boot time, the serial line connector must be connected to the host tip line.
Systems often have two IP addresses: one for Ethernet, one for PPP.
This document differentiates between Ethernet Internet addresses and PPP addresses. As you read, be aware that hostname refers to the Ethernet hostname corresponding to the Ethernet IP address, and that hostname_PPP refers to the hostname corresponding to the PPP address.
PPP as implemented in ChorusOS 4.0 handles IP traffic differently than previous releases.
First, you run pppstart, a daemon that listens for requests for connection.
Next, you use the pppd command to enable a connection to a specific serial line.
When finished with a PPP connection, you may close it using the pppclose command.
Finally, you can disable PPP services altogether using the pppstop command.
In order to make sure the Ethernet interface can still be used for IP traffic, use different IP addresses for Ethernet and IP.
It is strongly recommended for this release that you use different IP addresses for PPP and Ethernet.
As shown above, if each system has only one IP address, when an ifnet interface is set up between target_PPP and host_PPP, all traffic to host_PPP is routed through target_PPP. In other words, all IP traffic passes through the serial line.
Enabling PPP services involves using the pppstart actor.
Change to the directory where you build system images:
host% cd build_dir |
Ensure that both serial lines and network interfaces are available for PPP by including the necessary commands in the conf/sysadm.ini that you build into the system image. For example:
mkdev tty 0 /pci/pci-isa/ns16550-2 # Create a tty interface # using the second serial port # because the first is reserved # for the tip line mkdev ppp 0 # Create a PPP interface that is # not bound to the tty yet. mknod /dev/tty01 c 0 0 # Create a tty special file #mknod /dev/ttyp0 c 5 0 # Pseudo tty devices, needed #mknod /dev/ptyp0 c 6 0 # for dialup on demand. # Enable PPP # Requires pppstart.r in system image # arun /image/sys_bank/pppstart & pppd /dev/tty01 # Open a PPP line. # Wait for the interface to be up. # ifwait ppp0
See the appropriate document in the ChorusOS 4.0 Target Family Documentation Collection for serial device IDs for other serial line hardware.
Start the ews configuration utility:
host% ews conf/ChorusOS.xml & |
Use the hints in the table below to set system image features and tunables:
Set... |
Comments |
---|---|
VTTY=true |
PPP requires virtual ttys. |
PPP=true |
|
iom.nfs.rsize=1024 |
Optimizing NFS read and write buffer sizes for use with PPP by setting them to a maximum of 1024 |
iom.nfs.wsize=1024 |
|
Include the pppstart.r actor in the system image.
Rebuild the system image.
Copy the system image to the boot server:
host% rcp system_image_name boot_server:/tftpboot |
Reboot the target system:
host% rsh target reboot |
Ensure that both serial lines and network interfaces are available for PPP.
Run the actor:
host% rsh target arun /bin/pppstart & |
Opening an available PPP line involves the built-in C_INIT
command, pppd.
Run the built-in C_INIT
command, pppd, on the target system:
host% rsh target pppd device pppd device:info: Using interface ppp0 pppd device:notice: Connect: ppp0 <--> device pppd device:notice: local IP address local_addr pppd device:notice: remote IP address remote_addr |
where device is either /dev/tty01 or /dev/tty02.
See pppd(1M) for details.
Closing an open PPP line involves using the pppclose command.
Run the built-in C_INIT
command, pppclose, on the target system:
host% rsh target pppclose device pppd device:info: Terminating on signal 15. pppd device:notice: Connection terminated, connected for 2 minutes pppd device:info: Exit. |
where device is either /dev/tty01 or /dev/tty02.
Disabling PPP services involves using the pppstop command.
Run the built-in C_INIT
command, pppstop, on the target system:
host% rsh target pppstop |