I have Asterisk running with an public IP. There is NO firewall.
I have an SIP Phone with a public IP (from the same pool that asterisk’s IP)
I have an SIP phone trough ADSL. This IP phone is behind a router, which have every ports opened.
Ok, this is what happens:
The SIP phone trough ADSL doesn’t register.
The SIP phone with a public IP do.
I can make calls from the SIP phone (ADSL) to SIP phone (public IP)
I can NOT make calls from the SIP phone (public IP) to SIP phone (ADSL)
Maybe you will need to use a Stunt Server.
I think that there are some for free, but I not remember at the moment.
Just ask mr.google for Stunt protocol and Stunt Servers
I think you mean Stun server. A Stunt server is a server that does the jobs a main server thinks are too dangerous.
But as to the question, if the server is on a real external address not in DMZ then it sounds like the localnet and externip arnt set correctly and make sure that the peer behind nat has nat=yes set
[quote=“ianplain”]
one question is how can the unregisterd phone make calls ???
Ian[/quote]
In the phone setup, there’s an option for make calls without registration. So, asterisk accept this traffic (from this phone) and forward it.
The real question is: Why if I can do this calls, I can’t make it the otherwise.
Can I set externip on extensions definition?
Example:
[6000]
type=friend
secret=6000
qualify=yes
port=5060 nat=always → does exists always?? should be route?
host=dynamic
dtmfmode=rfc2833
dial=SIP/6000
context=from-internal
canreinvite=yes
callerid=device <6000>