[Serusers] rtpproxy for private networks without NAT and way outside

Jan Janak jan at iptel.org
Mon Nov 24 15:52:51 CET 2003


OK, the next step will be loading nathelper module and calling its
functions. An example configuration can be found in
sip_router/etc/nathelper.cfg

Basically, what you need to do is decide whether a message is targeted
inside your network or outside.

If it is suppose to go outside then you should call force_rtp_proxy()
and t_on_reply("1"); The first will rewrite IP in the SDP with IP
address of your RTP proxy (must be running on the same machine as ser).
The 2nd function will call onreply_route[1] block when a 200 OK comes to
rewrite SDP in 200 OK:

onreply_route[1] {
    force_rtp_proxy();
}

But to make this work, your RTP proxy must be listening on the public IP
(to make it reachable from outside), that means your internal clients
must be able to reach the public IP as well.

  Jan.

On 24-11 02:58, Gregory Sandul wrote:
> Thanks you Jan, and thanks to Klaus.
> I've used in my config
> mhomed=yes.
> Now SIP signaling messages work fine.
> But in the SDP body RTP IP address is not fixed,
> probably I need to use textopts.so module to fix SDP?
> 
> Regards,
> Greg.
> 
> --- Jan Janak <jan at iptel.org> wrote:
> > First of all I would recommend you to split your
> > setup in two parts and
> > test them separately. First of all make signalling
> > work (ignore
> > the contents of SDP) and make sure that you are able
> > to send INVITE and
> > receive responses either to local phones or
> > phones/proxies in the public
> > internet.
> > 
> > For that you will have to enable mhomed=yes and make
> > sure that you are
> > record routing all messages that go outside.
> > 
> > You need to make sure that Via and Record-Route of
> > outgoing messages contain thepublic IP (mhomed
> > should take care of it) of your server.
> > 
> > Speak up once you have signalling working and we can
> > continue with RTP
> > proxy setup.
> > 
> >   Jan.
> > 
> > On 24-11 00:21, Gregory Sandul wrote:
> > > Hi.
> > > Assume I have phones in private network
> > 10.0.0.0/24.
> > > There is no NAT server in this network, no default
> > > gateway, no way to outside world (except SER). The
> > > only server phones "know" about is SER. 
> > > SER has 2 NIC's one in 10.0.0.0/24 network ip
> > > 10.0.0.17 and other in "real" word 201.0.X.X/24.
> > There
> > > are some phones (or may be SIP servers) in "real"
> > > world. 
> > > I want to force rtpproxy for outside world and do
> > not
> > > for private networks.
> > > 
> > > I made some test and it fails.
> > > If I contact from private network to outside world
> > the
> > > Via message contains private SER ip 10.0.0.17 and
> > > phone which I need to contact does not know how to
> > > contact SER. Also contact in SDP message contains
> > > private ser IP 10.0.0.17 because I have forced
> > > rtpproxy.
> > > 
> > > As I understand, it it necessary to modify SDP and
> > SIP
> > > messages (contact and Via) in a config script
> > while
> > > processing requestst after forcing rtpproxy. 
> > > Is it possible? 
> > > May be I missed something, but I have not founded
> > such
> > > functions.
> > > 
> > > Regards,
> > > Greg.
> > > 
> > > 
> > > __________________________________
> > > Do you Yahoo!?
> > > Free Pop-Up Blocker - Get it now
> > > http://companion.yahoo.com/
> > > 
> > > _______________________________________________
> > > Serusers mailing list
> > > serusers at lists.iptel.org
> > > http://lists.iptel.org/mailman/listinfo/serusers
> 
> 
> __________________________________
> Do you Yahoo!?
> Free Pop-Up Blocker - Get it now
> http://companion.yahoo.com/
> 
> _______________________________________________
> Serusers mailing list
> serusers at lists.iptel.org
> http://lists.iptel.org/mailman/listinfo/serusers




More information about the sr-users mailing list