lib/selection: improve IPv6 avoidance if broken + debug logs
- Jun 09, 2022
-
-
Vladimír Čunát authored
And that made the "NO6: is KO" line extraneous. Example in context: [select][14162.01] => id: '15271' choosing from addresses: 0 v4 + 1 v6; names to resolve: 6 v4 + 5 v6; force_resolve: 0; NO6: IPv6 is OK [select][14162.01] => id: '15271' choosing: 'ns1.p31.dynect.net.'@'2600:2000:2210::31#00053' with timeout 774 ms zone cut: 'amazon.com.' [select][14162.01] => id: '15271' updating: 'ns1.p31.dynect.net.'@'2600:2000:2210::31#00053' zone cut: 'amazon.com.' with rtt 316 to srtt: 311 and variance: 89
-
Vladimír Čunát authored
It was still possible to get into a deadlock here. https://forum.turris.cz/t/not-connecting-to-applications-like-discord/17111/7 If A records for a NS fell out of cache but AAAA remained, with probability 1-\epsilon we'd choose an AAAA address even if IPv6 was considered broken. I looked at *the whole* no6 strategy again, and I do think that there are no such holes anymore. A few percent attempts will still go over IPv6 even if it's considered broken, but that sounds OK-ish.
Verified83efd209
-