|The Care and Feeding of ISDN4BSD|
|9 The isdnmonitor Utility||The Care and Feeding||10.1 isdnd.rc Setup|
10 Setting up a Synchronous PPP Link using isp/sppp
In this section i'll try to go through the steps required to set up a link to a remote site using synchronous PPP over ISDN. The following picture presents an overview of the components and paths involved in the isdn4bsd PPP implementation:
The isdn daemon isdnd has to be configured to handle the connection establishment over the D-channel. Once the connection to the remote site has been established, a B-channel is connected to the i4bisppp network device driver, which handles the PPP protocol in the isdn4bsd package. It does this with the help of the sppp module, which does the real work of handling the PPP protocol. The i4b PPP network device is then visible as one of the isp<n> (i.e. isp0 or isp1) interfaces.
What does each component do?
Here is the setup for the following example:
- [isdnd]the isdn daemon is configured by its configuration database isdnd.rc. It needs at least the own and remote telephone numbers and some parameters for handling the timeout mechanism and its retry and recovery mechanisms. Isdnd is just responsible for setting up and shutting down an ISDN connection to a remote side, once a connection is active, it connects a B-channel to a driver as specified in the isdnd.rc config file and thats it. It is not involved in any data transfer on the B-channel. For more information consult the isdnd(8) and isdnd.rc(5) manual pages.
- [i4bisppp]this is the network device driver which is visible (for example) as device isp0 to the userland. As usual with network devices, the isp<n> devices are configured by using the ifconfig command. It is required to configure the parameters address, dest_address (because this interfaces are point-to-point interfaces, a destination address is required!) and netmask (the netmask has to be 255.255.255.255 usually). Also the link0 and link1 parameters have a special meaning and normally it will be required to specify at leat one of them. For more information consult the i4bisppp(4) and the ifconfig(8) manual pages.
- [sppp]is a - non visible - kernel component which handles the PPP (Point to Point Protocol) protocol in a device independent manner. It is required to configure several PPP parameters, such as the authentication protocol which is going to be used on the link and the PPP password(s) used when establishing the connection. The spppcontrol program is used to configure this parameters. For more information consult the sppp(4) and the spppcontrol(8) manual pages.
A Cisco 1003 Router and a PC running FreeBSD 3.x and isdn4bsd are connected to a PBX. The Cisco is connected to an ISDN S0 port on that PBX which has the extension (telephone-) number 581 to it and the FreeBSD machine is connected to an S0 port with the extension 241.