We are a new WISP offering voip to our residential customers. Due to IP address scarcity we have to use large scale NAT in our network. In order for our local customers to call each other and have good call quality we wish to connect their ATA's directly to each other rather than have the RTP proxied across the public internet. It seems milkfish is designed to accomplish this but it appears to assume a configuration like the one called the "Standard Scenario" in the siproxd guide. We need to use the 'Siproxd running "in front of" a NAT router' (section 7.3 in the guide) scenario because our main router will be doing the NAT stuff and I'm not sure if milkfish will work in this configuration.
My concern about siproxd is the statement that "the RTP proxy must always be enabled". But in our application the point is that we don't want to proxy RTP in any situation. If the call is within our network, the ATA's should connect directly without a proxy. The only other situation is a call to/from the PSTN, in which case our ITSP will arrange to connect our ATA directly to a PSTN gateway without a proxy, and the RTP packets will flow through our main router bypassing the SIP proxy server.
Can siproxd perform this task?
Siproxd will always do masquerading and RTP proxying (although, for local calls the RTP traffic will be looped locally in the siproxd host). Also siproxd requires the REGISTRAR to be on the Internet side (NAT between UAC and REGISTRAR)- I'm not sure if that will be true in your case.
Maybe you should look at a two step approach: SER for routing the internal calls, follower by siproxd for masquerading the outgoing calls. Milkfish uses SER as SIP proxy. It should be posible to chain SER and siproxd - of course this needs the correct configuration of both proxies.
Thanks for the reply. It looks like neither siproxd or milkfish is appropriate for my application. I've been trying to figure out how to customize SER myself. Please see the query I just posted on the sip routers list. If you have any suggestions I would appreciate it. Thanks.