This document applies to AIX versions 3.2.3 and later. (AIX 3.2.5 is the latest version at the time of this writing.)
IMPORTANT NOTICE: This document will no longer be updated and remains available only for high severity situations.
For all other situations, it is recommended that you order "System Management: Communications and Networks", publication number GC23-2487.
One of the most important things to consider when planning your SLIP connection is the addressing. You should examine which address class you wish to use and then develop the actual numerical values (see the section Information on Network Address Types (Classes) for possible class types).
Please verify that your SLIP addresses DO NOT conflict with any existing (network) addresses on your system. For simplicity, these addresses are used in the following instructions:
1.1.1.2 for local system "A" 1.1.1.1 for remote system "B"
Please note that this SLIP example starts SLIP from the command line. The following instructions add a tty via SMIT and then configure and start SLIP from the command line. It is good to first configure from the command line, as in these instructions, because command line options are easier to correct. After you get SLIP working correctly from the command line, bring it down, detach it (to start cleanly), and reconfigure it through SMIT. Configuring it through SMIT will make the configuration permanent and allow SLIP to start automatically at each system reboot.
Add a tty for serial port S2 on BOTH machines A and B. (* means the user can change the setting.)
Login: as root or "su" to root Enter: smit tty Select: Add a TTY Select: tty rs232 Asynchronous Terminal * Select: sa1 Available 00-00-S2 Standard I/O Serial Port 2 Press: F4 (for PORT number) * Select: s2 Change: "Enable LOGIN" to "disable" * Change: "BAUD rate" to desired speed Change: XON-XOFF to "no" Press: <Enter> key until tty is added or changed
Add ONE of the following lines to the /etc/uucp/Devices file on both the server and the remote client. (If you are not sure which line to use, try one and, if you get an error, try another.) Be sure to change 9600 to the correct bps rate for your modem.
Direct tty1 - 9600 direct Direct tty1 - 9600 hayes ACU tty1 - 9600 hayes
Configure SLIP lines for both systems A and B using selected addresses. Here, 1.1.1.2 is the address for A and 1.1.1.1 is the address for B. (NOTE: sl# should match the tty# being used; that is, if tty1 is being used, sl# should be sl1.)
On system A, enter:
ifconfig sl# 1.1.1.2 1.1.1.1 up
On system B, enter:
ifconfig sl# 1.1.1.1 1.1.1.2 up
Check the status on BOTH machines with the following command line entry:
ifconfig sl0
On the remote system to be dialed into, enter:
slattach tty#
Use the following command line option to dial out of the local system. (Replace # with your tty number.)
slattach tty# 9600 ' "" AT OK ATDT555-3346 CONNECT "" '
In informal terms, the preceding string is interpreted as "Use tty# at 9600 baud, send AT and I should get back an OK, dial 555-3346 and I should get a CONNECT back."
NOTES:
Test the SLIP connection between system A and system B by using the ping command. On system A, enter:
ping 1.1.1.1
The system should display packets being sent to and received from that address.
Kill these processes WITHOUT the -9 option. The proper way to kill a slattach is with kill <pid>. If SLIP has been defined via SMIT, severe problems could occur if you use kill -9. Problems can effect your system and may cause a crash with LED 888.
Should your system crash with the 888 LED, a reboot will NOT correct the problem. You will need to use SMIT to remove the SLIP interface and associated tty. Use SMIT again to reconfigure tty and SLIP.
ifconfig sl# detach
Example: If there are three interfaces--SL0, SL1, SL2--and one is over leased-line, that one should be defined as SL0. Any interfaces defined to use modems (which take more time to set up by system) should be configured or defined last as SL2 or SL3.
Troubleshooting: If a leased-line SLIP interface is defined last or as a higher number (sl1 as opposed to sl0), a problem might occur at boot time. The system may assign it to sl0 and the user may not be aware of the change. SLIP will be up but a ping to one address may be crossed to another.
It is for this reason that we suggest experimenting with SLIP first on the command line. Then, once the configuration is understood, add it through SMIT.
On a SLIP direct connect, no "baud rate" or "dial string" is needed. A direct connect is where a serial cable is run directly between two systems (no modems are involved).
Check that XON is not on either modem or port. Verify that DTR and CD handling are set correctly in both modems.
Test the connection with ATE or cu by dialing the other system and seeing if you are able to log in. This would be a first test but does not eliminate the chance of port or modem problems. Use IBM cabling or a cable that has adequate shielding.
Issue netstat -i to examine them.
Network address classes fall into the following ranges:
Class A: 0 to 128 Class B: 128 to 191 Class C: 192 to 255
######.#####.####.### | |____|____|______ Host Address |_______________________ Network Name
A Class A address consists of an 8-bit network address and a 24-bit local or host address. The first bit in the network address is dedicated to indicating the network class, leaving 7 bits for the actual network address. Since the highest number that 7 bits can represent in binary is 128, there are 128 possible Class A network addresses. Of the 128 possible network addresses, two are reserved for special cases: the network address 127 is reserved for local loopback addresses, and a network address of all ones indicates a broadcast address.
######.#####.####.### | | |____|_______ Host Address |_____|_________________ Network Name
A Class B address consists of a 16-bit network address and a 16-bit local or host address. The first two bits in the network address are dedicated to indicating the network class, leaving 14 bits for the actual network address. Therefore, there are 16,384 possible network addresses and 65,536 local host addresses.
######.#####.####.### | | | |_______ Host Address |_____|____|____________ Network Name
A Class C address consists of a 24-bit network address and an 8-bit local host address. The first two bits in the network address are dedicated to indicating the network class, leaving 22 bits for the actual network address. Therefore, there are 2,097,152 possible network addresses and 256 possible local host addresses.
NOTE: Other systems may support Class D addresses, which are multicast addresses with the highest order bits set to 1-1-1. TCP/IP does not support Class D addresses.
For AIX levels 3.2.5 and greater, there is a field for RTS in the SMIT panel for Adding a TTY Device. For these levels, use SMIT to add RTS handshaking.
For AIX levels prior to 3.2.5, use one of the methods in this section to add RTS handshaking.
A small C program is shown below as an example of how to add RTS to a tty port on the RS/6000. Using this C program is the easiest method to accomplish the task and can be made permanent (read the program comments). However, as an alternative, you could use the stty command as follows.
NOTE: Replace # with your tty number.
stty add rts < /dev/tty#
NOTE: If cu is not installed on your system, use any available communication program to connect to the modem. This will keep the "carrier" signal high and allow the stty command to complete.
/* C Program to Add RTS Discipline to tty Port(s): To make the program more permanent, insert the file name of the compiled version (complete with path) at the end of your /etc/rc file, and the changes will take effect again at the next reboot. You can modify this program to include a variable in place of /dev/tty0 which would change in a loop to be any tty numbers for which RTS is requested. The program is set up to change only tty0. NOTE: This program is supplied "as is" and is NOT supported by IBM. It is intended as an aid to administrators only. To create: vi addrts.c <enter> To compile: cc -o addrts addrts.c */ /*********************** Program starts now **************************/ #include <stdio.h> #include <fcntl.h> #include <termios.h> #include <sys/tty.h> main() { int fd; fd = open("/dev/tty0", O_NDELAY|O_RDWR); ioctl(fd, TXADDCD, "rts"); /* adds rts to tty0 */ close(fd); } /*********************** Program Ends Here ************************/