Impact of missing IPv6 support on portstree (was: Re: Announcement: IPv6 promotion campaign)

Torsten Zuehlsdorff mailinglists at toco-domains.de
Wed Dec 16 14:04:45 UTC 2015


Hello,

after announcing the promotion campaign for IPv6

Short statistic about the impact of IPv6 availability on the ports-tree
=======================================================================

At 2015-12-14 there were 25.522 ports in the ports-tree.

The files for this ports were fetched from 5.344 different hosts.

Different subdomains (example: sub1.domain.tld and sub2.domain.tld) are 
considered as different hosts, because they normally are different server.

Of course a host can have multiple IPv4 and IPv6 addresses. If the DNS 
lists at least one IPv6 address for the server, its stated there is IPv6 
support. Same for IPv4.

When there is an IPv6 addresses i *assumed* IPv6 support. I did not 
fetch files or check for wrong configuration. The real support could be 
worse than stated.

Out of 5.344 hosts there are 3.925 hosts which have only an IPv4 address.
Out of 5.344 hosts there are 0 hosts which have only an IPv6 address.
Out of 5.344 hosts there are 359 hosts without resolvable DNS record. 
(The affected ports are all broken)

1.419 out of 5.344 hosts support IPv4 and IPv6.
Therefore 73.44 % of the hosts did not support IPv6.

To check if a port is available for IPv6 i excluded the 
distcache.freebsd.org host, because it is not part of the port. Its a 
fallback provided by the FreeBSD project.

Out of 25.522 ports there are 10.308 which are not fetchable via IPv6, 
rendering the ports unable to build.
This means that 40.38 % of the portstree are not buildable when having 
an IPv6 only connection.

But this is not the end. Ports have dependencies. LibreOffice for 
example is a big port with 277 dependencies at all. When building 
LibreOffice every dependency must be available, otherwise it could not 
be build. This means whenever a single port is not fetchable through 
IPv6 every other port depending at it is also not buildable.

When iterating through our 25.522 ports and do a "make all-depends-list" 
to get a list of all dependencies a single port has, we get a list of 
1.696.351 dependencies. Now back to the remaining  question "how many 
ports are not buildable because of missing IPv6 support of their 
distribution servers?".

Answer: 17.715.

In conclusion: if you having an IPv6 only machine, you could not build 
69.4 % of the ports.

This includes major ports like Firefox and Thunderbird, because 
releases.mozilla.org and ftp.mozilla.org does not support IPv6 - but 
mozilla.org itself does.
It includes also for example LibreOffice because some dependencies are 
not fetchable through IPv6.

And there is big number of Software which is not usable because 
GitHub.org, Rubygems.org, pecl.php.net and pear.php.net does not have 
IPv6 support. While the PHP related projects works on support, the other 
ones closed multiple requests without any feedback.

These are the TOP 25 missing IPv6 hosts with the number of ports 
rendered unfetchable by them (no dependencies included):

              host            | unfetchable_ports
----------------------------+-------------------
  pypi.python.org            |              2384
  codeload.github.com        |              1350
  production.cf.rubygems.org |              1212
  production.s3.rubygems.org |              1211
  hackage.haskell.org        |               484
  vault.centos.org           |               209
  mirror.centos.org          |               208
  gstreamer.freedesktop.org  |               157
  pecl.php.net               |               128
  pear.horde.org             |               119
  ftp.mozilla.org            |               117
  mirror.amdmi3.ru           |               106
  github.com                 |                71
  bitbucket.org              |                58
  download.gna.org           |                58
  launchpad.net              |                50
  launchpadlibrarian.net     |                46
  www.sourcefiles.org        |                40
  releases.mozilla.org       |                39
  cloud.github.com           |                34
  freebsd.unixfreunde.de     |                33
  people.freebsd.org         |                31
  www.python.org             |                30
  www.squirrelmail.org       |                30
  ftp.gnustep.org            |                30
(25 Zeilen)

Next steps
==========

In the next step a number of volunteers will contact the different 
projects and ask for IPv6 support. The reasons for the missing support a 
various - unawareness, no experience, missing technical infrastructure, etc.
We will support the projects individually; answering questions or even 
find a solution if there is no technical infrastructure for them. 
Hopefully we can promote IPv6 much more and make the missing support to 
an exception.

Greetings,
Torsten


More information about the freebsd-ports mailing list