Bonjour,
je ne comprends pas quelque chose :
En gros, j'ai deux réseaux locaux isolés chacun ayant un serveur Ubuntu 10.04 posé dessus, chacun servant des baux DHCP et hébergeant un atftpd. Typiquement, coté install, je ne me suis pas pris la tête : apt-get install atftpd, ce qui créé un répertoire /srv/tftp dans lequel on peut mettre les fichiers en question. J'ai posé un petit fichier pour faire des tests (/srv/tftp/deleteme)
Je précise, je ne maitrise pas l'infra-réseau, mais je pense pour le moment qu'elle est hors de cause.
Pour effectuer mes tests, j'ai utilisé un Windows 7 32bits sur lequel j'ai posé Cygwin et notamment les paquets Curl et tftp (client). J'ai aussi Java dessus avec un petit programme qui fait client TFTP.
Avec ce laptop, lorsque je branche un câble Ethernet du réseau A
dans ma fenêtre Cygwin :
==> mis à part le warning curl que je ne comprends pas, c'est RAS. le fichier vient bien. j'ai testé avec le client tftp normal, idem RAS. Tout marche bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 $ curl tftp://10.155.101.72/deleteme Warning: Could not set SO_KEEPALIVE! chaque jour suffit sa peine c'est ainsi et c'est tout $
Sur le réseau B, lorsque je branche un câble Ethernet sur le laptop, dans Cygwin, ça donne :
==> bug ! le programme rend la main au bout d'un certain temps, le fichier ne vient jamais.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 $ curl tftp://100.10.10.16/deleteme Warning: Could not set SO_KEEPALIVE! $
j'ai essayé avec le client tftp ==> même comportement. (je précise les autres services, ssh / apache par exemple, fonctionnent comme attendu depuis ce win7)
À l'analyse wireshark, on voit que le client n'envoie jamais le paquet TFTP acknowledgment, le server continue a renvoyer périodiquement le 1er block de fichier (c'est-à-dire le fichier complet car il fait moins de 512 octets). J'ai viré le firewall de mon win7 (rien à voir mais on sait jamais), j'ai viré l'antivirus (idem).
Un collègue est venu avec son laptop Ubuntu 10.04, branche le même câble du réseau B, utilise les mêmes clients (en version native et pas Cygwin bien sûr) et tout se passe comme attendu.
Est-ce quelque chose dans ma conf' réseau sur Win7 bugue spécifiquement sur tftp avec réseau B ? Est-ce que la manière dont les baux DHCP sont envoyés par le serveur peut avoir pour effet qu'un client TFTP n'envoie jamais ses paquets ACK ?
Une remarque probablement hors sujet : le serveur diffuse massivement des requêtes ARP
Si quelqu'un a une idée, je suis preneur
Partager