Support
Center
 Configuring an R2T1 for bonded T1
Solution

Configuring an R2T1 for bonded T1

This article details the configuration of a Rhino R2T1 for a bonded T1 using Debian Lenny. In this example, the interface is configured to use ethernet framing, not PPP, on a point-to-point WAN connection with a host 192.168.106.1, set as the default route; this side is configured as 192.168.106.2. Some basic traffic shaping is also used in this example, but not required.

First, you will need to install the linux-headers Debian package. This is needed in order to compile the Zaptel and Rhino drivers from source.

apt-get install linux-headers

Next, you will need to download the Zaptel and Rhino driver sources to /usr/src. This process has only been tested with Zaptel 1.4.10.1, Rhino driver 2.2.6, and running kernel 2.6.20-15-server.

cd /usr/src
wget http://downloads.asterisk.org/pub/telephony/zaptel/releases/zaptel-1.4.10.1.tar.gz http://dist.rhinoequipment.com/source/2.2.6

The next step is to unpack the sources

tar -xzvf zaptel-1.4.10.1.tar.gz
tar -xjvf rhino-2.2.6.tbz2

You will need to edit Zaptel's /usr/src/zaptel-1.4.10.1/kernel/zconfig.h file to enable data T1 functions. Uncomment the CONFIG_ZAPATA_NET, CONFIG_ZAPATA_PPP, and CONFIG_ZAPTEL_WATCHDOG #define lines.

Then compile and install:

cd /usr/src/zaptel-1.4.10.1
make && make install
cd /usr/src/rhino-2.2.6
make && make install

Lastly, you must configure Zaptel and networking on your system...

Make sure the requisite kernel modules are loaded in /etc/modules

bonding
rxt1
hdlc_cisco
hdlc_ppp
hdlc_raw
hdlc_raw_eth
hdlc_x25
hdlc_fr
hdlc

Create /etc/init.d/configzaptel if it doesn't exist already to bring up the R2T1 before networking starts

#! /bin/sh
#
# Run ztcfg so that the hdlc network devices are created on boot

ztcfg -vvvvv

/etc/zaptel.conf must contain the span lines:

span=1,1,0,esf,b8zs
span=2,1,0,esf,b8zs

And for signaling, set:

nethdlc=1-24
nethdlc=25-48

Set /etc/network/interfaces:

auto hdlc0
iface hdlc0 inet static
      pre-up sethdlc hdlc0 hdlc-eth
      address 192.168.1.1
      pointopoint 192.168.1.2
      netmask 255.255.255.255

auto hdlc1
iface hdlc1 inet static
      pre-up sethdlc hdlc1 hdlc-eth
      address 192.168.2.1
      pointopoint 192.168.2.2
      netmask 255.255.255.255

auto bond0
iface bond0 inet static
      address 192.168.106.2
      netmask 255.255.255.252
      gateway 192.168.106.1
      post-up /sbin/ifenslave -f bond0 hdlc0 hdlc1
      post-up tc qdisc add dev bond0 root handle 1: prio priomap 1 2 2 2 1 2 0 0 0 1 1 1 1 1 1 1

You may also want to enable IPv4 packet forwarding. Setting up NAT, firewalls, etc is outside the scope of this article. This will provide simple pass-through forwarding. Edit /etc/sysctl.conf and add:

net.ipv4.ip_forward=1

Finally, it's time to reboot. You could reload everything by hand, but this tests that everything is setup correctly and the machine can reboot unattended.

reboot

Other:
This article can fairly easily be expanded to 3 or 4, or maybe even more T1's, as long as the opposite side is configured in a matching style. Simply define the extra spans and additional hdlcX adapters, adding them to the bond0 interface. Alternatively, this can be adopted to a single T1, just move all the bond0 configuration to hdlc0, remove references to bond0, and remove the ifensalve post-up line from /etc/network/interfaces.

Applies To

R1T1, R1T1-e, R1T1-ec, R1T1-e-ec, R2T1, R2T1-e, R2T1-ec, R2T1-e-ec, R4T1, R4T1-e, R4T1-ec, R4T1-e-ec

Keywords

data, t1, bonded, hdlc, ethernet



 Login [Lost Password] 
Email:
Password:
Remember Me:
 
 Search
 Article Options