Installation d'applis en IPv6

Mon serveur YunoHost

Matériel: VPS Gandi avec une addresse IPv6 seulement
Version de YunoHost: https://install.yunohost.org/
J’ai accès à mon serveur : En SSH
Êtes-vous dans un contexte particulier ou avez-vous effectué des modificiations particulières sur votre instance ? : non

Description du problème

Bonjour !

Hier je suis tombé des nues en apprenant que github.com ne parle pas IPv6 :man_facepalming:
Je m’en suis rendu compte en essayant d’installer yunohost sur un vps de test avec le role ansible de sylvainar. Ce serveur n’avait pas d’adresse IPv4

Tout se passe bien jusqu’à l’étape d’installation de l’appli Nextcloud (la seule, dans mon test), qui échoue lors de la tentative de téléchargement du paquet à une adresse du type https://github.com/YunoHost/nextcloud_ynh/archive/xxx.zip. L’erreur est “Network unreachable”.
Sur un serveur avec une adresse IPv4, l’installation se finit sans problème.

Je me demande maintenant les moyens de contourner le problème (autre que acheter une IPv4 :)).
La doc de la commande yunohost dit que la commande yunohost app install peut recevoir un nom d’app ou une URL git. Est-ce vraiment n’importe quelle URL git (ssh://, git:// et https://) ou seulement https? Sur n’importe quel domaine ou seulement github? Je demande parce que je vois que dans le cas de nextcloud, la commande tente de télécharger une archive zip depuis github, et je me demande si cette fonctionnalité de téléchargement est nécessaire. Par exemple sur Gitlab le schéma de l’URL pour télécharger un zip est différente, et d’autres plateformes n’ont peut-être pas cette fonctionnalité.

En fonction des possiblités, je clonerai le dépot de l’appli à un endroit qui va bien.

Merci d’avance pour vos retours !

Par ailleurs, en cherchant si ce problème a déjà été mentionné, je suis tombé sur https://github.com/YunoHost/issues/issues/769. Est-ce encore d’actualité ? Je n’en suis pas complètement sûr car le VPS a été supprimé après le test, mais il me semble que l’installation du certificat s’est bien déroulé d’après ansible. Mais si toutes les commandes yunohost ne reportent pas les erreurs comme je l’ai mentionné ici, il se peut que le certificat ait aussi échoué.

Salut,

effectivement Yunohost n’est pas vraiment testé en IPv6-only et on avait pas connaissance de ce genre de soucis … Pour le coup je sais pas trop ce que Yunohost peut faire (à part râler que Github supporte pas l’IPv6 en 2020 et que c’est scandaleux).

Eventuellement tu pourrais obtenir une IPv4 via un VPN mais dans ce cas autant acheter une IPv4 via Gandi directement (mais l’objectif j’imagine c’était bien de dire "bof on est en 2020 après Jesus Christ, une IPv6 ça doit déjà permettre pas mal de truc donc bon)

Pour ce que Yunohost peut faire, ça dépend de la réponse à la question sur les URLs. Est-ce que ça va marcher si je lance yunhost app install https://framagit.com/bidule/nextcloud_ynh (après avoir créé un fork sur le Gitlab de framasoft)? Ou encore mieux: yunohost app install ssh://moi@monserveur.net/git/nextcloud_ynh ?

Si l’une ou les deux de ces options marchent, alors effectivement Yunohost n’a rien à faire de plus :slight_smile:

  • Oui pour l’install avec https:// depuis une forge qui supporte l’IPv6
  • A mon avis, non pour l’install en ssh:// même si ça pourrait être supporté
  • Tu peux aussi faire un “git clone” manuellement, puis yunohost app install /chemin/vers/le/dossier/local

Par contre je ne garanti pas qu’une app ait besoin d’aller chercher d’autres dépendances sur github (ça peut arriver) - mais pour Nextcloud ça devrait être ok

Nickel ! Je vais tester ça et vérifier aussi ce qui se passe aussi avec l’installation du certificat de domaine, comme ça on aura un topo de la situation en IPv6 only :slight_smile:

Une fois encore merci à tous les contributeurs pour tout le boulot autour de Yunohost !

Résultats mitigés !

Cela fonctionne de mettre une URL https vers un repo git hébergé sur un serveur qui parle IPv6 (j’ai utilisé framagit.org). Bien penser à utiliser l’option -f pour une utilisation non-interactive.

Par contre ta crainte @Aleks est avérée, y compris pour l’appli nextcloud. Son installation a échoué quand le script a cherché à récupérer yunohost.multimedia sur github.

Par ailleurs, l’installation des certificats Let’s Encrypt a aussi échoué, même en utilisant l’option --no-checks, à cause de l’absence d’entrée de type A dans la zone DNS du domaine.

Euh c’est bizarre, LE est censé géré IPv6 only. T’es sûr que ton domaine avait bien une entrée AAAA (et pas d’entrée A) ?
Par contre pas sûr que noho.st supporte ipv6only je pense.

Oui, j’accédais au serveur en SSH avec le nom de domaine.