We are attempting to build an enterprise phone system utilizing one centralized SIP trunk, connected directly to a CM (6.0.1). The remote branches are on IPSEC L2L VPNs, and phones register with CM via SCCP.
When a branch phone makes an outgoing call, call manager initiates the sip session with the provider, and the SDP contains the internal IP of the phone as the media contact. Since the central campus ASAs SIP inspection has no idea who or what the branch phone's IP refers to, it does not re-write the IP, and the provider is given a useless non route-able IP, and I get one way audio. If I enable "Media Termination Point Required" on the provider SIP trunk, the call works as expected, but (obviously) the media path flows through the CM. (similar situation for incoming calls)
I need to make the media path flow through the branches local router (2811's, 2801's, 1861's) and go straight to the provider without going over the vpn and through my CM.
I don't think it's possible to trick the ASA's SIP inspection to re-write the internal branch phone's IP with the public IP of it's branch router, so we can probably skip that. (If it is possible, please tell me how).
So far the solution I am attempting is to register the branches router as an MTP on CM through the public network. (this way the SDP contains the public IP of the branches MTP). I can make successful calls from one branch when I force the sip trunk to use that branches MTP. The only problem left is that I don't know how to require an MTP from the phones perspective. I have only one SIP trunk to the provider, and I can not specify an MTP for the trunk because all branches share the one trunk. CM seems to just choose whichever MTP it feels necessary if I make both the branch's MTP and the CM's MTP available. I need callmanager to allocate an MTP resource from any given MTP device depending on which phone I am calling or have called from. In short, I need a "Media Termination Point Required" check mark on the phone configuration page, so that callmanager will allocate an MTP resource from the phones MRGL.
I'm trying to avoid locations and regions at this point because I want strictly 711 across the board, but I am not opposed to using them if necessary.
Please let me know how to do this, or even suggest a better way. Any light shed would be greatly appreciated. Thanks in advance