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

Pali Rohár pali.rohar at gmail.com
Thu Jul 11 09:32:03 CEST 2019


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



More information about the sr-users mailing list