#net4501
Explore tagged Tumblr posts
Text
INSTALLATION D'UN SYSTEME OPENWRT SUR UN SOEKRIS NET 4501
Bonjour à tous, et bienvenu pour un nouveau tutoriel qui, je l'espère, sortira certaines personnes de l'impasse. Dans un précédent tuto, j'avais expliqué comment installer pfSense sur un Soekris net4501. Mon choix pour pfSense était orienté pour plusieurs raisons : -pfSense est fiable. On l'utilisait déjà dans ma boite sur l'ancien routeur, qui était en fait un ordinateur complet au service du routeur. Même dans sa version béta, il fonctionnait déjà très bien (exception faite d'un problème lors du redémarrage en cas de coupure de courant, qui oblige à rentrer à la main la commande de mount de la partition de root). -Disposant de deux connexion internet, on avait un besoin vital de load balancing et de la gestion de deux Gateway pour notre réseau et nos serveurs internes, et contrairement à m0n0wall, son prédécesseur, pfSense le gère mieux que bien. -Je pensais, à tord, que pfSense était un produit léger. En fait cette vision erronée était due au fait que je n'avais pas vu le faussé ce creuser entre les v1.x et les v2.x. Depuis la v2, pfSense nécessite plus de 128MoRAM. -Le fait aussi de disposer du même système que l'actuel, je ne me pausai donc pas la question de la portabilité de la config. Seulement voila, comme dit plus haut, pfSense a grossi, il est devenu gourmand en performance, et demande désormais plus de 128MoRAM. Épique déception car, au moment du tuto précédent, je disposai d'un Soekris net4501 disposant de 32MoRAM, soit trois fois en dessous du seuil critique. C'est à sa première journée de mise en prod que les crash successif et les erreur 500 sur la page de gestion de config, m'ont fait réalisé mon erreur. Il a donc fallu rechercher d'autres solutions. Voici un peu mon cheminement et les raisons pour lesquelles je ne les ai pas sélectionnée : -m0n0wall (freeBSD) : Petit, léger, pratique, l'interface web est assez simple et esthétiquement agréable (contraste radicalement avec le rouge/gris de pfSense assez agressif). Il ne dispose cependant pas de gestion du Dual-WAN/Load Balancing ni d'une prise de commande en SSH, ce qui pose un réel problème de configuration profonde, obligeant l'utilisation du port série. On peut s'amuser à ajouter des modules particulier, mais c'est une plaie. J'ai vite été découragé par l'absence totale d'activité en ce qui concerne le développement de nouvelles versions, qui avant me laisser envisager de possibles updates. -netBSD pure (netBSD) : J'ai envisagé brièvement de monter un netBSD purement et simplement, et d'y incorporer les paquets nécessaires pour permettre de faire tourner ce qui devait tourner. Le problème était que, tournant sous linux, je n'avais pas vraiment de base pour débuter. Jugé trop long et trop complexe, l'idée a été abandonnée. -LFS Linux From Scratch (GNU/Linux) : Dans le même raisonnement que pour netBSD, l'idée était assez séduisante, étant donné ma proximité avec le système linux et excellente documentation internet. Malgré l’enthousiasme que cette idée a suscité (création d'une distribution personnalisée et m'appartenant), l'idée a cependant été abandonnée à cause de la trop grande demande en temps et l'investissement personnel nécessaire à sa bonne réalisation. -ipCop (GNU/Linux) : Une des distribution principales de routeurs. malgré l'absence de load-balancing pré-installé, l'idée de tourner sous linux est intéressante dans le sens ou, le système m'étant familier, je pouvais envisager, mieux que sur un BSD, l’hypothèse de charger moi même les paquets nécessaires. Malheureusement, ipCop n'est pas vraiment prévu pour fonctionner en embarqué. De plus le comportement agressif et l'aide minimale obtenue sur le forum de soutien de cette distribution m'ont réellement dérangé. Enfin, ipCop, dans son incapacité à dégainer une version embarqué facile d'installation pour CF, j'ai été dans l'incapacité de faire démarrer ne serai-ce que le bootloader. -OpenWRT (GNU/Linux) : Au bord de la crise de nerf profonde, on est tombé par hasard sur une distribution prometteuse nommé "OpenWRT". Fonctionnant sous Linux, gérant le Load Balancing, le multi-wan, ayant un protocole SSH et une interface web, et surtout spécialisé pour l'embarqué, le choix s'est donc imposé. Matériel requit : - Un routeur Soekris net4501 Je suis passé à une version légèrement au dessus pour cette installation. Il dispose du même processeur que le précédent, à la différence qu'il possède 64MoRAM. Je dois normalement faire un portage vers la version 32MoRAM (cf. Tuto Soekris pfSense), si jamais je rencontre un problème, je publierai une petite note. -Un câble série. -Un lecteur de carte CompactFlash (CF). -Une carte CF d'au moins 128Mo. -Les images de OpenWRT Backfire 10.03.1-RC6, à savoir : --OpenWRT x86 generic combined jffs2 128k (contenant la partition de boot et l'image kernel) --OpenWRT x86 generic combined ext2 (contenant les root systèmes) Les images sont disponibles ici : http://downloads.openwrt.org/backfire/10.03.1-rc6/x86_generic/ Pourquoi la 10.03.1-RC6 ? Et bien au moment ou j'écris ce tuto, c'est la version la plus récente. Ensuite, faites l’expérience et chargez vos images dans votre CF, et bootez naïvement votre routeur. Et bien vous aurez 2 problèmes : -un bon gros "waiting for /dev/sda2" -Et si vous passez cette étape, vous vous retrouverez devant un système qui ne reconnaîtra pas vos interfaces réseau. Gênant pour un routeur non? PAS DE PANIQUE La dernière version comporte des correctifs qui permettent de passer ces quelques blocages. De plus elle est stable, ce qui rajoute son intérêt. Étape 1 : Configuration préalable de minicom et du BIOS routeur. Tout d'abord, on commence par lancer minicom. Il faut le configurer en 19200n8 pour pouvoir se connecter au routeur (ce n'est pas sur, les vitesses pas défaut varie, surtout si ils sont de 2nd main). # minicom /dev/VOTRE_PÉRIPHÉRIQUE_SERIAL si vous utilisez comme moi un cable série-USB, ce sera /dev/ttyUSB0. Une fois dans minicom, faites Ctrl+O, puis allez dans régler le port série, puis tapez sur E pour accéder à la vitesse de transmission. Une fois dedans, régler la vitesse. Ensuite, branchez votre cable série sur le routeur, et alimentez le. Une fois au terme du chargement du BIOS, avant que les 5 secondes ne soit écoulé, tapez "Ctrl+P". Vous devriez avoir un prompt ">". Tapez : > set ConSpeed=38400 puis > reboot Pendant que le routeur redémarre, retournez dans le menu Ctrl+O -> E -> et réglez la vitesse sur 38400. Voila, votre routeur, votre minicom ET bientôt votre système seront synchronisés sur la même vitesse, à savoir 38400 bauds. Etape 2 : Installation des images en dd sur la CF. Une fois vos images de OpenWRT téléchargées sur votre disques, et que vous connaissez leur emplacement absolu (histoire de ne pas se tromper), et que votre carte CF est correctement introduite dans le lecteur de carte, vous allez lancer les lignes de code suivante : # dd if=chemin/openwrt-x86-generic-combined-jffs2-128k.img of=/dev/sdb # dd if=chemin/openwrt-x86-generic-combined-ext2.img of=/dev/sdb ATTENTION : Comme dit dans un tuto précédent, le dd est une arme absolue. Elle écrase tout et ecrit par dessus. Par conséquent, si jamais vous tappez quelque chose dans le genre /dev/sda au lieu de /dev/sdb, c'est votre disque dur qui y passe. Et là vous n'avez AUCUNE chance de récupérer le moindre fichier. C'est puissant, et par conséquent c'est a utiliser avec précaution. Si tout c'est bien passé, normalement deux éléments sont apparus dans /dev/ : sdb1 et sdb2. C'est là toute la magie de faire du transfert d'image comme ça, il se démerde pour faire les choses bien. Étape 3 : Installation de la CF et lancement du routeur. Bon, bin maintenant on peut plugger la carte dans le port CF de votre soekris, lancer minicom, et mettre le soekris sous tension. Le BIOS se lance, il annonce le lancement de grub, et là BAM! Caractères étranges en tout genre qui s’animent. PAS DE PANIQUE D'après mon expérience, le Soekris n et4501 banché en série ne supporte pas grub visuellement. Sur certains appareils, les comportements varient : Ils peuvent ne pas aller plus loin que grub, ou se lancer sans l'afficher correctement. Heureusement, dans mon cas, j'ai été dans la 2e solution. Après quelques secondes d'attentes, vous pouvez apercevoir le chargement du noyau. A la ligne : Please press Enter to open Terminal, n'appuyez pas dessus. Il va y avoir un module (NatSemi pour les interfaces réseau du soekris) supplémentaire qui va se lancer et qui risquerai de ne pas bien afficher la so cute présentation d'OpenWRT.
Et voila, maintenant cliquez sur Entrée et dites bonjour à OpenWRT embarqué =).
Notes :
Adresse IP : Par défaut, l'IP du routeur est définie par OpenWRT comme étant la 192.168.1.1. Au cas où comme moi vous auriez la nécessité de changer, les fichiers de configuration du réseau (et tant d'autres) sont ici : # vi /etc/config/network Puis ensuite allez dans l'interface eth0 et changez ipaddr 192.168.1.1 en ipaddr 192.168.***.*** <- l'adresse IP que vous voulez. Ensuite procédez à un reboot des interfaces via cette commande : # /etc/init.d/network restart Et voila, maintenant l'interface web de configuration est disponible en ligne à l'adresse IP indiquée ! ENJOY YOUR OPENWRT ROUTEUR!!
#soekris#4501#net#net4501#openwrt#loadbaancing#load#balancing#dual#wan#dual-wan#freeBSD#BSD#Linux#pfSense#m0n0wall#serial#serie#multi-wan#multi#64MoRAM#64Mo#RAM#x86#generic#10.03.1-RC6
12 notes
·
View notes