Are you using a Sipura ATA?
If so turn off NAt masquering if you are using STUN,
Regards,
-----Mensagem original-----
De: users-bounces(a)openser.org [mailto:users-bounces@openser.org] Em nome de
Arek Bekiersz
Enviada: terça-feira, 21 de Março de 2006 20:51
Para: Bogdan-Andrei Iancu
Cc: Openser-Users
Assunto: Re: [Users] UA behind NAT puts public IP in Contact, Via - help
...and I answer myself.
Of course I don't need the Via value. It's not the private IP I want , but
obviously the received, public one. Come on, I was tired, sorry :-)))
For this UA I will try to solve the problem using AVP module, or I will
write some custom functions elsewhere. I just need to store real, public
(received) IP in 'location' table, together with NAT-ed flag. Could be done
either with appending Contact HF with received IP, by some clever avp
"store-retrieve" usage or otherwise.
--
Regards,
Arek Bekiersz
----- Original Message -----
From: "Arek Bekiersz" <arek(a)perceval.net>
To: "Bogdan-Andrei Iancu" <bogdan(a)voice-system.ro>
Cc: "Openser-Users" <users(a)openser.org>
Sent: Tuesday, March 21, 2006 8:03 PM
Subject: Re: [Users] UA behind NAT puts public IP in Contact, Via - help
Hi Bogdan,
I think it should be possible by some flag manipulation, with some help
from registrar module. I can:
1. Set NAT-ed flag (flag 1) on first REGISTER, that comes with private
IP in Via
2. If flag (1) is set, store "temporary" registration in "location"
table, with flag (let's say flag 10)
3. challenge user
4. when second REGISTER comes (with public IP Via ,so there is no (1)
flag) check if UA is "already" in "location" table and the flag (10)
was
stored
5. If yes, set flag (1) (UA wanted to cheat us, he is NATed), answer
'200 OK' and store in "location" table, this time with flag (1)
6. Next actions will assume that user is NAT-ed, by checking (1) flag in
"location". He will also be pinged from SER. Pretty standard stuff.
However, the problem is there is no "Contact" in first REGISTER. So I
cannot store temporary entry in "location" database.. But the true
(private) IP of user is still in Via. So maybe I could append "Contact"
header field with IP value from Via. It would allow me to store this
"temporary" registration.
QUESTION: Do we have any access to Via value from ser.cfg, to append
Contact HF with Via value? And not the topmost, but the last Via, as
this will probably contain true private IP of UA?
Help!!!
I don't want to write another custom module or database for this stupid
UA. In fact last year I had to write custom module for SDP manipulation.
It was impossible to set codec preference in the SAME vendor's devices.
I had preferred system codec and I had to force it using brute force...
works until today...
--
Regards,
Arek Bekiersz
Bogdan-Andrei Iancu wrote:
> it's not about RFC compliance here, but about making it work, about the
> logic used to detect and traverse NATS , things that are not specified
> by RFC.
> I guess it should be reasonable from them to accept to make this auto
> NAT detection configurable in order to disable it.
> alternative solutions will be (1) to consider all these UAC as nated -
> by looking at UA hdr- or (2) to try to remember the NAT flag from the
> non-authenticated REGISTER until the auth-ed one - the first
> (challenged) register will reveal the true status of the clients (nated
> or not) as it's also used by client for nat detection....but I guess it
> will be quite complicated
_______________________________________________
Users mailing list
Users(a)openser.org
http://openser.org/cgi-bin/mailman/listinfo/users