Accès GitLab en IPv6

Bizarre, je ne peux plus me connecter à un dépôt avec l’url qui commence avec git@.
Par exemple git@git.duniter.org:libs/g1lib.js.git ne passe pas. Quand je fais un git pull, rien ne se passe. J’ai attendu plusieurs minutes avant de tuer (ctrl+c) la commande :confused:
J’ai essayé avec plusieurs dépôts, et même symptôme.
En changeant le remote origin par https://git.duniter.org/libs/g1lib.js.git, ça marche.

Ça vient de moi ou vous avez le même problème ?

Faites un git remote show origin pour connaître l’url de vos dépôts.

Pas de problèmes à cloner via ssh pour ma part :

git clone git@git.duniter.org:libs/g1lib.js.git
Cloning into 'g1lib.js'...
remote: Enumerating objects: 425, done.
remote: Counting objects: 100% (8/8), done.
remote: Compressing objects: 100% (7/7), done.
remote: Total 425 (delta 0), reused 8 (delta 0), pack-reused 417
Receiving objects: 100% (425/425), 484.94 KiB | 989.00 KiB/s, done.
Resolving deltas: 100% (259/259), done.

date
Mi 23. Mär 08:18:20 CET 2022

@ManUtopiK : Peux-tu essayer la commande suivante pour vérifier ton accès ssh au serveur ?

ssh git@git.duniter.org

Si ça fonctionne, tu dois avoir ce résultat :
image

Le failed est normal car on ne peut pas ouvrir de session avec l’utilisateur git.

Si ça ne fonctionne pas, tu as sûrement un problème de configuration de clef ssh. Tu peux commencer par vérifier qu’elle n’est pas expirée dans tes paramètres du gitlab.

Merci pour votre aide !
En fait j’ai récemment eu un https://frame.work et j’ai fait le grand saut de mac à manjaro/gnome. Trop content :slight_smile:
Du coup, j’ai juste copié mon dossier .ssh et ça avait l’air de fonctionner jusque là. github et les serveurs sur lesquels je travaille en ce moment fonctionnent.
J’ai 215 lignes dans le know_hosts, j’ai pas tout testé parce qu’il y en a je ne sais même plus ce que c’est. Mais tous les gitlabs (gitlab.com, framagit.org,…) ne fonctionnent plus. Les serveurs sur infomaniak et gandhi passent, mais pas sur ovh !? Quand je teste sur le mac, ça marche toujours… :confused:

J’ai essayé en enlevant la ligne contenant git.duniter.org, mais ça ne change rien.
Ma clé ssh sur gitlab n’est pas expirée.

En fait, ça passe mais après 2 min !?
En mode verbose level 3 ; ssh -vvv git@git.duniter.org ; il y a ça dans les logs :

debug1: Connecting to git.duniter.org [2001:41d0:1:a354::1] port 22.
debug3: set_sock_tos: set socket 3 IPV6_TCLASS 0x48
debug1: connect to address 2001:41d0:1:a354::1 port 22: Connection timed out
debug1: Connecting to git.duniter.org [91.121.108.84] port 22.
debug3: set_sock_tos: set socket 3 IP_TOS 0x48
debug1: Connection established.

Il bloque 2 min sur la ligne 2, puis ça passe.
On dirait qu’il n’aime pas l’IPV6.
Une idée ?

J’ai trouvé une solution mais je pige pas !
Si je désactive le pare-feu de ma livebox, ça marche.
Si je réactive le pare-feu, ça marche depuis le mac, mais pas depuis linux :confused:
Je dois avoir un problème dans mon /etc/hosts parce que ça marche pour toutes les connexions ssh avec une IP, et ne marche pas avec un domaine.

Dans ce cas c’est plutôt du côté du /etc/resolv.conf que tu dois avoir un soucis.
Mets nous son contenu, commente le et remplace le par ça pour voir:

nameserver 8.8.8.8
nameserver 8.8.4.4

Enregistre les changements et réessaie ton ssh avec domaine.

Mon fichier resolv.conf :

# Generated by NetworkManager
search home
nameserver 192.168.1.1
nameserver fe80::f282:61ff:fee2:d0d2%enp0s13f0u1u1
nameserver 2a01:cb19:90f7:6d00:f282:61ff:fee2:d0d2

J’ai commenté les lignes, mis les DNS de google et fait un sudo systemctl restart NetworkManager, mais toujours le même problème :confused:

Pour info, le status de NetworkManager me retourne ça :

NetworkManager.service - Network Manager
     Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: disabled)
    Drop-In: /usr/lib/systemd/system/NetworkManager.service.d
             └─NetworkManager-ovs.conf
     Active: active (running) since Thu 2022-03-24 09:59:13 CET; 50s ago
       Docs: man:NetworkManager(8)
   Main PID: 112925 (NetworkManager)
      Tasks: 3 (limit: 38238)
     Memory: 4.3M
        CPU: 76ms
     CGroup: /system.slice/NetworkManager.service
             └─112925 /usr/bin/NetworkManager --no-daemon

mars 24 09:59:13 manu-framework NetworkManager[112925]: <info>  [1648112353.7183] device (enp0s13f0u1u1): Activation: successful, device activated.
mars 24 09:59:13 manu-framework NetworkManager[112925]: <info>  [1648112353.7353] manager: NetworkManager state is now CONNECTED_GLOBAL
mars 24 09:59:13 manu-framework NetworkManager[112925]: <info>  [1648112353.8603] dhcp6 (enp0s13f0u1u1): activation: beginning transaction (timeout in 45 seconds)
mars 24 09:59:13 manu-framework NetworkManager[112925]: <info>  [1648112353.8607] policy: set 'Connexion filaire 1' (enp0s13f0u1u1) as default for IPv6 routing and DNS
mars 24 09:59:13 manu-framework NetworkManager[112925]: <info>  [1648112353.8745] dhcp6 (enp0s13f0u1u1): state changed new lease
mars 24 09:59:15 manu-framework NetworkManager[112925]: <info>  [1648112355.6723] device (docker0): state change: ip-config -> ip-check (reason 'none', sys-iface-state: 'assume')
mars 24 09:59:15 manu-framework NetworkManager[112925]: <info>  [1648112355.6738] device (docker0): state change: ip-check -> secondaries (reason 'none', sys-iface-state: 'assume')
mars 24 09:59:15 manu-framework NetworkManager[112925]: <info>  [1648112355.6739] device (docker0): state change: secondaries -> activated (reason 'none', sys-iface-state: 'assume')
mars 24 09:59:15 manu-framework NetworkManager[112925]: <info>  [1648112355.6742] device (docker0): Activation: successful, device activated.
mars 24 09:59:19 manu-framework NetworkManager[112925]: <info>  [1648112359.6591] manager: startup complete

Bonne journée !