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:
1. 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(a)lists.iptel.org
http://lists.iptel.org/mailman/listinfo/serusers