Archive pour le mot-clef ‘windows’

Soucis de compatibilité windows / hostapd

dimanche 6 janvier 2008

Hostapd est un service unix permettant de gérer l’authentification et les échanges de clés pour les AP wifi softs. Celui ci est nécessaire pour les modes EAP et/ou WPA, car la carte réseau ne sais pas gérer les échanges de clé elle même.

Voulant utiliser WPA, je rencontrais jusqu’alors des déconnections intempestives. Il semblerais que le client ne reçoive pas / ne prennent pas en compte ou ne comprenne pas certains messages de mise à jour de clé.

Le problème peut être résolu en modifiant le paramètre eapol_version dans le fichier hostapd.conf.

Ce dernier porte par défaut la valeur 2. En le passant à 1, les soucis disparaissent.

Je poste cette « astuce » ici après avoir cherché sans comprendre pendant plusieurs mois. (mais avec l’EEE le wifi est vraiment indispensable). En espérant que cela puisse en aider d’autres.

Note : j’utilise une carte ralink RT2561 pour l’hostap. Le problème se manifeste indépendamment du mode choisi, dès lors qu’il y a changement de clé…

Si quelqu’un peu m’expliquer le pourquoi du comment, je suis preneur. Si vous savez ou me procurer les specs 802.1x, pareil.

Le 6to4, c’est bien, mais…

mercredi 29 mars 2006
… parfois, on aimerais que ca serve à quelque chose

En effet, pour se connecter à un site v4/v6, le système préfèrera par défaut utiliser IPv4. Normal, c’est sensé être plus rapide. Par contre, lorsque le but est de tester IPv6, c’est un peu plus gênant.

Lorsque la résolution de nom pose un problème de choix d’adresses source et destination, ce qui arrive souvent en IPv6, le système d’exploitation est sensé utiliser une table de politique de choix de préfixes (prefix policy). Sous windows, celle ci se présente de cette façon (table par défaut).

Precedence  Label  Prefix
----------  -----  --------------------------------
         5      5  3ffe:831f::/32
        10      4  ::ffff:0:0/96
        20      3  ::/96
        30      2  2002::/16
        40      1  ::/0
        50      0  ::1/128

A chaque préfixe dans la table est attribué un niveau de préférence, et un label. De manière générale, le choix se fait comme suit : On cherchera les couples sources/destination de même label, puis l’on utilisera le niveau de préférence pour les départager.

On remarque que dans la table par défaut de windows (elle est a peu près équivalente sur tout les systèmes utilisant une politique de préférence), on trouve :

  • le préfixe ::/96 , qui correspond aux adresses IPv4 mappées.
  • le préfixe ::FFFF:0:0/96, qui correspond a l’utilisation d’IPv4
  • le préfixe 2002::/16 qui est le préfixe 6to4

Ici, le label du préfixe 6to4 est différent du label du préfixe global ( ::/0 ), de ce fait, le système d’exploitation va préférer utiliser IPv4 quand c’est possible (les deux adresses IPv4 tombant sous le préfixe ::FFFF:0:0/96).

Pour pouvoir utiliser en priorité IPv6, il est nécessaire de modifier la table. On conservera une entrée distincte, pour le cas peu probable ou la destination aurait à la fois une adresse 6to4 et une adresse native. Il n’est pas nécessaire de conserver la première entrée de la table (préfixe 6bone) Correction : il s’agit du préfixe teredo, qu’il n’est pas conseillé d’utiliser, a garder dans la table, donc.

La modification s’effectue ainsi, dans une console :

C:\>netsh
netsh>interface ipv6
netsh interface ipv6>set prefix ::1/128 50 0
netsh interface ipv6>set prefix ::/0 40 1
netsh interface ipv6>set prefix 2002::/16 30 1
netsh interface ipv6>set prefix ::/96 20 3
netsh interface ipv6>set prefix ::ffff:0:0/96 10 4
netsh interface ipv6>set prefix 3ffe:831f::/32 5 5
netsh interface ipv6>show prefix
Querying active state...                           

Precedence  Label  Prefix
----------  -----  --------------------------------
        10      4  ::ffff:0:0/96
        20      3  ::/96
        30      1  2002::/16
        40      1  ::/0
        50      0  ::1/128

L’effet est immédiat. Ce qui peut-être vérifié en allant voir la tortue qui danse !