OpenWrt sur RB750GL

Pour router mes 100Mbit sur mon tunnel gre je me suis offert un petit routeur vraiment pas cher, le RB750GL de Mikrotik:

RB750GL

L’OS qui est dessus est propriétaire (basé sur Linux apparemment), et il semble proposer des fonctionnalités intéressantes, seulement il n’y a pas de shell, juste une interface console similaire à celle de IOS de cisco. Pour moi c’était impensable d’utiliser ça, je n’ai pas trouvé d’intérêt à apprendre à utiliser ce système pour un seul routeur.

Je me suis donc mis en tête d’installer OpenWrt dessus, je ne vais pas expliquer comment j’ai fait car la manip est simple. Si vous ne voulez pas vous casser la tête à construire vous même l’image et les packages, bien que je vous le conseille car c’est très instructif, sachez que la beta de Attitude Adjustment tourne parfaitement bien sur le RB750GL.

Un problème que j’ai eu, c’est d’apprendre à utiliser le switch AR8327 qui est dessus. Les 5 ports ethernet sont reliés à la même interface logique, du coup il faut spécifier comment on veut le découper cette interface (eth0) en plusieurs interfaces logiques et gérer les vlan etc. La manip se fait avec l’utilitaire swconfig.

Le problème c’est qu’avec la config par défaut, toutes les interfaces logiques que vous créez ont la même adresse mac (la première des 5 qui sont listée derrière le routeur). Il faut donc forcer l’adresse mac des interfaces que vous créez sinon vous allez tout simplement couper votre accès à la machine car les paquets n’iront pas toujours sur la bonne interface.

Dans mon cas j’ai besoin d’une interface relié à mon vrai switch sur lequel sont branchés toutes les machines et une autre interface sur laquelle j’ai une session PPPoE sur le vlan (taggé) 835, je ne me sert pas pour l’instant des 3 autres ports. J’ai forcé l’adresse mac de l’interface lan (option macaddr) sinon il y a collision avec l’interface wan. Voilà un morceau de mon /etc/config/network:

config interface 'lan'
option ifname 'eth0.1'
option type 'bridge'
option proto 'static'
option netmask '255.255.255.0'
option ipaddr '192.168.31.253'
option send_rs '0'
# On force l'adresse mac
option macaddr '00:0C:42:C2:12:12'
config interface 'wan'
option proto 'pppoe'
option username 'fti/XXXXXXX'
option password 'XXXXXXX'
option ifname 'eth0.835'
# On force l'adresse mac
option macaddr '00:0C:42:C2:12:11'
config switch
option name 'switch0'
option reset '1'
option enable_vlan '1'
config switch_vlan
option device 'switch0'
option vlan '1'
option vid '1'
# Le port 2 est untagged pour le lan.
option ports '0t 2'
config switch_vlan
option device 'switch0'
option vlan '2'
option vid '835'
# Notez le petit 't' après le port 1, ce sera du vlan taggé
option ports '0t 1t'