Tester sa MTU sous Linux

Si la connexion VPN n’aboutit pas alors qu’un ping semble fonctionnel, l’une des causes (assez rare) peut être la MTU entre vous et le serveur (en espérant que vous ayez déjà réglé la MTU de l’interface qui vous sert à la connexion VPN à la valeur de 1300). Si votre équipement informatique est sur une box en France, ce cas ne devrait pas se présenter, mais avec un convertisseur 4G/wifi avec une connexion délicate cela peut arriver. Idem dans le TGV, par exemple.

Premièrement, et pour éviter d’autres erreurs, par exemple le fait que votre opérateur du moment ne permet pas à tous les protocoles de passer, faire le test suivant sur vpn20-2 (194.57.91.249) :

nc -uvz 194.57.91.249 500
nc -uvz 194.57.91.249 4500

Si les deux tests sont en succès, passons au test suivant pour voir si la MTU ne serait pas en cause.

traceroute --mtu 194.57.91.249
 1  * F=1500 * *

Cette commande doit/devrait vous retourner la MTU utilisable depuis là ou vous vous trouvez. Retenez la valeur indiquée (ici 1500).

Nous allons alors essayer de faire un ping sans fragmentation pour vérifier la valeur qui semble correcte.
La taille choisie, dans la commande ping, est la charge utile. La taille du paquet prend en compte l’encapsulation de 28 octets plus la charge utile (1472 ici).

1472+28 = 1500

ping -M do -s 1472 194.57.91.249

Si le résultat de la commande est avec des valeurs de temps (time=2.11ms) et sans erreur (ping: local error: message too long), c’est que la taille choisie est correcte :

PING 194.57.91.249 (194.57.91.249) 1472(1500) bytes of data.
1480 bytes from 194.57.91.249: icmp_seq=1 ttl=63 time=2.11 ms
1480 bytes from 194.57.91.249: icmp_seq=2 ttl=63 time=1.79 ms

Donc 1500 (1472+28) est bien la MTU de notre lien.

Pour pouvoir travailler sans problème avec la connexion VPN, il faut fixer la MTU de votre interface à la valeur 1500-200 = 1300

Tags: ,

Leave a Reply

You must be logged in to post a comment.