> (This message is not a dumb NAT question!)
>
> I have a bunch of setups where an Asterisk system with a public IP
> doubles as a router/gateway/firewall for a set of phones on a private
> network.
>
> We're using external SIP providers.
>
> Everything works quite nicely.
>
> Now, I would very much like to remove the "canreinvite=no" from
the
> provider's definition on sip.conf, but doing so causes Asterisk to send
> a re-invite to the provider pointing to a private IP. I thought that
> correct localnet entries would solve this...
>
> Is what I'm after even possible? Am I looking in the wrong place?
Let's see if I'm reading this correctly.
By changing to canreinvite=yes, are you expecting the asterisk box to
act as a router, passing rtp traffic from your sip provider through
the box to a sip phone with a private address (without passing
asterisk code in the middle of the rtp session)?
If I read the above correctly, best guess is it will be very difficult
if not impossible to accomplish.
The logic behind that guess is... sip reinvites occur on udp 5060 and
you only have one external IP address on the box. If the sip provider
sends reinvite traffic to your extern IP (intending it to go to private
address 192.168.5.6 sip phone), what is going to catch that packet and
decide where to send it? The extern IP with udp 5060 is already in use
by asterisk code.
You might be able to reconfig the asterisk box and map another registered
IP address on its external nic for each internal sip phone. Wouldn't
even care to guess how that might actually work.