Réinitialiser la pile TCP/IP de Windows

L’ordinateur portable HP d’un membre de ma famille avait récupérer une erreur assez étrange. L’ordinateur arrivait sans problème à se connecter aux différents réseaux auxquels j’essayais de le connecter mais n’arrivait jamais à se connecter à internet.

Après quelques recherches et des tests en tout genre (Désactivation des cartes, réinstallation des pilotes, …) j’ai fini par utiliser la commande :

ipconfig /all

pour voir quelles étaient les adresses attribuées. Je me suis alors rendu compte que Windows m’avait attribué une des adresses IP par défaut en 169.254.xxx.xxx (Plus d’informations sur le pourquoi celles ci dans la RFC 5735). J’ai testé le fait d’attribuer à l’une des cartes une IP fixe directement et là j’avais un accès normal au Web. J’ai ainsi déterminé avec certitude que le problème venait de la connexion avec le serveur DHCP (Ici ma Freebox) et que le problème venait de l’ordinateur puisque se connecter sur un autre routeur ramenait aux mêmes résultats.

Après quelques recherches, j’ai trouvé que ce problème survenait souvent à cause d’un bug de la pile TCP/IP. Pour le corriger, il suffit de la réinitialiser à l’aide de la commande :

netsh interface ipv4 reset c:\log.txt

ou plus globalement

netsh int ip reset c:\log.txt

Après avoir remis à 0 le stack TCP/IP et rebooté, tout était fonctionnel de nouveau.

Fixer une adresse IP manuellement sous Linux

Pour fixer une adresse IP sous Linux, il suffit de modifier le fichier /etc/network/interfaces.

Ce fichier contient les configurations des différentes interfaces réseau de la machine. Il suffit de créer des lignes selon ce format pour avoir une interface dont l’IP (v4) sera fixée :

iface <NOM_DE_L_INTERFACE> inet static
address <ADRESSE_IP_QUE_L_ON_VEUT_FIXER>
netmask <MASQUE_DE_SOUS_RÉSEAU>
getway <ADRESSE_DE_LA_PASSERELLE_PAR_DEFAUT>

Pour la repasser en IP dynamique, il suffit de remplacer ces lignes par :

iface <NOM_DE_L_INTERFACE> inet dhcp