De la haute dispo ?

Le titre est un peu accrocheur et t'a peut-être fait remplir une case de ton bullshit bingo, certes.

Mais du trunk failover est quand même de la "haute dispo".

Hein ? du trunk failover ?

man 4 trunk

trunk

 The trunk interface allows aggregation of multiple network interfaces as
 one virtual trunk interface.

failover

 failover     Sends and receives traffic only through the master port.  If
              the master port becomes unavailable, the next active port is
              used.  The first interface added is the master port; any
              interfaces added after that are used as failover devices.

mmmh, j'ai pas tout compris

aka le relou qui ne va pas me laisser m'en tirer juste en copiant/collant des bouts de la man page

Un trunk est une interface (virtuelle) qui va aggréger plusieurs interfaces. Un failover est un des modes de trunk.

 The driver currently supports the trunk protocols broadcast, failover,
 lacp, loadbalance, none, and roundrobin (the default).

Dans notre cas les autres modes ne sont pas utiles donc je n'en parlerai pas. Le failover, comme dit la man, consiste à lister des interfaces. Si lors de l'utilisation de cette liste d'interfaces, celle actuelle n'est plus active, on essaie la suivante et ainsi de suite tant qu'il y en a. Cela permet de redonder une interface (mais c'est la solution du pauvre, car le riche redonde toute la machine avec carp).

Tes explications ne sont que moyennement claires, concrètement ?

Concrètement, le but recheché c'est que si un cable ethernet est branché sur mon laptop celui-ci utilise l'interface filaire, sinon il utilise le wifi.

Concrètement si je fais la commande ifconfig trunk0 elle donne entre autre

$ ifconfig trunk0 
trunk0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        lladdr f0:de:f1:09:c7:94
        priority: 0
        trunk: trunkproto failover
                trunkport iwn0 
                trunkport em0 master,active
        groups: trunk egress

ou dans l'autre cas

$ ifconfig trunk0
trunk0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        lladdr f0:de:f1:09:c7:94
        priority: 0
        trunk: trunkproto failover
                trunkport iwn0 active
                trunkport em0 master
        groups: trunk egress

La seule différence entre les deux, c'est quelle interface qui est active, dans la première c'est em0 la filaire et dans la deuxième iwn0 mon wifi.

C'est bien rigolo mais si tu me racontais ta vie

Habituellement, en plus du clavier/souris et de l'écran de ma tour, j'ai mon laptop sur mon bureau (à défaut de faire du multi-écrans on fait du multi pc :p). Sauf que quand ma chérie est là faut que je vire le laptop parce que ce bureau est accessoirement ma table à manger. Et donc rapidement les cables ethernet sont ingérables et donc je passe en wifi. Sauf que c'est chiant, entre ma route ipv6 qui expire rapidement (tu veux les détails ? t'as qu'à lire misc@), les priorités des routes qui font que c'est plus simple de redémarrer le laptop pour tout nettoyer plutôt que de se prendre la tête avec les différentes commandes et le débit asthmatique en wifi.

Comme dit dans mon article à propos du wifi sur mon routeur, j'utilise une clé USB wifi et dont le débit est limité à 100ko/s en down (en up c'est l'inverse) et dont je n'ai jamais trouvé la cause.

J'ai vu récemment que dans la FAQ d'OpenBSD ils expliquent comment faire un trunk failover entre les interfaces filaire et wifi d'un laptop.

Sauf que, contrairement à ce que font les modem-routeurs des FAIs commerciaux, mon réseau filaire n'est pas le même que le réseau wifi. Non pas pour des raisons de sécurités (les règles pf sont quasi identiques pour les deux interfaces) juste que je suis pas chaud pour les bridger. Et donc de ce fait, je ne pouvais pas me faire un trunk puisqu'un trunk se fait forcément avec des interfaces présentes sur un même réseau.

Je me suis donc acheté une borne wifi avec un switch intégré.

Sur les conseils de zorun, je me suis acheté un TP-Link TL-WR841N (pour moins de 20€) afin de remplacer ma NIC USB. Après m'être lancé sans réfléchir et avoir tenté de désactiver le routage, le nat et les autres cochonneries dont je n'ai pas besoin (je préfère quand même gérer tout ça avec pf, étonnant hein) je me suis dit "et si je n'utilisais pas le port wan du machin, et seulement ceux du switchs". Bingo. Ensuite j'ai juste dû configurer les options du wifi (clé wep, filtrage mac etc ... (je déconne hein)).

Bon et sinon ça se configure comment ?

Je vais me contenter de copier coller les fichiers de conf de la FAQ :

L'interface filaire

# cat /etc/hostname.em0 # l'interface filaire
up

Celle du wifi

On lui indique le nom du wifi et le mot de passe.

# cat /etc/hostname.iwn0
nwid puffynet
wpakey mysecretkey
up

On mélange le tout

# cat /etc/hostname.trunk0
trunkproto failover trunkport em0
trunkport iwn0
dhcp
rtsol # on est en 2014 quand même

On a mis en premier l'interface filaire parce que c'est elle la master.

Et dans les faits ?

Bah comme d'hab sur OpenBSD, it just works.

Si j'en crois les secondes qui défilent dans mon irssi qui tourne dans mon tmux, lors d'un (dé)branchement du cable ethernet, y a un petit flop de 3-4 secondes (sachant que ça doit être probablement la reconnexion ssh) je trouve ça plus que bien.

C'est ça ton article ? Des copiés-collés de la FAQ et des man ???

J'en conviens, cet article n'est pas folichon niveau originalité du contenu, mais c'est juste un rappel pour ceux qui croient qu'OpenBSD est compliqué et pas à la portée des débutants.

Je ne parle pas du fait que c'est génial, car tout le monde sait qu'OpenBSD est génial, non ?