Mystérieusement, dès qu’une machine est branchée en Ethernet sur mon modem Zyxel VMG8924-B10D (fourni par OVH), mes copies de fichiers (plus grand que ~50ko) par scp ou sftp en réseau local se mettent à échouer au début du transfert (même si les machines communiquant sont en wi-fi!).
J’ai étudié plusieurs causes: câble Ethernet défectueux, problème matériel de mon odroid M1, valeur de MTU problématique, bug dans ssh… Pourtant, cela marche en IPv6 (!), le problème disparaît dès que toutes les machines sont en wi-fi), et cela marche également si j’utilise mon téléphone comme routeur. En regardant le traffic avec Wireshark, j’ai vu que la machine initiatrice finit par recevoir des paquets avec des checksums d’entêtes IP invalides (et une IP de destination de « 1.0.0.2 » au sein d’une connection TCP existante). L’autre machine se met à renvoyer les paquets (sûrement parce qu’ils ont été ignorés).
À force d’essais, je me suis rendu compte que brancher une machine en Ethernet suffit à causer le problème. Face à mon incrédulité et ma suspicion, je l’ai répété plusieurs fois avec des résultats constants.
Comme je n’ai pas vu de réglages ou de traces pour la couche IP dans ce modem, je me suis résolu à forcer dans « ~/.ssh/config » l’utilisation d’IPv6 pour cette machine, je doute d’avoir une vrai solution.
Host monserveur AddressFamily inet6