[Blink] Blink Ubuntu DNS lookup deadlock?
Tijmen de Mes
tijmen at ag-projects.com
Wed Nov 30 20:15:07 CET 2022
Hi
AFIAK you should always get that it ignores the CNAME. Why it sometimes behaves different I can’t tell. I run a test script here and I got it always, unless the lifetime of the resolver was reached. Then I got timeouts.
So it could be that you’re hitting a timeout or a lifecycle timeout of the resolver, but from remote I can’t really tell. For lookups dnspython is used.
To mitigate the issue, you could specify the port and proxy and it should just do an A lookup and not the NAPTR, SRV, A.
To do this, go to Server Settings in the SIP account and add an outbound proxy and port, where outbound proxy is guest1.voipgateway.org <http://guest1.voipgateway.org/> and the port 5060
Best regards,
Tijmen de Mes
—
AG Projects
> Op 30 nov. 2022, om 18:17 heeft g4-lisz at tonarchiv.ch het volgende geschreven:
>
> It's really strange, right now it's working but I don't know what has changed.
>
> Again I did some network sniffing on port 53 and it seems a bit random how Blink is reacting to the DNS replies: Sometimes it simply ignores the CNAME answer to the NAPTR and doesn't send a request for ws1.voipgateway.org. Sometimes it sends a NAPTR request for ws1.voipgateway.org...
>
> IMHO the same randomness decides if everything works or fails: If it interprets the NAPTR replies as "contains no answer", then the SRV requests are also sent and interpreted correctly.
> If the first request is mistakenly handled like a timeout, all the other requests are not sent and the whole process seems to block somewhere.
>
> Some timing issue in the DNS resolve threads?
>
> Cheers
> Till
>
> On 30.11.22 15:42, g4-lisz at tonarchiv.ch wrote:
>> Hi
>>
>> thank you for your replies.
>>
>> I'm a bit more familiar with DNS than with VOIP... If I get it right the NAPTR is optional and SIP should work without it.
>>
>> CNAME can always be a reply to a DNS lookup, it just means: The name you are looking for is an alias, i.e. guest1.voipgateway.org is a virtual domain. IMHO Blink does the right thing and sends a second request for ws1.voipgateway.org.
>>
>> But for ws1.voipgateway.org there's a NAPTR either. The SOA reply only means that this an authoritative answer.
>>
>> IMHO the problem comes with the second DNS reply which contains only a SOA. Blink seams not to handle this and runs into a timeout.
>>
>> Strangely enough the whole issue doesn't always appear and all works fine sometimes. Then I get the same log lines like Timen de Mes:
>>
>> 2022-11-30 15:35:49.340913 [blink 2]: DNS lookup NAPTR guest1.voipgateway.org failed: DNS response contains no answer
>> 2022-11-30 15:35:49.405083 [blink 2]: DNS lookup SRV _sip._udp.guest1.voipgateway.org failed: DNS record does not exist
>> 2022-11-30 15:35:49.463001 [blink 2]: DNS lookup SRV _sip._tcp.guest1.voipgateway.org failed: DNS record does not exist
>> 2022-11-30 15:35:59.932458 [blink 2]: DNS lookup SRV _sips._tcp.guest1.voipgateway.org failed: DNS record does not exist
>> 2022-11-30 15:35:59.960770 [blink 2]: DNS lookup A guest1.voipgateway.org succeeded, ttl=3600: 212.117.203.57
>>
>> Best regards
>> Till
>>
>> On 30.11.22 12:10, Adrian Georgescu wrote:
>>> $dig cname guest1.voipgateway.org
>>>
>>> ;; QUESTION SECTION:
>>> ;guest1.voipgateway.org. IN CNAME
>>>
>>> ;; ANSWER SECTION:
>>> guest1.voipgateway.org. 21600 IN CNAME ws1.voipgateway.org.
>>>
>>> The CNAME should not be there for the domain name.
>>>
>>> —
>>> Adrian
>>>
>>>
>>>
>>>
>>>> On 30 Nov 2022, at 07:15, Tijmen de Mes <tijmen at ag-projects.com> wrote:
>>>>
>>>> Hi,
>>>>
>>>> I looked at it a bit more and the fact that a CNAME is returned could happen.
>>>>
>>>> However in my Blink I can’t reproduce this fault, I used the domain guest1.voipgateway.org and I could register(?), if I made a call I got a prompt.
>>>>
>>>> This is how my logs look:
>>>>
>>>> 1 2022-11-30 10:59:46.901093 [blink 4977]: DNS lookup NAPTR guest1.voipgateway.org failed: DNS response contains no answer
>>>> 2 2022-11-30 10:59:46.901540 [blink 4977]: DNS lookup SRV _sips._tcp.guest1.voipgateway.org failed: DNS record does not exist
>>>> 3 2022-11-30 10:59:46.901950 [blink 4977]: DNS lookup SRV _sip._tcp.guest1.voipgateway.org failed: DNS record does not exist
>>>> 4 2022-11-30 10:59:46.902359 [blink 4977]: DNS lookup SRV _sip._udp.guest1.voipgateway.org failed: DNS record does not exist
>>>> 5 2022-11-30 10:59:46.902618 [blink 4977]: DNS lookup A guest1.voipgateway.org succeeded, ttl=2675: 212.117.203.57
>>>>
>>>> I don’t have the flatpack so I can’t tell you if something is wrong in there. The lookups are handled by python3-sipsimple.
>>>>
>>>> Best regards,
>>>>
>>>> Timen de Mes
>>>> —
>>>> AG Projects
>>>>
>>>>> Op 30 nov. 2022, om 10:35 heeft Tijmen de Mes <tijmen at ag-projects.com> het volgende geschreven:
>>>>>
>>>>> Hi,
>>>>>
>>>>> The fact that you see the timeouts could be a bug.
>>>>>
>>>>> The problem is that a NAPTR does exist and is a CNAME? I’ve never seen this and I am not sure this is even valid in DNS.
>>>>>
>>>>> AFAIK a NAPTR in this case should return something like:
>>>>>
>>>>> 20 100 "s" "SIP+D2U" "" _sip._udp.sip2sip.info.
>>>>> 10 100 "s" "SIP+D2T" "" _sip._tcp.sip2sip.info.
>>>>> 25 100 "s" "SIPS+D2T" "" _sips._tcp.sip2sip.info.
>>>>>
>>>>> After this a SRV lookup would be done.
>>>>>
>>>>> Are you able to register your account?
>>>>>
>>>>>
>>>>> Best regards,
>>>>>
>>>>> Tijmen de Mes
>>>>> —
>>>>> AG Projects
>>>>>
>>>>>> Op 29 nov. 2022, om 17:44 heeft g4-lisz at tonarchiv.ch het volgende geschreven:
>>>>>>
>>>>>> Hi there
>>>>>>
>>>>>> A few days ago I updated my OS to Pop! OS / Ubuntu 22.04 LTS with the Blink flatpack V5.5.0
>>>>>>
>>>>>> A few times it worked flawlessly, but most of the time, starting a call lags a lot and it simply fails with a beep after a few minutes without any further message.
>>>>>>
>>>>>> The logs shows issues with DNS:
>>>>>>
>>>>>> 2022-11-29 15:22:37.533993 [blink 2]: DNS lookup NAPTR guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>> 2022-11-29 15:22:37.534465 [blink 2]: DNS lookup SRV _sip._udp.guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>> 2022-11-29 15:22:37.534699 [blink 2]: DNS lookup SRV _sip._tcp.guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>> 2022-11-29 15:22:37.534909 [blink 2]: DNS lookup SRV _sips._tcp.guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>> 2022-11-29 15:22:37.535100 [blink 2]: DNS lookup A guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>> 2022-11-29 15:22:37.637499 [blink 2]: DNS lookup TXT xcap.guest1.voipgateway.org failed: DNS record does not exist
>>>>>> 2022-11-29 15:23:08.049049 [blink 2]: DNS lookup NAPTR guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>> 2022-11-29 15:23:08.049976 [blink 2]: DNS lookup SRV _sips._tcp.guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>> 2022-11-29 15:23:08.050817 [blink 2]: DNS lookup SRV _sip._tcp.guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>> 2022-11-29 15:23:08.051510 [blink 2]: DNS lookup SRV _sip._udp.guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>> 2022-11-29 15:23:08.052161 [blink 2]: DNS lookup A guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>> 2022-11-29 15:23:38.498519 [blink 2]: DNS lookup NAPTR guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>> 2022-11-29 15:23:38.498998 [blink 2]: DNS lookup SRV _sip._udp.guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>> 2022-11-29 15:23:38.499612 [blink 2]: DNS lookup SRV _sip._tcp.guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>> 2022-11-29 15:23:38.500547 [blink 2]: DNS lookup SRV _sips._tcp.guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>> 2022-11-29 15:23:38.501826 [blink 2]: DNS lookup A guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>> 2022-11-29 15:24:08.946267 [blink 2]: DNS lookup NAPTR guest1.voipgateway.org failed: no DNS response received, the query has timed out
>>>>>>
>>>>>> and so on.
>>>>>>
>>>>>> But in reality there are no DNS timeouts. IMHO the issue is that Blink doesn't handle the DNS answers right and then somehow deadlocks on the first NATPR request.
>>>>>>
>>>>>> I did some sniffing on port 53 and there are no DNS requests for SRV:
>>>>>>
>>>>>> 192.168.178.23 192.168.178.1 DNS 82 Standard query 0x1eab NAPTR guest1.voipgateway.org
>>>>>> 192.168.178.1 192.168.178.23 DNS 162 Standard query response 0x1eab NAPTR guest1.voipgateway.org CNAME ws1.voipgateway.org SOA ns1.backbone.ch
>>>>>> 192.168.178.23 192.168.178.1 DNS 79 Standard query 0x3a0b NAPTR ws1.voipgateway.org
>>>>>> 192.168.178.1 192.168.178.23 DNS 141 Standard query response 0x3a0b NAPTR ws1.voipgateway.org SOA ns1.backbone.ch
>>>>>> [ ..nothing concerning VOIP...]
>>>>>> 192.168.178.23 192.168.178.1 DNS 82 Standard query 0xb5c0 NAPTR guest1.voipgateway.org
>>>>>> 192.168.178.1 192.168.178.23 DNS 162 Standard query response 0xb5c0 NAPTR guest1.voipgateway.org CNAME ws1.voipgateway.org SOA ns1.backbone.ch
>>>>>> 192.168.178.23 192.168.178.1 DNS 79 Standard query 0x5cba NAPTR ws1.voipgateway.org
>>>>>> 192.168.178.1 192.168.178.23 DNS 141 Standard query response 0x5cba NAPTR ws1.voipgateway.org SOA ns1.backbone.ch
>>>>>> [ ..nothing concerning VOIP...]
>>>>>> 192.168.178.23 192.168.178.1 DNS 82 Standard query 0x63b5 NAPTR guest1.voipgateway.org
>>>>>> 192.168.178.1 192.168.178.23 DNS 162 Standard query response 0x63b5 NAPTR guest1.voipgateway.org CNAME ws1.voipgateway.org SOA ns1.backbone.ch
>>>>>> 192.168.178.23 192.168.178.1 DNS 79 Standard query 0x6dce NAPTR ws1.voipgateway.org
>>>>>>
>>>>>> The queries timeout occurs because Blink does not issue the requests. IMHO Blink does not handle the SOA replies and somehow deadlocks, so other requests are never sent.
>>>>>>
>>>>>> Instead it should simply return: NAPTR record does not exist. Go on...
>>>>>>
>>>>>> Cheers
>>>>>> Till
>>>>>>
>>>>>> _______________________________________________
>>>>>> Blink mailing list
>>>>>> Blink at lists.ag-projects.com
>>>>>> https://lists.ag-projects.com/mailman/listinfo/blink
>>>>> _______________________________________________
>>>>> Blink mailing list
>>>>> Blink at lists.ag-projects.com
>>>>> https://lists.ag-projects.com/mailman/listinfo/blink
>>>> _______________________________________________
>>>> Blink mailing list
>>>> Blink at lists.ag-projects.com
>>>> https://lists.ag-projects.com/mailman/listinfo/blink
>>>
>>> _______________________________________________
>>> Blink mailing list
>>> Blink at lists.ag-projects.com
>>> https://lists.ag-projects.com/mailman/listinfo/blink
>> _______________________________________________
>> Blink mailing list
>> Blink at lists.ag-projects.com
>> https://lists.ag-projects.com/mailman/listinfo/blink
> _______________________________________________
> Blink mailing list
> Blink at lists.ag-projects.com
> https://lists.ag-projects.com/mailman/listinfo/blink
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ag-projects.com/pipermail/blink/attachments/20221130/616870ab/attachment-0001.htm>
More information about the Blink
mailing list