Figure 5-4 shows a small number of clients connected to a server using asynchronous links. Clients initiate calls to the server, which requests authentication using the Challenge-Handshake Authentication Protocol (CHAP).

The server uses a single point-to-multipoint IP interface to create a virtual subnetwork of clients. Each client establishes a single point-to-point IP connection to the server.
To initiate calls to the server, each client uses a CHAT (or connect) script that specifies the login id and password it sends during the link establishment phase.
To accept calls from a client, the server must have a corresponding user account that specifies the login id and password it expects to receive. In this simple example, the server has only one modem and only one IP interface; therefore it can only accept one incoming call at a time.
PPP Configuration File (ppp.conf) for papyrus:
ifconfig ipdptp0 plumb
ifconfig ipdptp0 papyrus server netmask 255.255.255.0 mtu 1500 up
dialup_path
ip_interface ipdptp0
remote_host server
send_authentication chap
send_chap_name chap-papyrus
chap_own_secret Secret*1
|
Link Configuration File (link.conf) for papyrus:
dialup_device pppdev0
unix_device ttya
line_speed 38400
modem BocaModem V.34 DataFax
call_setup dial
remote_host server
phone_number 1234561000
chat_script server.script
|
CHAT script (server.script) used by papyrus 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 "ppp_log1" expect "word: " 40 # # Set the ppp password of the remote host here # send "papyrus-pass" |
PPP Configuration File (ppp.conf) for scribbler:
ifconfig ipdptp0 plumb
ifconfig ipdptp0 scribbler server netmask 255.255.255.0 mtu 1500
up
dialup_path
ip_interface ipdptp0
remote_host server
send_authentication chap
send_chap_name chap-scribbler
chap_own_secret Secret*2
|
Link Configuration File (link.conf) for scribbler:
dialup_device pppdev0
unix_device ttya
line_speed 38400
modem Practical 14400 V32bis
call_setup dial
remote_host server
phone_number 1234561000
chat_script server.script
|
CHAT script (server.script) used by scribbler 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 "ppp_log2" expect "word: " 40 # # Set the ppp password of the remote host here # send "scribbler-pass" |
PPP Configuration File (ppp.conf) for server:
ifconfig ipd0 plumb
ifconfig ipd0 papyrus netmask 255.255.255.0 mtu 1500 up
dialup_path
ip_interface ipd0
remote_ip_addr papyrus-ppp
expect_login_id ppp_log1
expect_authentication chap
expect_chap_name chap-papyrus
chap_peer_secret Secret*1
dialup_path
ip_interface ipd0
remote_ip_addr scribbler-ppp
expect_login_id ppp_log2
expect_authentication chap
expect_chap_name chap-scribbler
chap_peer_secret Secret*2
|
Link Configuration File (link.conf) for server:
dialup_device pppdev0
unix_device ttya
line_speed 38400
modem Cardinal V.34/V.FC 28.8 data/fax
call_setup answer
dialup_device ppdev1
unix_device ttyb
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 papyrus:

User account on server used to accept calls from scribbler: