|
Adding SLIP and PPP Clients[Enable Dialin] [Password File] [SLIP login] [PPP login] [Routing] [Proxy Arp] [Dynamic IP]Enabling Dialin for SLIP and PPP ClientsThe following information is needed to configure a SLIP or PPP dialin, and needs to match exactly what was used to configure the remote end. There are minor differences depending on whether you are configuring the client or the server. See the page on IP Address and Routing for more details on this difference:
TerminologyRemember from other pages, that the server is the host connected to the larger network, and the client is the host connected to the smaller network (usually it is a stand-alone host, whose only network connection is to the server).
Password File ExamplesFor the sake of example, we will use a client hostname of client.domain.foo.bar with a username of Sclient (or Pclient) and a password of password.The line to add in /etc/passwd for IRIX SLIP looks like the following (because of a potential security hole, the home directory for a SLIP or PPP account should only be writable by root, for example creating the special directory /var/secure, with permissions 700): Sclient::0:0:SLIP login client.sub.domain.foo.bar,,:/:/usr/etc/remoteslip For IRIX PPP the /etc/passwd entry looks like: Pclient::0:0:Irix PPP login client.sub.domain.foo.bar,,:/:/usr/etc/ppp (Note that IRIX SLIP and PPP must run as root!) For MST PPP the /etc/passwd entry looks like: Pclient::0:0:MST PPP login client.sub.domain.foo.bar,,:/:/usr/etc/ppp/LoginThe password can be set by typing the following, for SLIP, PPP is similar: % su # passwd Sclient Changing password for Sclient on server. New password: password Re-enter new password: password #The password is not echoed.
Configuring the SLIP login "shell"On IRIX, the file /usr/etc/remoteslip is the login shell for all SLIP logins. It is a shell script with a big case statement, one entry for each login. Examples of each type follow.On an IRIX server, add a section like the following in /usr/etc/remoteslip for the client login:
Sclient)
exec /usr/etc/slip -i -p cslip -r client.sub.domain.foo.bar
;;
#
The servers can dialout to the clients. The IRIX SLIP client needs an entry in /usr/etc/remoteslip just like the server, however for IRIX4 routing is a royal pain. It is almost easiest to just login and manually add the route after the link comes up. For IRIX4, the entry in /usr/etc/remoteslip looks almost identical to the server case:
Sserver)
exec /usr/etc/slip -i -p cslip -r server.sub.domain.foo.bar
;;
#
For IRIX5 SLIP clients, routing on clients is easier because of the -R option, add the following section to the /usr/etc/remoteslip file:
Sserver)
exec /usr/etc/slip -i -p cslip -R "" -r server.sub.domain.foo.bar
;;
#
Never use -R "" on a server! This advertises a
default route, for which there can be only one on a network.
Doing so will probably screw up routing on your whole net! At the very
least, your network admins will be very annoyed.
The following section must remain the last one in the file:
*)
exec /usr/etc/slip -i -r $USER
;;
esac
Configuring the PPP login "shell"Because PPP is able to dynamically configure things during the login sequence, you generally do not need to edit the login "shell". The two different PPP versions on IRIX work a little differently:
There are some PPP implementations that do not handle protocol negotiation correctly. The Windoze95 stack seems to be one of these. This will either cause the link to fail to come up, or to cause it to fail "randomly" after a short uptime. The solution is to tell SGI's ppp to not try to negotiate the offending (advanced) protocols. Add the following options to the /etc/ppp.conf entry:
-mp -ccp
Additional Client Dialin ConsiderationsIf the connect time of each individual client is expected to be low, then there do not need to be as many server modems as there are clients to dial into the site. All of the clients should be able to connect to all of the servers, and the phone lines should be set up in a "hunt group" (aka "rotary"). Then any client calling in gets the first available server modem.
Dialup Server Routing IssuesAn SGI machine can serve fine as a small dialup server. However, there are a couple of limitations if you want to do things the easy way. If you can use the defaults, then configuration is nearly painless:
Proxy ARPHowever, one of the common requirements for a small PPP (or SLIP) server is that you don't have another subnet available for the small number of remote hosts, and want to "borrow" IP addresses from your normal subnet. This requires (currently) proxy-ARP routing. This is harder than it should be, since the slip and ppp binaries do not have an autoarp option. It is much simpler to assume that an IP address being routed by proxy-ARP is associated with only one server. Otherwise you have to create a login script something like (example using ppp):#!/bin/sh arp -s client.domain.foo.bar ppp -r $USER arp -d client.domain.foo.barwhich won't work at all if you are running FlexFAX or HylaFAX software. Check out the faxd problem for more details. The script above is unneccessary if the server is running IRIX-6.3 or later, as a new capability was added to the PPP daemon to support dynamic proxy-ARP configuration: proxy_arp=ifname(see the ppp man page for details).
Server Assigned IP AddressesThis is something else that is desirable in some environments. It is a very common method among ISPs to reduce the number of IP addresses that they need to assign to dialup clients. The concept behind the idea is simple. Since IP addresses are only used for routing, and you can only route to hosts that are connected, you only need as many IP addresses as you have connection points (modems, in this case). Note that clients can't use the quiet keyword (for dynamic dialing) in most circumstances, since they will usually get a different IP address on each call, and this breaks TCP connections (such as rlogin, telnet, etc).IRIX SLIP and PPP are not designed to handle this case. The degenerate case of one dialin modem per host is actually workable, though. Just assign the same IP address (in /etc/ppp.conf or /usr/etc/remoteslip) to all dialup accounts. Since only one dialup account can be in use at any one time, this solves the issue of determining which IP address to assign to the client when it logs in. Just make sure that each server host assigns a different IP address to it's client accounts. The accounts can be the same across multiple dialin servers, but they must have a different IP address on each server. There is a hack to handle multiple modems on a server host and do server-assigned IP addressing. The two that have been tried (not by me, and I don't know details -- these are hints for your implementation!) are:
For the Obscure Bug of the Month Award(pre-IRIX-5.3) If you are changing a connection from SLIP to PPP or vice-versa, you need to reboot both machines before packets will pass. The reason is deep in the kernel routing mechanism. If you are really good at mucking around in /dev/kmem, you might be able to avoid a reboot, but I advise against it (I certainly don't know enough to do it!). If there are two interfaces to the same remote address, the kernel always uses just one of them, which may not be the one you want or expect. If you see something like the following output from `netstat -i`, then you must reboot before things will work:% /usr/etc/netstat -i Name Mtu Network Address Ipkts Ierrs Opkts Oerrs Coll ec0 1500 192.82.281 server.sub.doma 16704753 2490 14890682 98 14870035 lo0 32880 loopback localhost 2142995 0 2142995 0 0 du0* 1500 (pt-to-pt) client.sub.doma 2364 0 106924 0 0 sl0* 512 (pt-to-pt) client.sub.doma 5 1 0 0 0 sl1* 1006 none none 0 0 0 0 0 sl2* 1006 none none 0 0 0 0 0 sl3* 1006 none none 0 0 0 0 0du0 and sl0 have the same address as the culprit in this example. Note: This is fixed in IRIX-5.3 (and later).
Hopefully there has been enough info here for you to figure out your connection problem. This info is based on looking at the problem from the client (dialing) end, becuase that is where most problems are discovered.
[Enable Dialin] [Password File] [SLIP login] [PPP login] [Routing] [Proxy Arp] [Dynamic IP] I hope and intend that this documentation can help you with your PPP connection problems. My other commitments (like work) permitting, I will attempt to help you on issues not covered, or that you are unclear on. Please make sure that you provide me a valid return email address! (I won't try to fix it). Scott Henry <scotth@sgi.com> Last modified: Sun Feb 1 14:37:09 1998 |
|
made by Digital Vintage with nginx-s3-gateway and some magic digitalvintage.ru t.me/digitalvintage_ru instagram.com/digitalvintage.ru |