pkgin@FOSDEM 2012

De retour du FOSDEM 2012; 2 jours exceptionnels, des amis, du prosélytisme, des rencontres, des échanges. D’excellents souvenirs et le rendez-vous est d’ores et déjà pris pour l’année prochaine. Merci à tous, et tout particulièrement aux lutins du jardin magique. Le stand NetBSD que je tenais avec Nicolas, Marc, Nod et Vera était bien animé, bon nombre de visiteurs ont montré un fort intérêt pour le projet, ça fait plaisir :)

iwpriv mode et kamikaze 7.09

Un p’tit fix vite fait. J’utilise, sur une Ubiquiti Litestation 2 le firmware OpenWrt Kamikaze 7.09. Je sais, c’est vieux, mais plusieurs témoignages de bricking suite à un upgrade en 8.09 ou backfire m’ont refroidit. Je place généralement mes AP publics en 802.11b afin de porter le plus loin possible. Je réalise ceci via la commande:

Sauf que, sur ma LS2, je mangeais l’erreur suivante:

Rien à faire, ça foire. J’ai trouvé un (vilain) hack pour ce problème sur le bug system de madwifi:

Is "if" really evil ?

Hier, FRLinux me demande innocemment d’ajouter le module WPtouch, un chouette plugin pour WordPress, qui permet aux mobiles de visualiser le site sous forme d’application, bien plus lisible que le blog dans sa forme classique. Ni une ni deux je m’execute… et m’aperçois que l’affichage d’iMil.net ne change pas d’un iota sur mes devices mobiles. Je me rappelle alors que le nginx placé devant l’Apache qui sert ce site cache la homepage pendant 10 minutes. Ceci explique cela.

Routage IPv6 via freebox

J’enquille donc sur le précédent post sur le sujet avec cette fois une configuration qui sied à une passerelle de type GNU/Linux calée en bridge derrière une freebox, voir deux billets plus bas pour l’explication de fond, nous irons à l’essentiel ici. Dans cet exemple, eth0 représente l’interface raccordée à notre réseau privé, et eth1 celle raccordée à la freebox:

  • Évidemment, il faudra activer le mode IPv6 sur votre interface free
  • On place les sysctl adéquats:
  • On renseigne son IPv6, par exemple pour le sous-réseau 2a01:e35:39d7:e3e0::/64:
  • On déclare sa passerelle:
  • Puis on place une IPv6 qui servira de passerelle à notre réseau privé sur eth0 avec une longueur de préfixe juste suffisante:
  • L’astuce, ici encore, consiste à proxyiser les adresses du LAN sur l’interface raccordée à la freebox afin d’apparaître comme un réseau “à plat”:
  • Il suffit alors de faire de même pour toute machine de votre LAN que vous souhaitez raccorder à l’IPv6, par exemple, toujours sur la passerelle:
  • Sur la machine qui portera l’adresse 2a01:e35:39d7:e3e0:1::2, on ajoute à l’interface son IPv6, et on déclare comme passerelle par défaut 2a01:e35:39d7:e3e0:1::1:
  • Il conviendra de rajouter tout ce petit monde dans votre /etc/network/interfaces comme il se doit, encore une fois je vous renvoie 2 posts plus bas. La méthode est fastidieuse et pas forcément élégante, mais tant que l’opérateur free ne se sera pas sorti les ne routera pas plus qu’un /64 dans les foyers, nous devrons nous contenter de cela… ou passer la freebox en mode routeur. Nan j’déconne.

Par ici ma p'tite dame

Puisque ça fait 2-3 fois qu’on me le demande, voici un schéma du routage de sortie à la maison:

Ça a l’air tordu comme ça, mais jvous promets qu’il y a une bonne raison à tous ces choix :)

Transformer 6

Sans vraiment y croire, je vais sur test-ipv6 avec ma tablette sous Android (une Asus Transformer), et quelle ne fut pas ma surprise de constater:

Transformer IPv6

Pas d’étonnement, mon HTC Desire HD sous Android montre le même résultat:

Et histoire de me gausser, je fais le même test avec l’iPoo du boulot… bah pareil:

Ça commence à sentir bon !

Je précise qu’évidemment, ces tests ont été menés en mode WiFi et non en passant par l’opérateur de téléphonie.

Routage IPv6 sur une passerelle chez OVH (et probablement Free)

Free et OVH proposent tous deux une connectivité IPv6 depuis un certain temps. Les deux ont ceci de commun que sur le papier, ils fournissent un prefixe /64, il se trouve qu’OVH fournit en réalité un /56, mais cela a peu d’intérêt pour l’astuce qui va suivre.

Les routeurs des deux sociétés s’attendent donc à recevoir du flux IPv6 depuis un réseau “plat”, et ceci pose un réel soucis lorsque vous souhaitez distribuer une connectivité IPv6 à votre réseau possiblement NATté derrière votre passerelle. Plusieurs astuces sont disponibles depuis belle lurette, parmi elles l’utilisation d’un bridge associé à une règle ebtables, mais aussi et surtout la mise en place du proxying NDP. Je me suis basé sur cette dernière méthode, que j’ai adapté à mon éternel setup: dom0 debian GNU/Linux et domU NetBSD.

Comment chu trop un sage

Voila un week end BIEN productif ! Comme je ne m’étais pas replongé dans IPv6 depuis la glorieuse époque isdnet, je me suis dit qu’il était grand temps de me rafraîchir la mémoire; j’ai donc été au bout de la certification IPv6 de HE qui va de la simple déclaration d’un tunnel v4/v6 à l’enregistrement d’une zone DNS IPv6 parfaitement fonctionnelle en passant par un MX et un desktop double pile aux petits oignons. Et ça fait du bien ! Compte tenu de la situation, je ne saurais trop vous encourager à faire de même, et de ramener ce savoir dans vos boulots, c’est pas comme si le grand mouvement avait lieu demain, mais compte tenu de l’ampleur de la tâche, il est pas trop tot… Allez, jme la pête au laser: .

mmmmm les bons spaghettis

Ça commence à sentir le vieux sac de lacets sur ma routing box. Pour rappel, j’utilise un domU NetBSD hébergé quelque part pour différencier mon traffic sortant. Ce domU est controllé par un dom0 Debian Squeeze, et a ceci de particulier que sa route par défaut part vers la suède. Seuls quelques services répondent directement sur l’IP publique “réelle”, sur laquelle j’opère du SNAT et du DNAT.

Tout ceci manquait cruellement d’un soupçon d’IPv6. Ainsi, après m’être frotté à SixXs et son système de crédits aussi ingénieux que pénible, j’ai finalement opté pour Hurricane Electric qui a en plus le bon goût de posséder un endpoint à Paris.

Tu te CALMES le dom0

Voici ce que crachait l’un de mes dom0 Debian/Squeeze sous Xen 4.0:

Le tout saupoudré de quelques stack traces du meilleur effet:

Et j’en passe. Bref, ça pue.

Après m’être documenté quelque peu sur les erreurs constatées, deux actions semblent avoir stabilisé la situation. Premièrement, plusieurs posts dans quelques forums indiquent que l’installation de intel-microcode et microcode.ctl permet de “réparer” certains bugs embarqués dans les processeurs Intel. Je m’execute: