Try to make SIP message dumps using ngrep, we would like to see the messages which are discarded by the CISCO gateway and which get 400 Bad Request from the other gateway.
Jan.
On 24-02 00:24, Jac Barben wrote:
All:
Please bear with me... I'm having a hard time formulating this quesiton.
Basics: ser-0.8.12 from src rtpproxy = $Id: main.c,v 1.19.2.10 2003/10/18 20:14:22 sobomax Exp RH 7.3 updated to: [root@sip2 rtpproxy]# uname -a Linux sip2.claritycolorado.com 2.4.20-20.7 #1 Mon Aug 18 14:56:30 EDT 2003 i686 unknown
The problem seems to be that I cannot "always" forward calls to a given destination if I have executed the force_rtp_proxy.
Typically I'm using a UA like a Cisco ATA, PureData, or softphone behind a firewall. They in-turn register to SER/rtpproxy at a legal IP address; most calls are then forwarded to a Vega gateway that resides on the same network as SER/rtpproxy (in Denver). In this instance all is well. However, when I try to alt route calls to an "off-network" source (Cisco in LA and Sonus in Houston) I get two different and disturbing results:
- Cisco will not respond to SER: Cisco simply indicates in its own
logs that the INVITE is invalid and thus "trashed" the message 2. Sonus will respond with a "Bad Request"
Below are some snippets:
Prior to calling the route I have already I identified whether or not my UA is behind a firewall and have fix_nated_contact(), force_rport(), setflag(1)
SER/rtpproxy is running at 64.47.72.12
# Clarity Vega Evergreen CO -- this one works route[1] { if (uri=~"[@:](192.168.|10.|172.(1[6-9]|2[0-9]|3[0-1]).)" && !search("^Route:") ) { sl_send_reply("479", "We don't forward to private IP addresses"); break; };
record_route(); if (isflagset(1)) { fix_nated_sdp("1"); force_rtp_proxy(); t_on_reply("2"); } rewritehostport("64.47.72.10:5060"); t_relay();
}
# Clarity Cisco AS5300 LA -- this one does not route[2] { if (uri=~"[@:](192.168.|10.|172.(1[6-9]|2[0-9]|3[0-1]).)" && !search("^Route:") ) { sl_send_reply("479", "We don't forward to private IP addresses"); break; };
record_route(); if (isflagset(1)) { fix_nated_sdp("1"); force_rtp_proxy(); t_on_reply("2"); } rewritehostport("198.77.133.30:5060"); t_relay();
}
# Clarity Sonus Houston -- this one does not route[3] { if (uri=~"[@:](192.168.|10.|172.(1[6-9]|2[0-9]|3[0-1]).)" && !search("^Route:") ) { sl_send_reply("479", "We don't forward to private IP addresses"); break; };
record_route(); if (isflagset(1)) { fix_nated_sdp("1"); force_rtp_proxy(); t_on_reply("2"); } rewritehostport("64.47.6.6:5060"); t_relay();
}
/* inbound */ onreply_route[2] { fix_nated_contact(); fix_nated_sdp("1"); force_rtp_proxy(); }
Please... If you have any ideas... I'm really stuck.
Jac Barben
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers