Am 02.06.2010 10:46, schrieb Klaus Darilion:
Am 01.06.2010 22:08, schrieb Daniel-Constantin Mierla:
On 6/1/10 10:02 PM, Klaus Darilion wrote:
Daniel-Constantin Mierla wrote:
On 6/1/10 9:07 PM, Alex Balashov wrote:
No, it'll store the fixed one, in the proper contact column, not the received column. I do this all the time, even though it's not the "proper" way.
should be the original one with the last version, afaik. There were issues with phones accepting calls which had a different uri than the address they set in contact of register.
So, the contact details were brocken in:
- contact - the address from header
- received - built from source ip and port
- socket - local socket where the register was received
Note that there are two functions, fix_nated_contact() and fix_nated_registrar().
I know. I always use fix_nated_register. I just wonder why save() saves the fixed contact in case of fix_nated_contact(), because usually we have the problem that changes to the message are only visible when the message is forwarded (lumps are applied)
but are you sure the fixed contact is saved? I quick look in the registrar code seems to take the contact from headers, which are pointing inside original message.
I just tested with kamailio 3.0 and you are right. Yesterday I tested with ser 0.9.? and fix_nated_contact() seemed to save the rewritten contact header - strange.
I have to correct myself - I made an error during the test. Kamailio 3.0 with fix_nated_contact() saves the fixed contact URI (see below).
regards Klaus
U 2010/06/02 10:54:44.731304 83.136.33.3:46772 -> 83.136.32.159:5060 REGISTER sip:labs.nic.at SIP/2.0 Via: SIP/2.0/UDP 10.10.0.51:46772;branch=z9hG4bK-d8754z-5232d81c6b5f615a-1---d8754z-;rport Max-Forwards: 70 Contact: sip:klaus.darilion@10.10.0.51:46772;rinstance=cdb12231d83fce68;transport=udp To: sip:klaus.darilion@labs.nic.at From: sip:klaus.darilion@labs.nic.at;tag=59004f11 Call-ID: NzE5Yjg0YTllNTFkNGIyZDA1N2NlY2I3ODllMmMzZTM. CSeq: 2 REGISTER Expires: 3600 Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO Content-Length: 0
U 2010/06/02 10:54:44.731304 83.136.32.159:5060 -> 83.136.33.3:46772 SIP/2.0 200 OK Via: SIP/2.0/UDP 10.10.0.51:46772;branch=z9hG4bK-d8754z-5232d81c6b5f615a-1---d8754z-;rport=46772;received=83.136.33.3 To: sip:klaus.darilion@labs.nic.at;tag=5fcf32020f171aefa0445747f7988cba.e233 From: sip:klaus.darilion@labs.nic.at;tag=59004f11 Call-ID: NzE5Yjg0YTllNTFkNGIyZDA1N2NlY2I3ODllMmMzZTM. CSeq: 2 REGISTER Contact: sip:klaus.darilion@83.136.33.3:46772;rinstance=cdb12231d83fce68;expires=60 Server: kamailio (3.0.1 (i386/linux)) Content-Length: 0
# kamctl ul show Domain:: location table=512 records=1 max_slot=1 Contact:: sip:klaus.darilion@83.136.33.3:46772;rinstance=cdb12231d83fce68 Q= Expires:: 54 Callid:: NzE5Yjg0YTllNTFkNGIyZDA1N2NlY2I3OD Cseq:: 2 User-agent:: eyeBeam release 1102q stamp 51814 State:: CS_SYNC Flags:: 0 Cflag:: 64 Socket:: udp:83.136.32.159:5060 Methods:: 5087