[prev in list] [next in list] [prev in thread] [next in thread]
List: serusers
Subject: [Serusers] rtp proxy problem when re-inviting with changed local
From: "Thomas Nilsen" <thomas () bellit ! no>
Date: 2007-04-27 0:39:52
Message-ID: 00ac01c78864$91ac8c20$4b96a8c0 () nimbus
[Download RAW message or body]
[Attachment #2 (multipart/alternative)]
Is it possible to get rtpproxy/nathelper to start a totally new rtpproxy
session on re-invite and not use the previous pair of ports on the rtp
proxy?
In this case:
A calls B behind nat. Sdp are rewritten to go though rtpproxy on two ports.
X & Y.
Some time goes by with conversation. Then the call chages codec, line or
something (not important). In this case B ua changes rtp port locally also
(incremented by 2). This is no problem. The re-invite is sent with new port.
But problem now is that rtpproxy sees this and updates the sdp as always and
it uses the previous X & Y port that was used on the rtpproxy before
re-invite.
The problem now is this. Packets from B to A goes correctly since A's local
rtp port was same both before and after re-invite. But packets from A to B
is arrivind on B's local port for the first sdp session, not the second. It
seems that rtpproxy wont change this..
I assume this is a security measure for rtpproxy. But it should have some
function to force new session ports on rtpproxy by parameters to
force_rtpproxy() or something.
As far as I can tell this is only a problem if the sip-ua is changing local
port.. I thought maby calling unforce_rtp_proxy() before forcing rtp_proxy
again would help, but don't work. Probably because of some internal working
of nathelper.
Anyone got an idea how to solve this? I would really appreciate any input on
this..
-
Thomas
[Attachment #5 (text/html)]
<html xmlns:v="urn:schemas-microsoft-com:vml" \
xmlns:o="urn:schemas-microsoft-com:office:office" \
xmlns:w="urn:schemas-microsoft-com:office:word" \
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 11 (filtered medium)">
<style>
<!--
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman";}
a:link, span.MsoHyperlink
{color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{color:purple;
text-decoration:underline;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:Arial;
color:windowtext;}
@page Section1
{size:612.0pt 792.0pt;
margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.Section1
{page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=EN-US link=blue vlink=purple>
<div class=Section1>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Is it possible to get rtpproxy/nathelper to start a totally
new rtpproxy session on re-invite and not use the previous pair of ports on the
rtp proxy?<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>In this case:<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>A calls B behind nat. Sdp are rewritten to go though
rtpproxy on two ports. X & Y.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Some time goes by with conversation. Then the call chages
codec, line or something (not important). In this case B ua changes rtp port
locally also (incremented by 2). This is no problem. The re-invite is sent with
new port. But problem now is that rtpproxy sees this and updates the sdp as
always and it uses the previous X & Y port that was used on the rtpproxy
before re-invite.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>The problem now is this. Packets from B to A goes correctly
since A’s local rtp port was same both before and after re-invite. But
packets from A to B is arrivind on B’s local port for the first sdp
session, not the second… It seems that rtpproxy wont change \
this..<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>I assume this is a security measure for rtpproxy. But it
should have some function to force new session ports on rtpproxy by parameters
to force_rtpproxy() or something.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>As far as I can tell this is only a problem if the sip-ua is
changing local port.. I thought maby calling unforce_rtp_proxy() before forcing
rtp_proxy again would help, but don’t work. Probably because of some
internal working of nathelper…<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Anyone got an idea how to solve this? I would really appreciate
any input on this..<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>-<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Thomas<o:p></o:p></span></font></p>
</div>
</body>
</html>
_______________________________________________
Serusers mailing list
Serusers@lists.iptel.org
http://lists.iptel.org/mailman/listinfo/serusers
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic