I have a configuration where SER sits immediately adjacent to a NAT translation between 10.x.x.x on the SER side and public Internet on the other side of the NAT. This a PSTN gateway that has only handled inbound SIP traffic, but now I am trying to send outbound and have run into issues.
I am able to fix Contact: and SDP payload IP addresses and such with various force commands, but I have not found a way to alter Via:, and that is causing problems.
To get the INVITE to forward out the right interface, we have to do a force_send_socket of say 10.2.4.6 which does get the packet out on the right interface headed toward the NAT router, but that same value also gets put in the Via: header and so none of the public IP address destinations (eg 208.22.33.44) can send SIP messages back to our public IP address gateway (205.66.77.88).
So the INVITE that reaches 208.22.33.44 has packet source of 205.66.77.88), but the Via: is 10.2.4.6 and 208.22.33.44 replies to the Via: address, so we don't get any of the responses.
So, is there a way to force the Via: to put out the needed value so that things will come out right?