Il paraît que FreeBSD met un point d'honneur à rester à la page sur les aspects réseau, performance et sécurité. Il paraît que FreeBSD a fait tourner et fait encore tourner de grand noms de l'Internet comme Netfilx, Yahoo! ou des équipements comme les Juniper et les NetApp.
J'ai eu l'occasion de mettre mes mains dans un FreeBSD de prod' et… je m'avoue déçu, surtout par l'aspect réseau.
L'implémentation GRE est à la masse. Créez une interface GRE avec « ifconfig create », elle fonctionnera directement. Rendez-là permanente dans rc.conf, l'interface sera crée au boot mais elle n'aura pas le flag « RUNNING » et elle sera donc inutilisable. Forcément, « ifconfig gre0 up » n'aura aucun effet, sinon c'est trop facile. Solution ? Lancer un tcpdump sur l'interface. :- Le problème est connu : https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=164475 mais n'est visiblement pas fixé (j'ai la version 10.1 de FreeBSD dans les mains). Et cette plaisanterie dure depuis 2009 (https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=138407 ). Sérieux ?
Dès que tu veux faire un peu de réseau avancé, j'ai l'impression que c'est mort avec FreeBSD. Il n'y a pas d'équivalent à iproute2 donc il faut encore utiliser ifconfig, route, l'IP aliasing pour ajouter plusieurs IPv4 sur une même interface, pas de support de « proto » ( http://shaarli.guiguishow.info/?SLl4Pg ) ni de « src » (http://shaarli.guiguishow.info/?6P2feQ mais on doit pouvoir jouer avec /etc/ip6addrctl.conf, l'équivalent FreeBSD du /etc/gai.conf GNU/Linux), etc. C'est vraiment relou. Je ne conseille pas FreeBSD pour monter un routeur, c'est juste intenable.
Parlons de mises à jour. Faille limitée (il faut avoir activé l'option) dans Quagga patchée le 09/03/2016 ( https://savannah.nongnu.org/news/?group=quagga ). Le 17/03/2016, le paquet est mis à jour dans les ports FreeBSD (voir https://svnweb.freebsd.org/ports/head/net/quagga/?view=log - « Update to 1.0.20160315. »). Fort bien. Debian : le patch arrive le 27/03/2016. BOOOOOOUH Debian c'est trop nul, pas vrai ? Sauf que, depuis, chez Grifon + FreeBSD, Zebra est totalement KO dès qu'il se mange les routes IPv6 d'Internet via BGP :
2016/04/26 14:52:01 ZEBRA: client 13 disconnected. 0 bgp routes removed from the rib
2016/04/26 14:52:01 ZEBRA: client 13 says hello and bids fair to announce only bgp routes
ZEBRA: Received signal 10 at 1461675151 (si_addr 0x40f150); aborting...
Backtrace for 3 stack frames:
0x80088865d <zlog_backtrace_sigsafe+0x3d> at /usr/local/lib/libzebra.so.0
0x800887dc5 <zlog_signal+0x515> at /usr/local/lib/libzebra.so.0
0x8008937a8 <signal_init+0x308> at /usr/local/lib/libzebra.so.0
in thread work_queue_run scheduled from workqueue.c:125 »
Foirer tout ton AS avec une màj de sécurité, c'est beau. :') Pendant ce temps là, chez ARN + Debian, le Quagga fonctionne très bien. :)))) Différence ? FreeBSD fait un bond de version (20 juillet 2015 -> 15 mars 2016) donc plein de choses peuvent changer là où Debian security porte uniquement le patch de sécurité (sauf quand c'est trop la merde comme avec samba en avril 2016…).