NetDiag+

Le handshake WireGuard échoue sur iOS mais pas sur les autres appareils

Même réseau, même fichier de configuration : le portable Linux et le téléphone Android se connectent instantanément, tandis que l’iPhone répète handshake did not complete. Passez ce même iPhone en 5G et le tunnel monte aussitôt. À ce stade presque tout le monde se jette sur le réglage MTU, et presque tout le monde y perd sa soirée : un handshake en échec ne peut pas être un problème de MTU.

Quoi tester, dans l’ordre

  1. Arrêtez de toucher à la MTU. L’initiation d’un handshake WireGuard fait 148 octets et la réponse 92. Cela tient dans toute MTU jamais déployée : rien n’est fragmenté. Un handshake qui n’aboutit jamais signifie que les paquets n’arrivent pas du tout. Remettez la MTU à 1420 et laissez-la.
  2. Vérifiez si l’UDP sort de l’appareil. Lancez une requête STUN sur le Wi-Fi fautif. Si elle répond, l’UDP sort et le problème est le port ou l’endpoint précis. Si elle expire ici mais répond en cellulaire, ce réseau filtre l’UDP pour cet appareil.
  3. Comparez ce que voient les deux appareils. Mettez l’IP, le masque, la passerelle et le DNS de l’iPhone à côté de ceux du portable. Un sous-réseau ou une passerelle différents signifient que le téléphone est tombé sur un VLAN invité, ou qu’un profil par appareil lui est appliqué sur le routeur — la restriction est là, pas dans votre configuration.
Télécharger sur l'App Store

Gratuit · 25 outils · achat unique pour retirer la publicité · sans abonnement

Les questions que l’on pose vraiment

Pourquoi ça marche en 5G et pas en Wi-Fi ?

C’est l’indice le plus utile dont vous disposez. Configuration identique, serveur identique, résultat différent : la variable est le réseau, pas le tunnel. Votre opérateur laisse passer le handshake, ce réseau Wi-Fi non.

J’ai essayé MTU 1280, 1200 et 1100. Rien n’a changé.

C’était prévisible. La MTU régit la taille des paquets transportés dans le tunnel, ce qui ne compte qu’une fois le tunnel établi. Avant la fin du handshake, il n’y a ni tunnel ni rien à fragmenter.

Le réseau pourrait-il bloquer le port UDP ?

C’est la cause unique la plus probable, surtout sur les réseaux d’hôtel, de campus, de bureau et certains partages de connexion. Essayez de déplacer le port d’écoute du serveur vers 443 ou 53 — le trafic y passe généralement, car bloquer ces ports casserait le web pour tout le monde.

Et Private Relay, limiter le suivi de l’adresse IP, l’adresse Wi-Fi privée ?

À désactiver le temps du test, mais rarement la cause. Ils changent l’adresse depuis laquelle vous apparaissez ; ils ne décident pas si un paquet UDP atteint votre endpoint.

Alors quand la MTU compte-t-elle vraiment pour WireGuard ?

Après le handshake. La signature : un tunnel qui monte sans problème puis bloque sur tout ce qui est volumineux — une page à moitié chargée, un transfert figé après quelques kilo-octets. Sur IPv4, la valeur habituelle est 1420.

Si votre tunnel monte puis bloque sur les gros transferts, là, c’est bien la MTU. Comment mesurer votre vraie Path MTU →