Comment utiliser TFTP

Pour commencer, à quoi ça sert ?
Le TFTP est un type de transfert de données un peu particulier qui permet plusieurs choses.
Dans notre cas, il est utilisé pour remplacer le firmware d'un routeur.
La procédure est simple et ne prend que quelques minutes, mais il n'est pas très facile de trouver exactement quoi faire, alors nous allons vous l'expliquer.

Qu'est-ce que ça signifie au juste et comment ça fonctionne ?
Le terme TFTP signifie Trivial File Transfert Protocol. Vous connaissez peut-être le FTP, le TFTP est basé sur le même principe, mais en beaucoup plus bourrin sans authentification ou négociation requise.
Ceci implique, qu'avec cet outil, il est possible d'envoyer un fichier directement vers le routeur, sans que le routeur ne vérifie quoi que ce soit !!
Vous comprendrez bien qu'il est essentiel d'envoyer le bon fichier et pas n'importe quoi !
En effet, si vous envoyez le firmware d'une machine à laver dans votre routeur, celui ci... ne fera plus rien (non, il ne fera pas la lessive, désolé !)
Si par malheur vous commettez la faute d'envoyer le mauvais firmware, il est parfois possible de reflasher en insistant, et si ça ne fonctionne pas de passer par la solution du JTAG, qui nécessite un peu plus de matériel

Le principe d'utilisation
On se muni d'un ordinateur équipé d'une carte réseau, idéalement sous GNU/Linux ou assimilé mais ça fonctionne aussi avec Windows, d'un cable RJ45, d'un routeur à flasher, et du firmware que l'on désire injecter.
J'insiste une nouvelle fois sur l'importance d'injecter le firmware correspondant à votre matériel, sans quoi il risque de ne plus servir à rien !


La procédure et les précautions
Imprimez cette feuille pour commencer, parce que vous risquez de perdre le web selon la carte réseau que vous allez utiliser. Note : le TFTP ne fonctionne pas en wifi !
Identifiez votre matériel et récupérez le firmware qui correspond.
Vous pouvez par exemple aller sur la page des firmware Polaris de la fédération

Préparez votre routeur et son alimentation, mais ne l'allumez pas encore.
Assurez vous d'avoir un ordinateur qui ne risque pas de subir une coupure de courant ou de s'éteindre tout seul pour cause de surchauffe ! - Utilisez un onduleur ou un portable avec une batterie en bon état.
Connectez le cable RJ45 à votre routeur, habituellement sur le premier connecteur RJ45 disponible et noté LAN ou ETH, 0 ou 1.
Connectez le cable RJ45 (l'autre bout !) à votre carte réseau de l'ordinateur.
Passez à la suite selon votre Système d'Exploitation (et je vous invite à choisir GNU/Linux aujourd'hui, c'est plus facile)

Sous Linux
Vous allez devoir faire un petit peu de ligne de commande, mais rassurez-vous, c'est très simple.
Dans un premier temps, vous devez avoir l'outil tftp, utilisez votre méthode préférée pour l'installer (les utilisateurs debian ou *buntu pourront simplement taper aptitude install tftp)
Sauvegardez votre firmware à un endroit connu, pour exemple, le répertoire personnel de l'utilisateur toto
Ouvrez une console en tant qu'utilisateur (donc vous êtes toto !)
Tapez simplement cd ~ puis la touche entrée, cette commande vous place dans le répertoire de l'utilisateur en cours, donc, probablement dans /home/toto/
Tapez ensuite la commande tftp 192.168.1.1 - Note, si vous êtes connecté en wifi et que l'IP 192.168.1.1 existe déjà sur votre réseau, déconnectez vous, sinon ça foire !
Vous vous retrouvez à présent dans le programme tftp qui réagit comme une ligne de commande avec les lignes qui commencent par tftp>

Tapez les commandes, binary , trace , rexmt 1 , timeout 60 puis pour finir put nom_complet_du_fichier , ce qui devrait ressembler à :
tftp> binary
tftp> trace
tftp> rexmt 1
tftp> timeout 60
tftp> put Polaris0.2.1-g.bin

A ce moment, le programme TFTP tente de joindre 192.168.1.1, et dès qu'il le trouve, il envoie le fichier.
Allumez le routeur, et laissez faire, à la fin de la procédure, TFTP vous donnera un résultat de la taille du fichier envoyé et du temps que cela à pris.[[br] Tapez exit pour quitter tftp, puis encore une fois exit pour sortir de la ligne de commande si besoin.


Sous Windows (by Antibug)
Ouvrir une fenêtre de commande dos : Menu Démarrer ---> Exécuter ---> taper cmd --> appuyez sur la touche Entrée
Vous êtes dans une fenêtre DOS
Faire un ping sur le routeur avec la commande ping 192.168.1.1 -t
A ce moment, ping vous répondra que l'hôte n'est pas atteignable, laissez le tourner.
Ouvrir un seconde fenêtre de DOS (voir au dessus) et laissez la première visible
Aller dans le répertoire ou ce trouve le fichier du firmware
cd /répertoire_du_binaire
Taper la commande tftp -i 192.168.11.1 putnom_du_firmware mais n'appuyez pas sur la touche Entrée.
Brancher le votre routeur et allumez le.
Au 1er ping qui passe répond dans la première fenêtre DOS, validez la commande de la seconde avec la touche Entrée
Le transfert débute... patience


Fin de le procédure
Vous pouvez débrancher votre routeur, prendre une bière un rafraîchissement et ré-installer tout votre matériel. A cette occasion, c'est le moment de passer l'aspirateur derrière le PC si vous avez une tour ;)
Une fois que vous avez fini, vous pouvez jeter la feuille que vous avez imprimé, mais attention, dans le bac recyclage.