Archive for the ‘VoIP Gateway’ Category

It looks like Adtran is OK with failing G.168 echo cancellation tests on their higher end NetVanta VoIP gateways.
This is from their latest release notes:

Using the HEAD acoustics test suite, some G.168 echo cancellation test cases fail on the NetVanta 6240
and NetVanta 644. These same tests pass on Total Access 900 Series units. There is no reason to believe
this would affect a customer in the field.

Patton is a US based company but by default their units are not configured for US standards.

Here is how to add US tones and configure the FXS ports to simulate standard US POTS lines:

First for the tone profile:

profile call-progress-tone US_Dialtone
  play 1 1000 350 -13 440 -13

profile call-progress-tone US_Alertingtone
  play 1 1000 440 -19 480 -19
  pause 2 3000

profile call-progress-tone US_Busytone
  play 1 500 480 -24 620 -24
  pause 2 500

profile call-progress-tone US_Releasetone
  play 1 250 480 -24 620 -24
  pause 2 250

profile tone-set US
  map call-progress-tone dial-tone US_Dialtone
  map call-progress-tone ringback-tone US_Alertingtone
  map call-progress-tone busy-tone US_Busytone
  map call-progress-tone release-tone US_Releasetone
  map call-progress-tone congestion-tone US_Busytone

Next we need to configure the ports and interfaces.

port fxs 0 0
  end-of-call-signaling loop-break 1200
  use profile fxs us
  encapsulation cc-fxs
  bind interface FXS0 switch

interface fxs FXS0
  caller-id-presentation mid-ring
  caller-id-format bell
  use profile tone-set US

This must be repeated for each FXS port.

The above settings will set the FXS ports to use the US tones, caller id, other settings needed to simulate standard “Bell” lines.

You will also need to apply the US tones to the SIP interface:

interface sip SIP1
   use profile tone-set US

There are many used 1st Gen Adtran Total Access 900 Series Gateways out there at much lower prices than the 2nd Gen.

I was curious if there are major differences between the two units.
After some research I found the following:

Feature 1st Gen 2nd Gen
3 Way Conferences via FXS users 0 3
Max TDM to IP Call 24 30
Max T.38 Sessions 1 4
Echo-tail Length 16 ms 64 ms
Supports MGCP No Yes
Flash Memory 32MB 64MB

Based upon Echo-tail length increased to 64ms and the increased number of T.38 faxes I stick to the the 2ng Gen Gateways.

Recently I had a customer that wanted to setup SIP Trunks on their old phone system.
When I arrived onsite I realized that they were using an old T1 and not a PRI.

At first I tried configuring the settings in the GUI but that just created a mess in the config and didn’t work.

After some digging around I got it to work with the following settings:

interface t1 0/2
  tdm-group 1 timeslots 1-24
  no shutdown

voice trunk T02 type t1-rbs supervision wink role network
  description “PBX”
  connect t1 0/2 tdm-group 1
  resource-selection linear ascending
  did digits-transferred 4
  modem-passthrough
  t38
  rtp delay-mode adaptive
  codec-group Generic

The remaining settings are the same as a standard PRI.

Many times when setting up the Adtran Total Access 900 Series VoIP Gateway the customer will ask me to force a specific Caller ID for 911.
This way even if the PBX sets a different Caller ID when the emergency call goes out the call will still be routed to the local PSAP.

At first I configured it as follows:
voice trunk T01 type sip
match dnis “911” replace ani “2125551212” name “Emergency”

This worked fine until one customer had a their PBX misconfigured by their vendor and certain calls had no Caller ID.
When this happened and 911 was called the Caller ID was not set with the above rule.
It seems that the Gateway only manipulates the SIP Header when there is value to replace; in this case since there was none it skipped the rule.

I found settings below that can fix this.
For 911 calls only you can use the following:
voice trunk T01 type sip
caller-id-override emergency-outbound 2125551212

The setting “emergency-outbound” is hard coded for 911 calls. If your area has a different emergency number or you want to override none 911 calls with no Caller ID you need to use the if-no-cpn option:
voice trunk T01 type sip
caller-id-override number-inbound 2125551212 if-no-cpn
match dnis “911” replace ani “2125551212” name “Emergency”

Bypassing the passwords on the AOS requires a straight through serial cable to the console port of the unit.
Configure a VT100 session (i.e. PuTTy) using the following settings: 9600 bps, 8 bits, no parity, 1 stop bit and no flow control.
Now apply power to the unit.
As the unit boots you will be given the opportunity to break into bootstrap mode by pressing the ESC key within 5 seconds.
Next type the following:
Bootstrap# bypass passwords
Bootstrap# boot

The system will now boot with the password removed.

Here are the steps to factory reset and upgrade the firmware on the Adtran Total Access 900 Series VoIP Gateway.

Requirements:
– 9 Pin Male Serial cable
– Terminal client (I use PuTTY)
– Ethernet patch cable
– Default config file Link
– A tftp server installed on your computer Link (Make sure that your local firewall is not blocking)
– The latest firmware from Adtran (This is available on Adtran’s site but you will need a free account)

1) Download the firmware from Adtran’s site and place it in the root directory of the tftp sever path
2) Plug the serial port into the Adtran and your computer
3) Plug the patch cable into port ETH 0/1 on the Atran and then into your computer
4) Assign a private static IP to your computer (in this example use 10.10.10.5)
5) Start the terminal client and set it to 9600, 8, 1, None, None (make sure the com port matches your serial port)
6) Plug in the Adtran
7) When prompted (about 5 seconds into the boot sequence) hit Esc to enter the bootstrap; you will now be at the bootstrap# prompt.
8) Type “erase file-system”
9) Type “ip address 10.10.10.1 255.255.255.0”
10) Type “copy tftp flash” and you will get the following prompts:
Address of remote host? 10.10.10.5
Source filename? {the name of the firmware file}
Destination filename? {hit enter}
It will then transfer the file from your PC to the Adtran
11) Rename the default config file to startup-config and repeat step 10 (except the filename is now startup-config) to upload the config file to the Adtran
12) Type “boot system flash {the name of the firmware file} verify”
13) Type “boot”

The system will now boot the new firmware with the default config.
I highly recommend watching the entire boot process and see if there are any error messages.

Make sure it displays something similar to the following:
VoIP DSP 0 Initialize.
Loading Starcore DSP Image from Compressed File.
Boot version: G2.A4.07.04
Application Version: G2.A4.07.04
Starting DSP.
Booting.
Memory Test…..
Loading Application.
Application Initializing.
DSP is running.

If it does not indicate the DSP is running you probably have a hardware issue.

Once the system is finished booting type “enable” and then “show output-errors”. This will display any config errors during boot.

If you know how to program the AOS from the command prompt you are good to go otherwise you can access the web admin by going to 10.10.10.1 and entering admin and password for the credentials

One of my Adtran Total Access 904 units stopped passing voice traffic and started producing the following errors:
2012.01.10 14:22:18 SB.CALL 8 RTP resource unavailable or SDP negotiation failed. Call from (XXXXXXX) to (YYYYYYYY).

A “show version” revealed the problem. It is supposed to show information about the DSP but it did not.

A normal operating unit will show something similar to the following:

slot 0, DSP 1
DSP software version: G1.A4.00.31
DSP hardware version: Freescale MSC7116
Total channels: 24

If it does not it means that the DSP failed and the unit needs to be returned to Adtran for repair.

Here is a great post by Mark Holloway that lists the most commonly used debug commands for the Adtran Total Access:

http://www.markholloway.com/blog/?p=315

Debug Output

Command Description
show debugging shows current enabled debug commands
debug sip stack messages shows sip debug information
debug isdn l2-formatted shows isdn debug information (easier use)
debug voice verbose shows all voice messaging
debug isdn verbose shows all isdn messaging
debug interface T1 0/4 rbs shows robbed bit signaling from CAS circuit
undebug all turns off all debugging

Utility Commands

Command Description
clear count media counters on media-gateway reset
clear counters clears counters on interfaces
no events turns off messages to the current session
ping ping an IP address
traceroute trace the router path to a destination IP address
wall sends a broadcast message to all current users
sip trunk-registration force-register forces sip re-registration

Show Commands

Command Description
show sip trunk-registration shows registration status
show media-gateway summary shows media gateway channel status
show media-gateway channel 0/2.1 shows media gateway channel details
show qos map shows qos map
show flash lists contents of the flash
show run voice [verbose] lists running configuration for voice provisioning
show hosts shows the hosts table with timers
show event-history shows events and terminal commands typed
show interfaces shows interface details
show system shows uptime, firmware version and timing
show thresholds shows thresholds of T1 interfaces
show users shows current users
show voice quality-stats shows call information including lost packets
show voice quality-stats active shows call information including lost
show voice quality-stats active realtime shows call information including lost
show ip traffic TCP and UDP statistics

As with most enterprise equipment the web GUI is usually either incomplete or full of bugs. (I got locked out of gateway once when trying to set the password through the web GUI)

In the Adtran Total Access web GUI you can enabled T38 faxing by checking the T38 check box under the T1 trunk.

While this does enable T38 it does not allow for the full configuration.

Here is a list of all the T38 options available through the terminal:

  • modem-passthrough
  • t38
  • t38 error-correction [fec | redundancy]
  • t38 redundancy [high-speed | low-speed] <value>
  • t38 max-rate <value>
  • t38 fallback-mode g711
  • t38 max-buffer <value>
  • t38 max-datagram <value>

Samples config:

(config)#voice trunk t02
(config-T02)#modem-passthrough
(config-T02)#t38
(config-T02)#t38 redundancy high-speed 3
(config-T02)#t38 redundancy low-speed 2
(config-T02)#t38 fallback-mode g711
(config-T02)#t38 max-rate 9600
(config-T02)#exit