Atelier wifi n°2 : VLANS et DHCPv6 (27/03/2014) ============================================== *Dans [notre épisode précédent](http://wiki.faimaison.net/doku.php?id=projet:wifi:ateliers:1_pont_bridge_et_routage_ipv6), nous interconnections une [babasse](http://jargonf.org/wiki/babasse) à [l'internet v6](http://fr.wikipedia.org/wiki/IPv6) (wa-hou) à travers un pont wifi constitué de 2 nanostation M5 à travers un réseau de niveau 2 entre la babasse « cliente » et le routeur.* L'objectif de second atelier est de fournir une authentification (faible…) et une isolation des abonnés en utilisant des VLAN. Le principe est simple : **chaque adhérent est dans un VLAN numéroté**. Le préssuposé est que chaque abonné est derrière une antenne qui lui est propre dans le réseau. Par ailleurs, un DHCPv6 tournant sur le routeur est censé attribuer **en fonction de son vhost** un préfixe /56 à chaque « routeur domestique » en faisant la demande. VLAN ----

            Sous responsabilité FAIMaison                      Sous responsabilité abonné
/------------------------------------------------------\ /-----------------------------------\

                                                                   +------------------------+
                                             +--------+      /-[U]-| Routeur « domestique » |
+---------+           +--------+          /--| NSM5#1 |------      +------------------------+
|         |           |        |  /--[1]--   +--------+
| Routeur |--[1]-[2]--| NSM5#0 |--
|         |           | #0     |  \--[2]--   +--------+
+---------+           +--------+          \--| NSM5#2 |-----\      +-------------------------+
                                             +--------+       -[U]-| Routeur « domestique »  |
                                                                   +-------------------------+

             ethernet             wifi                   ethernet

Légende * `NSM5#1` Nanostation M5 numéro 1 * `[U]` Paquets non tagués * `[1]` Paquets tagués "1" ### Configuration testée : Dans la configuration testée, nous n'avions que 2 NSM5, jouant le rôle respectif de NSM5#0 et NSM5#2. #### Sur le routeur (le routeur est une VM, dont l'*eth0* est bridgé sur l'interface de son hôte, lui-même relié à NSM5#0). Interfaces : * Interface eth0 reliée à *NSM5#0* * Interface eth0.2 (`vconfig add eth0 2`) #### Sur NSM5#0 * **eth0** reliée au routeur * **wlan0** associée avec *NSM5#2* * **eth0.2** interface taguée * **wlan0.2** interface taguée * **br1** bridge réunissant *eth0.2* et *wlan0.2* pour propager le VLAN 2 * **br0** bridge réunissant *eth1* et *wlan0* (pour administration/au cas où) #### Sur NSM5#2 * **eth0** reliée à un *laptop* * **wlan0** associée avec *NSM5#2* * **eth0.2** * **wlan0.2** * **br0** bridge réunissant *eth0* et *wlan0.2* * **br1** bridge réunissant *eth1* et *wlan0* (pour administration/au cas où) #### Sur le laptop Le laptop joue un rôle de routeur domestique (sans connaissance des VLAN donc). Son rôle se borne donc à être relié au eth0 de NSM5#1, et à être raccordé à internet via l'infra, et (pour ce qui concerne DHCPv6), à faire une requête pour obtenir une délégation de /56. ### Comportement attendu Une requête DHCPv6 part de *laptop* non taguée, arrive à *NSM5#2* qui la tague avec le VLAN `2` avant de la transmettre à *NSM5#0* qui la transmet taguée au *routeur* Le routeur transmet une réponse taguée `2` via *NSM5#0* , qui la transmet toujours taguée `2` à *NSM5#0* qui le remet au *laptop*. ### Comportement constaté (27/03/2014) Tests avec un `dhcpcd -6` côté *laptop*, et des commandes *tcpdump* pour diagnostiquer sur chacun des équipements. * Le paquet part bien non tagué de *laptop* * Le paquet est bient tagué en sortie de *NSM5#2* * Le paquet passe bien dans *br1* sur *NSM5#0* * Le paquet est bien reçu sur le *routeur* **mais il est non tagué** (pas de paquet de réponse envoyé donc) ### Choses apprises/déduites * La configuration sur *NSM5#2* semble bon * Bridger *eth0* et *wlan0* ne suffit pas à faire passer les paquets tagués de l'un à l'autre, seuls les paquets non tagués semblent passer par le bridge Commandes :
# Créer une interface taguée avec l'identifiant de VLAN 2
vconfig add eth0 2

# La détruire
vconfig rem eth0.2


# Filtrer par numéro de vlan avec tcpdump

tcpdump -ni eth0 vlan 2

### Points à éclaircir/pistes * Est-ce que vraiment les paquets arrivent non tagués sur le routeur, ou est-ce un [biais d'observation connu](http://serverfault.com/a/545637) ? * y-a-t-il un moyen plus simple que de faire un bridge par vlan (cf *br1* sur *NSM5#0*) pour switcher les vlans d'une interface à l'autre en préservant leur tag. * Est-ce que sur NSM5#1 la présence des interfaces non taguées (eth0, wlan0…) dans un second bridge ne rentrerait pas en conflit dans le packet switching ? * Essayer avec un setup « full-vlan » (pas de vlan par défaut) qui aurait le mérite d'être plus clair. ### Reste à traiter * Le setup du serveur DHCPv6 a été fait par lidstah, mais non testé en raison du problème constaté. Une question reste entière : **comment attribuer un /56 en fonction du VLAN ?**