Hi does anyone has a working example for this escenario?
thanks rafael
Hi rafael,
I might be wrong.. but it's REALLY hard to know if a user is behind the same nat.. due to that :
on sip-proxy you see that user Alice and Bob come from the same IP, and that they have the same "ip-range" in say contact.
you say "Oh, we see he's behind the same nat.." but..
you dont really know what other equitment the other user has behind his nat. Say a user has 3 routers router 1: 192.168.1.1 on "inside" 193.212.1.10 on "outside"
router 2: is conected to inside of router 1: 192.168.9.1 on "inside" 192.168.1.2 on "outside"
router 3: is concted to router 2's inside: 192.168.1.1 on "inside" 192.168.9.1 on "outside"
one phone is now connected to router 3, and one to router 1.
on router 3 the phone gets the "internal" ip: 192.168.1.2. on router 1 the phone gets the ip 192.168.1.3
the phone on router 1, can not send rtppackets to the phone on router 3.. and router 3, can not send to router 1.. evenwhilethey are "looking" to be behind the same nat.
- Atle
ps: if anybody has a working solutio for this, exept ice/turn/stun whatever it's now called.. fel free to update me :)
* Rafael J. Risco G.V. rafael.risco@gmail.com [070305 22:06]:
Hi does anyone has a working example for this escenario?
thanks rafael
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users
Atle is right, the only (really) reliable way (from server side) is manual configuration based on knowledge of the network setup for a group of users :-) The NAT optimization paper found as part of the What's New 2.0 on iptel.org shows how this can be accomplished through the use of a realm attribute per account. g-)
Atle Samuelsen wrote:
Hi rafael,
I might be wrong.. but it's REALLY hard to know if a user is behind the same nat.. due to that :
on sip-proxy you see that user Alice and Bob come from the same IP, and that they have the same "ip-range" in say contact.
you say "Oh, we see he's behind the same nat.." but..
you dont really know what other equitment the other user has behind his nat. Say a user has 3 routers router 1: 192.168.1.1 on "inside" 193.212.1.10 on "outside"
router 2: is conected to inside of router 1: 192.168.9.1 on "inside" 192.168.1.2 on "outside"
router 3: is concted to router 2's inside: 192.168.1.1 on "inside" 192.168.9.1 on "outside"
one phone is now connected to router 3, and one to router 1.
on router 3 the phone gets the "internal" ip: 192.168.1.2. on router 1 the phone gets the ip 192.168.1.3
the phone on router 1, can not send rtppackets to the phone on router 3.. and router 3, can not send to router 1.. evenwhilethey are "looking" to be behind the same nat.
- Atle
ps: if anybody has a working solutio for this, exept ice/turn/stun whatever it's now called.. fel free to update me :)
- Rafael J. Risco G.V. rafael.risco@gmail.com [070305 22:06]:
Hi does anyone has a working example for this escenario?
thanks rafael
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users
Serusers mailing list Serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
I just add, try to look at http://www.iptel.org/ser/howtos/optimizing_the_use_of_rtp_proxy
Feel free to give me any feedback about the document. It is based on SER Ottendorf.
Lada
Atle Samuelsen wrote:
Hi rafael,
I might be wrong.. but it's REALLY hard to know if a user is behind the same nat.. due to that :
on sip-proxy you see that user Alice and Bob come from the same IP, and that they have the same "ip-range" in say contact.
you say "Oh, we see he's behind the same nat.." but..
you dont really know what other equitment the other user has behind his nat. Say a user has 3 routers router 1: 192.168.1.1 on "inside" 193.212.1.10 on "outside"
router 2: is conected to inside of router 1: 192.168.9.1 on "inside" 192.168.1.2 on "outside"
router 3: is concted to router 2's inside: 192.168.1.1 on "inside" 192.168.9.1 on "outside"
one phone is now connected to router 3, and one to router 1.
on router 3 the phone gets the "internal" ip: 192.168.1.2. on router 1 the phone gets the ip 192.168.1.3
the phone on router 1, can not send rtppackets to the phone on router 3.. and router 3, can not send to router 1.. evenwhilethey are "looking" to be behind the same nat.
- Atle
ps: if anybody has a working solutio for this, exept ice/turn/stun whatever it's now called.. fel free to update me :)
- Rafael J. Risco G.V. rafael.risco@gmail.com [070305 22:06]:
Hi does anyone has a working example for this escenario?
thanks rafael
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users
Serusers mailing list Serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
Hi Lada
I found your document about optimizing RTP proxy really useful! thanks a lot.
my comment is that storing preferences per user about the network topology is not very scalable. Also the user preference is stored per user account, and not per location. you might have one user with two UAs, one behind NAT and the other on the public internet
also can I ask that you update the sample ser.cfg to be more aligned to the default ser.cfg from CVS, with the same named routes etc? I found it very hard to "port" the RTPproxy ser.cfg into the default ser.cfg ..
thanks!
/alfred
Ladislav Andel wrote:
I just add, try to look at http://www.iptel.org/ser/howtos/optimizing_the_use_of_rtp_proxy
Feel free to give me any feedback about the document. It is based on SER Ottendorf.
Lada
Atle Samuelsen wrote:
Hi rafael,
I might be wrong.. but it's REALLY hard to know if a user is behind the same nat.. due to that : on sip-proxy you see that user Alice and Bob come from the same IP, and that they have the same "ip-range" in say contact. you say "Oh, we see he's behind the same nat.." but..
you dont really know what other equitment the other user has behind his nat. Say a user has 3 routers router 1: 192.168.1.1 on "inside" 193.212.1.10 on "outside"
router 2: is conected to inside of router 1: 192.168.9.1 on "inside" 192.168.1.2 on "outside"
router 3: is concted to router 2's inside: 192.168.1.1 on "inside" 192.168.9.1 on "outside"
one phone is now connected to router 3, and one to router 1.
on router 3 the phone gets the "internal" ip: 192.168.1.2. on router 1 the phone gets the ip 192.168.1.3
the phone on router 1, can not send rtppackets to the phone on router 3.. and router 3, can not send to router 1.. evenwhilethey are "looking" to be behind the same nat.
- Atle
ps: if anybody has a working solutio for this, exept ice/turn/stun whatever it's now called.. fel free to update me :)
- Rafael J. Risco G.V. rafael.risco@gmail.com [070305 22:06]:
Hi does anyone has a working example for this escenario?
thanks rafael
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users
Serusers mailing list Serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
Serusers mailing list Serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
Alfred E. Heggestad wrote:
Hi Lada
I found your document about optimizing RTP proxy really useful! thanks a lot.
thanks :)
my comment is that storing preferences per user about the network topology is not very scalable.
Could you describe this in more details? User can define the name of his realm and other described features at his user preferences in Serweb. It is on my todo list for next revision to describe the way of configuring serweb where user will be able define those AVPs. They are stored through attr_types table in SER DB.
Also the user preference is stored per user account, and not per location. you might have one user with two UAs, one behind NAT and the other on the public internet
This is a quite problem how to distinguish two SIP phones at different network location. I have focused on this before and couldn't find the way of separating 2 SIP phones with the same username. If someone has a suggestion, it is more then welcomed and I will be happy to include it in the document.
also can I ask that you update the sample ser.cfg to be more aligned to the default ser.cfg from CVS, with the same named routes etc? I found it very hard to "port" the RTPproxy ser.cfg into the default ser.cfg ..
thanks!
This is also in the todo list and currently I'm updating the document.
Lada
/alfred
Ladislav Andel wrote:
I just add, try to look at http://www.iptel.org/ser/howtos/optimizing_the_use_of_rtp_proxy
Feel free to give me any feedback about the document. It is based on SER Ottendorf.
Lada
Atle Samuelsen wrote:
Hi rafael,
I might be wrong.. but it's REALLY hard to know if a user is behind the same nat.. due to that : on sip-proxy you see that user Alice and Bob come from the same IP, and that they have the same "ip-range" in say contact. you say "Oh, we see he's behind the same nat.." but..
you dont really know what other equitment the other user has behind his nat. Say a user has 3 routers router 1: 192.168.1.1 on "inside" 193.212.1.10 on "outside"
router 2: is conected to inside of router 1: 192.168.9.1 on "inside" 192.168.1.2 on "outside"
router 3: is concted to router 2's inside: 192.168.1.1 on "inside" 192.168.9.1 on "outside"
one phone is now connected to router 3, and one to router 1.
on router 3 the phone gets the "internal" ip: 192.168.1.2. on router 1 the phone gets the ip 192.168.1.3
the phone on router 1, can not send rtppackets to the phone on router 3.. and router 3, can not send to router 1.. evenwhilethey are "looking" to be behind the same nat.
- Atle
ps: if anybody has a working solutio for this, exept ice/turn/stun whatever it's now called.. fel free to update me :)
- Rafael J. Risco G.V. rafael.risco@gmail.com [070305 22:06]:
Hi does anyone has a working example for this escenario?
thanks rafael
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users
Serusers mailing list Serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
Serusers mailing list Serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
Rafael J. Risco G.V. wrote:
Hi does anyone has a working example for this escenario?
I am working on this same situation.
I can make it work if I define a specific URI length/prefix to always be treated as 'local' - meaning we don't want to 'fix' the SDP for say all 3 digit 'extensions'
I call resetflag(6) (i am using 6 for my NAT detection flag) for those URIs i don't want to use the mediaproxy (i use mediaproxy)
This situation will only work if there is a SINGLE layer of NAT at the 'customer' premise. If there is more than one NAT behind the same public IP this may (will not) work.
In my route block I do
...
if (uri =~ "^sip:[0-9]{3}@.*") { resetflag(6); resetflag(7); }
...
lookup('location');
...
# If NAT is previously detected, proxy if (isflagset(6) || isflagset(7)) { use_media_proxy(); }; route(1);
} // End route
Then:
onreply_route[1] { if ((isflagset(6) || isflagset(7)) && (status=~"(180)|(183)|2[0-9][0-9]")) { if (!search("^Content-Length:\ +0")) { use_media_proxy(); }; }; if (client_nat_test("1")) { fix_nated_contact(); }; }
Jeremy McNamara