Figure 5-5 shows a large number of clients connected to a server using asynchronous links. Clients initiate calls to the server, and request an IP address for the connection. The server has a pool of IP addresses, and a pool of modems, which it allocates to clients as required. In this example, the server requires authentication using the Password Authentication Protocol (PAP).
This configuration is typical of connections between clients and a generic Internet server.

The server has a pool of IP addresses equal to the number of modems it has connected to it. It assigns these addresses to remote clients on request, for as long as there are modems available. Clients use pppconn(1M) to establish a PPP link to the server, and to recover an IP address for the IP connection.
prompt# /usr/bin/pppconn server |
In the following example, a total of n clients can make connections to a server with a pool of eight modems; therefore, eight clients can be connected simultaneously.
PPP Configuration File (ppp.conf) for client_0:
ifconfig ipdptp0 plumb
ifconfig ipdptp0 netmask 255.255.255.0 down
dialup_path
ip_interface ipdptp0
request_ip_addr on
remote_host server
send_authentication pap
send_pap_id pap_id0
send_pap_passwd pap_passwd0
|
Link Configuration File (link.conf) for client_0:
dialup_device pppdev0
unix_device ttya
line_speed 38400
modem BocaModem V.34 DataFax
call_setup dial
remote_host server
phone 1234561000
chat_script server.script
|
CHAT script (server.script) used by client_0 to call server:
# Set the line regarding the remote site configuration # Due to UUCP limitations some systems only accept cs7 # # setline cs7 parodd send RETURN expect "ogin:" 10 onerror send BREAK repeat 3 send "clnt_0" expect "word: " 40 # # Set the ppp password of the remote host here # send "clnt_0-pass" |
PPP Configuration File (ppp.conf) for server:
ifconfig ipdptp0 plumb
ifconfig ipdptp0 local remote0 netmask 255.255.255.0 down
ifconfig ipdptp1 plumb
ifconfig ipdptp1 local remote1 netmask 255.255.255.0 down
ifconfig ipdptp2 plumb
ifconfig ipdptp2 local remote2 netmask 255.255.255.0 down
.
.
ifconfig ipdptp8 plumb
ifconfig ipdptp8 local remote8 netmask 255.255.255.0 down
dialup_path
ip_interface ipdptp*
expect_login_id clnt_0
expect_authentication pap
expect_pap_id pap-id0
expect_pap_passwd pap_passwd0
dialup_path
ip_interface ipdptp*
expect_login_id clnt_1
expect_authentication pap
expect_pap_id pap-id1
expect_pap_passwd pap_passwd1
dialup_path
ip_interface ipdptp*
expect_login_id clnt_2
expect_authentication pap
expect_pap_id pap-id2
expect_pap_passwd pap_passwd2
.
.
dialup_path
ip_interface ipdptp*
expect_login_id clnt_n
expect_authentication pap
expect_pap_id pap-idn
expect_pap_passwd pap_passwdn
|
Link Configuration File (link.conf) for server:
dialup_device pppdev0
unix_device tty0
line_speed 38400
modem Cardinal V.34/V.FC 28.8 data/fax
call_setup answer
dialup_device pppdev1
unix_device tty1
line_speed 38400
modem Cardinal V.34/V.FC 28.8 data/fax
call_setup answer
dialup_device pppdev2
unix_device tty2
line_speed 38400
modem Cardinal V.34/V.FC 28.8 data/fax
call_setup answer
.
.
.
.
dialup_device pppdev10
unix_device tty8
line_speed 38400
modem Cardinal V.34/V.FC 28.8 data/fax
call_setup answer
|
User account on server used to accept calls from client_0: