[SR-Users] kamailio 4.4.4 fills IPv6 contact address when sending packet over IPv4

Henning Westerholt hw at skalatan.de
Fri Jul 19 09:58:32 CEST 2019


Hello Pali,

this is hard to say without more details. Unfortunately Kamailio 4.4 is 
already end of life. I would suggest that you try your cfg with a newer 
5.2 version (you can find debian and other OS repositories with updated 
packages on www.kamailio.org).

Cheers,

Henning

Am 18.07.19 um 10:57 schrieb Pali Rohár:
> So what affects content of the Contact header in NOTIFY packets? Is
> there any special option for it? And why is NOTIFY packets handled
> differently as other packets?
>
> On Friday 12 July 2019 10:00:57 Pali Rohár wrote:
>> My SIP client (really desktop linphone) sets IPv4 Contact address of my
>> internet connection. I looked at it.
>>
>> And those packets are between my SIP server and remote sip.linphone.org
>> server. I have nothing with sip.linphone.org server. Really kamailio 4.4
>> sets IPv6 Contact address in that header for outgoing NOTIFY packets.
>> And it does *not* happen for INVITE or MESSAGE packets. Only for NOTIFY.
>>
>> I really do not know why, therefore I'm asking.
>>
>> On Thursday 11 July 2019 23:46:40 Brandon Armstead wrote:
>>> Are you sure Linphone is not setting it?  Get a trace from client side, for
>>> some reason I’ve my doubts kamailio is defaulting to an ipv6 address.
>>>
>>> On Thu, Jul 11, 2019 at 11:42 PM Pali Rohár <pali.rohar at gmail.com> wrote:
>>>
>>>> Hi!
>>>>
>>>> I have not set pua_reginfo parameter. Should I set it? And if yes to
>>>> which value? There should be at least settings for packets outgoing via
>>>> IPv4 and another setting for packets outgoing via IPv6.
>>>>
>>>> On Thursday 11 July 2019 06:46:35 YASIN CANER wrote:
>>>>> Hello,
>>>>>
>>>>> did you try to set parameter server address?
>>>>>
>>>> http://kamailio.org/docs/modules/5.2.x/modules/pua_reginfo.html#idm1031504764
>>>>> pua_reginfo Module - kamailio.org<
>>>> http://kamailio.org/docs/modules/5.2.x/modules/pua_reginfo.html#idm1031504764
>>>>> Keeping different Servers in Sync regarding the location database Get
>>>> notified, when a user registers: A presence-server, which handles offline
>>>> message storage for an account, would get notified, when the user comes
>>>> online.
>>>>> kamailio.org
>>>>>
>>>>>
>>>>> Yasin CANER
>>>>>
>>>>> ________________________________
>>>>> From: sr-users <sr-users-bounces at lists.kamailio.org> on behalf of Pali
>>>> Rohár <pali.rohar at gmail.com>
>>>>> Sent: Wednesday, July 10, 2019 9:29 PM
>>>>> To: sr-users at lists.kamailio.org
>>>>> Subject: Re: [SR-Users] kamailio 4.4.4 fills IPv6 contact address when
>>>> sending packet over IPv4
>>>>> Hi! Do you have any idea why Kamailio fills incorrect address into
>>>>> Contact header? And how to avoid it?
>>>>>
>>>>> On Sunday 30 June 2019 23:11:22 Pali Rohár wrote:
>>>>>> Hi!
>>>>>>
>>>>>> I detected strange problem that sip.linphone.org refuse to accept
>>>>>> presence information re-transmitted by kamailio 4.4.4 server.
>>>>>>
>>>>>> I debug this problem with tcpdump and I found out that problem is in
>>>>>> kamailio which fills IPv6 address into UDP datagram and that datagram
>>>> is
>>>>>> sent via IPv4 socket to IPv4 address, to sip.linphone.org server. And
>>>>>> sip.linphone.org server does not have IPv6 connectivity, so correctly
>>>>>> return over IPv4 to sender just "400 Bad Contact Header" error.
>>>>>>
>>>>>> On my server is running kamailio 4.4.4 from Debian Stretch and I can
>>>>>> 100% reproduce this problem against public sip.linphone.org server.
>>>>>>
>>>>>> My server has both IPv4 and IPv6 connectivity and kamailio is listening
>>>>>> for both IPv4 and IPv6 connections.
>>>>>>
>>>>>> So why is kamailio sending IPv6 address over IPv4 and therefore makes
>>>> it
>>>>>> impossible to communicate with non-IPv6 enabled servers? Looks like a
>>>>>> problem with choosing default/correct socket for Contact header.
>>>>>>
>>>>>> And how to fix this problem? Can you help me? I would like to have
>>>>>> working interconnection with linphone servers.
>>>>>>
>>>>>> Just to note I'm seeing this problem only for presence information
>>>>>> packets. Other requests, like INVITE or MESSAGE seems to work.
>>>>>>
>>>>>> Below is relevant tcpdump output. Some parts were replaced by {VAR}.
>>>>>>
>>>>>> PS: I'm not subscribed to list, so please CC my address when sending
>>>>>> reply. Thank you!
>>>>>>
>>>>>>
>>>>>> 17:22:58.121719 IP (tos 0x10, ttl 64, id 21629, offset 0, flags
>>>> [none], proto UDP (17), length 1266)
>>>>>>      {MY_IPV4_ADDRESS}.5060 > 91.121.209.194.5060: [bad udp cksum
>>>> 0xa099 -> 0x9825!] SIP, length: 1238
>>>>>>          NOTIFY sip:{REMOTE_NAME}@{REMOTE_USER_IPV4_ADDRESS}:5060;registering_acc=sip_linphone_org
>>>> SIP/2.0
>>>>>>          Via: SIP/2.0/UDP
>>>> {MY_IPV4_ADDRESS};branch=z9hG4bK2b55.88f93c20000000000000000000000000.0
>>>>>>          To: <sip:{REMOTE_NAME}@sip.linphone.org>;tag=75559182
>>>>>>          From:
>>>> <sip:{MY_SIP_URI}>;tag=97d8e785fdf42bf9622a64c13c504961-2708
>>>>>>          CSeq: 2 NOTIFY
>>>>>>          Call-ID: 26cf9d5c019af2dc3302b770887bcc2e at 0:0:0:0:0:0:0:0
>>>>>>          Route: <sip:91.121.209.194:5060;lr>
>>>>>>          Content-Length: 597
>>>>>>          User-Agent: kamailio (4.4.4 (x86_64/linux))
>>>>>>          Max-Forwards: 70
>>>>>>          Event: presence
>>>>>>          Contact: <sip:{MY_IPV6_ADDRESS}:5060;transport=udp>
>>>>>>          Subscription-State: active;expires=3600
>>>>>>          Content-Type: application/pidf+xml
>>>>>>
>>>>>>          <?xml version="1.0" encoding="UTF-8"?>
>>>>>>          <presence xmlns="urn:ietf:params:xml:ns:pidf"
>>>> xmlns:dm="urn:ietf:params:xml:ns:pidf:data-model"
>>>> xmlns:rpid="urn:ietf:params:xml:ns:pidf:rpid" entity="Pali
>>>> <sip:{MY_SIP_URI}>">
>>>>>>          <tuple id="sg89ae">
>>>>>>          <status><basic>open</basic></status>
>>>>>>          <contact priority="0.8">Pali <sip:{MY_SIP_URI}></contact>
>>>>>>          </tuple>
>>>>>>
>>>>>>            <tuple xmlns="urn:ietf:params:xml:ns:pidf" id="TA0C538B2">
>>>>>>              <status>
>>>>>>                <basic>closed</basic>
>>>>>>              </status>
>>>>>>              <contact priority="1">sip:{MY_SIP_URI}</contact>
>>>>>>              <timestamp>2019-04-19T17:20:36+02:00</timestamp>
>>>>>>            </tuple>
>>>>>>          </presence>
>>>>>>
>>>>>> 17:22:58.151188 IP (tos 0x0, ttl 52, id 22949, offset 0, flags [none],
>>>> proto UDP (17), length 373)
>>>>>>      91.121.209.194.5060 > {MY_IPV4_ADDRESS}.5060: [udp sum ok] SIP,
>>>> length: 345
>>>>>>          SIP/2.0 400 Bad Contact Header
>>>>>>          Via: SIP/2.0/UDP
>>>> {MY_IPV4_ADDRESS};branch=z9hG4bK2b55.88f93c20000000000000000000000000.0;rport=5060
>>>>>>          From:
>>>> <sip:{MY_SIP_URI}>;tag=97d8e785fdf42bf9622a64c13c504961-2708
>>>>>>          To: <sip:{REMOTE_NAME}@sip.linphone.org>;tag=75559182
>>>>>>          Call-ID: 26cf9d5c019af2dc3302b770887bcc2e at 0:0:0:0:0:0:0:0
>>>>>>          CSeq: 2 NOTIFY
>>>>>>          Content-Length: 0
>>>>>>
>>>>>>
>>>> --
>>>> Pali Rohár
>>>> pali.rohar at gmail.com
>>>>
>>>> _______________________________________________
>>>> Kamailio (SER) - Users Mailing List
>>>> sr-users at lists.kamailio.org
>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>
-- 
Henning Westerholt - https://skalatan.de/blog/
Kamailio services - https://skalatan.de/services



More information about the sr-users mailing list