Hello,
Am 05/10/2018 um 11:30 schrieb KatolaZ:
> At the moment deb.devuan.org only works on IPv4 (only 'A' records, no
> 'AAAA' ones), and the checks are based on the IPv4 addresses in the
> round-robin pool...
>
> What is the issue about, exactly?
>
The issue is that using deb.devuan.org results in random fails under
very specific circumstances :-).
I had mistakenly taken the two IPv4 addresses as the same (checked wrong
terminal :-D) but that's not relevant to the point, everything else stands.
I thought the explanation was enough so here goes a more detailed one
with the very specific but not crazy circumstances:
* apt update works because this only fetches Packages.gz and that is
being checked automatically --> is properly set up on all mirrors
* apt install is excecuted, in this case with ncdu but it is valid for
anything that is not forked in devuan.
* apt tries to fetch the file using stored data like repo description
and the Filename entry for the package in question.
In this case: pool/DEBIAN/main/n/ncdu/ncdu_1.12-1+b1_amd64.deb
With hostname deb.devuan.org
* That results in fetching the package with a request being made to:
http://deb.devuan.org/merged/pool/DEBIAN/main/n/ncdu/ncdu_1.12-1+b1_amd64.deb
* OS tries to resolve deb.devuan.org which returns the list of IPs
* OS decides to use 195.85.215.180
* It contacts the IP with:
hostname deb.devuan.org
path /merged/pool/DEBIAN/main/n/ncdu/ncdu_1.12-1+b1_amd64.deb
* That means:
$ curl -I -H 'Host: deb.devuan.org'
http://195.85.215.180/merged/pool/DEBIAN/main/n/ncdu/ncdu_1.12-1+b1_amd64.deb
HTTP/1.1 302 Moved Temporarily
Server: nginx/1.6.2
Date: Fri, 05 Oct 2018 10:15:18 GMT
Content-Type: text/html
Content-Length: 160
Connection: keep-alive
Location:
http://debian.ipacct.com/debian/pool/main/n/ncdu/ncdu_1.12-1+b1_amd64.deb
* OS/apt follows 302, therefore resolving debian.ipacct.com
$ host debian.ipacct.com
debian.ipacct.com has address 195.85.215.251
debian.ipacct.com has IPv6 address 2a01:9e40::251
* OS contacts the listed IPv6 on port 80, which refuses the connection.
$ curl -I -6
http://debian.ipacct.com/merged/pool/DEBIAN/main/n/ncdu/ncdu_1.12-1+b1_amd64.deb
curl: (7) Failed to connect to debian.ipacct.com port 80: Connection refused
* apt install fails
As you can see, even if deb.devuan.org has only IPv4 entries, the fact
that Amprolla uses 302 redirects, means that IPv6 is added in the mix
and it must be checked for validity.
Also: why are we not listing any IPv6 entries in the RR? :-D I know of
at least 4 package mirrors supporting IPv6.
But that's not relevant, the fact is that we must check that the 302's
work fine with all involved IPs (whichever IP version they work with),
otherwise stuff like this can happen.
--
Evilham