Silience on random calls

Good day everyone,

I faced following problem lately.

Am running Asterisk 1.2.7.1 [trixbox build]

2 Linksys SPA2102
7 DLINK DVG2004s

Time after time I get an error, when an extension recieves a call - it rings, but when you pick up the handset you cant hear anything. Just silience. You can hung up and recall - and it might be working next time and might be the same problem.
Also found out what pressing any digit on a phone helps to bring up the sound… Which is weird.
PC has two eth interfaces, one with pubic ip, one with private. VoIP gateways are connected to the * thru local leg with addres 192.168.1.227. So they are sitting in one network and in one swithch, what eliminates any relation to NAT problem.
Does anybody faced the same problem? Or might was “walking” just right next to mine?

If somebody could help us …

Questions;

Do all ATA’s have seperate extensions in Asterisk sip.conf.

At the Asterisk CGI enter “sip show peers” and see if all ATA’s are registering and with what IP address.

Then enter “sip debug” and make a call to one of your ATA’s and see
what debug info comes up. Keep making the call until you get the
one way audio or silence.

Is there a Switch/Hub that connects all ATA’s and then to Asterisk ?

Are the ATA’s set with static IP addresses (each one different) ?

If there is a switch (or Hub), is it Uplinked through a router
and then to your Cable/DSL modem ?

The reason to ask these questions is “one way audio generally is a NAT
issue”. Silence on either side, although intermitant, is packet loss.

Also, in the ATAs’ Graphic Interface, are the ATA’s set to NAT=yes ?

If you are using a Hub, for example, and the ATA’s are all registering with Asterisk every so many milliseconds, the Hub gives turns, so to speak, to the priority of network traffic. This could cause “half duplex mode”.

If you are using a “Switch” this is not the issue.

Is Asterisk sip.conf under [general] set to “nat=yes” ?

Also, what codecs are being utilized and in what sequence are they listed ?

Are the ATA’s codecs set in proirity the way Asterisk SIP/IAX is ?

eg:
disallow=all
allow=ulaw
allow=???
allow=???
and so on

In Sip.conf, check to see if under [general] the bindaddr=0.0.0.0.
If set to 0.0.0.0 this is a “bind to all” interpretation to Asterisk.
However, Asterisk will bind to the “first available”. This may need
to be adjusted.

If bindaddr is set to your public or private address, it may need to be
set to one for all voice traffic including Asterisk and the ATA’s so all
voice traffic is directed one way allowing Asterisk to only bind
to one address.

This is where I would start to find my solution.

Repost, if needed, and we can look further !!

Okay, I will reply you quote by quote:

[quote=“kpm850”]Questions;
Do all ATA’s have seperate extensions in Asterisk sip.conf. [/quote]

Yes. All gatways have its own separate extension

[203]
username=203
type=friend
secret=203
record_out=Always
record_in=Always
qualify=no
port=5060
nat=yes
mailbox=203@device
host=dynamic
dtmfmode=rfc2833
context=from-internal
canreinvite=no
callerid=203

They do register correctly.

[quote=“kpm850”]Then enter “sip debug” and make a call to one of your ATA’s and see
what debug info comes up. Keep making the call until you get the
one way audio or silence. [/quote]

Will try to do that and will post log later

Switch 3COM 4400

Each ATA has static private address.

[quote=“kpm850”]If there is a switch (or Hub), is it Uplinked through a router
and then to your Cable/DSL modem ?[/quote]

Asterisk has one ethernet interface with private IP address which connected to the same switch where ATAs are connected.

The reason to ask these questions is “one way audio generally is a NAT
issue”. Silence on either side, although intermitant, is packet loss.

Also, in the ATAs’ Graphic Interface, are the ATA’s set to NAT=yes ?

Yes.

[quote=“kpm850”]Also, what codecs are being utilized and in what sequence are they listed ?
Are the ATA’s codecs set in proirity the way Asterisk SIP/IAX is ? [/quote]

disallow=all
allow=ulaw
allow=alaw

[quote=“kpm850”]In Sip.conf, check to see if under [general] the bindaddr=0.0.0.0.
If set to 0.0.0.0 this is a “bind to all” interpretation to Asterisk.
However, Asterisk will bind to the “first available”. This may need
to be adjusted.

If bindaddr is set to your public or private address, it may need to be
set to one for all voice traffic including Asterisk and the ATA’s so all
voice traffic is directed one way allowing Asterisk to only bind
to one address.[/quote]

The Asterisk has 2 network interfaces.

eth1 = 192.168.1.227 [private ip]
eth2 = xx.xx.xx.227 [public ip]

One leg is connected to the local switch, where all the ATA’s are connected. ATA connects to Asterisk thru its local leg (eth1)

ATA ip - 192.168.1.204 Asterisk ip - 192.168.1.227
So I think NAT is not the issue as there should not be NAT translation in that case.

bindaddr is set to 0.0.0.0 as Asterisk should serve 2 legs. Public and Private simultaniously.

I thought that random call silience caused by TE110P card on Asterisk, but I found that there is the same problem when you make internal call from an extension to extension. (from one ATA to another)

I had some weeks when all been working just fine. Now - cannot guarantee any quility at all.
So ust crackig my head about that.

[network map]

internet
|
eth2 public xx.xx.xx.227
|
[ASTERISK]
|
eth1 lan 192.168.1.227
|
[3COM 4400]
|- ata1 DLINK DVG-2004s 192.168.1.204
|- ata2 DLINK DVG-2004s 192.168.1.205
|- ata3 Linksys SPA2102 192.168.1.206

I noticed in the extension [203] there is nat=yes, qualify=no.
If no NAT exist, remove both of these comments. The nat=yes
will not help and the qualify=??? only helps if there is a NAT.
In other words qualify=yes tells Asterisk to send "Keep Alive"
signals to make sure the call is not dropped or interupted by
packet loss. The “qualify=???” statement can also be set to a
numeric value in milliseconds such as qualify=1000.

Also, please post the [from-internal] extension comments
from extensions.conf and the ATAs’ setup.

[quote=“prophead”]
Does anybody faced the same problem? Or might was “walking” just right next to mine?[/quote]

I think I have a problem that is at least similar to yours. I have roughly the same setup and I also have silence on seamingly random calls. Yet i noticed some additional things if the problem occurs:

  • When making a call, the callee can hear the caller, but the caller cannot hear the callee.
  • After the callee picks up, the calling phone is still indicating “Ringing”, yet if you speak the callee can hear it.
  • Restarting or reloading asterisk temporarily fixes the problem.
  • After rebooting the asterisk host the problem occurs again.

My setup is as follows:

  • Tried * 1.2.9.1 and 1.2.12.1
    • running on slackware 10.1 with two nics
  • host is functioning as router with NAT
  • using Thomson ST2030 SIP phones
  • calling via IAX2 or ISDN, makes no difference
  • firewall is off