Skip to content

Warn users when IPv6 is enabled but not routable

Currently, the automated installer may fail if the system has a configured IPv6 address that is not actually routable. This is common because Linux automatically assigns link-local IPv6 addresses by default. PHPs file_get_contents relies on the systems getaddrinfo to resolve hostnames, which typically returns IPv6 addresses first. If the IPv6 route is not reachable, this can lead to immediate connection failures.

We could implement a function that checks whether IPv6 is both configured and routable on the system. If it is configured but not routable, the script could warn the user, since attempting IPv6 connections could cause failures during installation like this:

[INFO] Installing phpMyAdmin
PHP Warning:  file_get_contents(https://www.phpmyadmin.net/home_page/version.txt): Failed to open stream: Network is unreachable in /tmp/ispconfig-ai/lib/os/class.ISPConfigDebianOS.inc.php on line 263
PHP Warning:  Undefined array key 0 in /tmp/ispconfig-ai/lib/os/class.ISPConfigDebianOS.inc.php on line 265
[ERROR] Exception occurred: ISPConfigOSException -> Command chown -R www-data:www-data '/var/lib/phpmyadmin' ; cd /tmp ; rm -f phpMyAdmin--all-languages.tar.gz ; wget https://files.phpmyadmin.net/phpMyAdmin//phpMyAdmin--all-languages.tar.gz 2>/dev/null && tar xfz  phpMyAdmin--all-languages.tar.gz && cp -a phpMyAdmin--all-languages/* /usr/share/phpmyadmin/ && rm -f phpMyAdmin--all-languages.tar.gz && rm -rf phpMyAdmin--all-languages failed. (/ispconfig.ai.php:15)
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information