Outils pour utilisateurs

Outils du site


issue69:labo_linux

Table des matières

1

Several years ago, I went out and bought a mid-range priced personal router from one of the big box stores. We had used a couple of older models of this brand of routers at work, so I figured they were pretty good quality. But, after less than 6 months, I found the router constantly dropping wireless connections. I tried changing the channel the router was on (I’m in an area of heavy wireless router usage), but, regardless of which channel I used, it seemed I found myself resetting the router at least once a day. Running: sudo iwlist scanning | grep Cell | wc -l normally shows between 51-85 connections depending on the day and time I run the command.

Il y a plusieurs années, j'ai acheté un routeur personnel de milieu de gamme dans une grande surface. Nous avions utilisé quelques anciens modèles de cette marque de routeurs au travail, alors j'ai pensé qu'ils étaient d'assez bonne qualité. Mais, après moins de 6 mois, je me suis aperçu que le routeur perdait constamment les connexions sans fil. J'ai essayé de changer le canal (je suis dans une zone d'utilisation forte du sans-fil) mais, quel que soit le canal utilisé, j'étais obligé de réinitialiser le routeur au moins une fois par jour. La commande :

sudo iwlist scanning | grep Cell | wc -l

indique normalement entre 51 et 85 connexions selon le jour et l'heure où je l'exécute.

2

Because I work for a computer refurbishing project, I decided to buy a different brand router for our project and give it a shot. The router worked out quite well, it didn’t drop wireless connections nearly as much, but sadly it was missing features – DHCP reservations for example. About the same time all this was happening, I heard several members of our local Linux User Group were hacking their own routers. In fact, a regional ISP was offering pre-hacked routers for slightly more than the cost of buying the router in a big box store. Our family had decided to switch ISPs anyway, but before I could buy the router myself, I found myself on the receiving end of a Linksys WRT54GL Linux based router (over the holiday season).

Comme je travaille pour un projet de rénovation d'ordinateurs, j'ai décidé d'acheter un routeur de marque différente pour notre projet et l'essayer. Le routeur a plutôt bien fonctionné, il ne perdait pas autant les connexions sans-fil, mais malheureusement il manquait de fonctionnalités - les réservations DHCP par exemple. À peu près au même moment, j'ai entendu que plusieurs membres de notre groupe local d'utilisateurs Linux pirataient, dans le sans de bidouillaient, leurs propres routeurs. En fait, un FAI régional offrait des routeurs pré-piratés pour à peine plus cher que le coût d'achat du routeur dans une grande surface.

Notre famille avait décidé de changer de fournisseur d'accès à internet de toute façon, mais avant que je puisse acheter le routeur moi-même, je me suis retrouvé à réceptionner un routeur Linksys WRT54GL basé sur Linux (en pleine période de vacances).

3

The stock Linux-based firmware on the WRT54GL isn’t bad, but one of our local LUG members, who also happened to be a co-worker, convinced me to take a look at Polarcloud’s Tomato firmware by showing me the built-in features: pretty traffic graphs (I’m a sucker for eye candy), Quality of Service, Wireless Filtering, Access Restrictions, Port Forwarding, Dynamic DNS, and a number of tools. At the time, I was planning on running a small server, and the new ISP not only sold static IP addresses at a reasonable price, but also allowed servers to be run. (In our area, the big ISPs discourage home users from running servers). I could have manually set the static IP address on each Linux server in our house (we have a couple with the XBMC machine and the Game/Web server), but I find it easier to keep the machines on DHCP and set the IP reservation on the router. Setting the IP reservation on the router also means other clients behind the router know about the machine/hostname.

Le firmware par défaut basé sur Linux sur le WRT54GL n'est pas mauvais, mais un des membres du GUL local, qui se trouvait aussi être un collègue, m'a convaincu de jeter un œil au firmware Tomato de Polarcloud en me montrant les fonctions intégrées : jolis graphiques de trafic (je raffole des jolies choses), qualité de service (QoS), filtrage du sans-fil, restrictions d'accès, translation de ports, DNS dynamique et un certain nombre d'outils.

À l'époque, j'avais l'intention de mettre en place un petit serveur, et le nouveau FAI non seulement vendait des adresses IP fixes à un prix raisonnable, mais autorisait également qu'on ait des serveurs. (Dans notre région, les gros fournisseurs d'accès à internet découragent les utilisateurs d'avoir des serveurs domestiques.) J'aurais pu définir manuellement l'adresse IP statique sur chaque serveur Linux de la maison (nous en avons deux ou trois avec le XBMC et le serveur pour les jeux et le web), mais je trouve plus facile de conserver les machines en DHCP et de définir les IP sur le routeur. La réservation IP sur le routeur permet aussi aux autres clients qui sont derrière le routeur de connaître les machines par leur nom d'hôte.

4

Polarcloud’s Tomato firmware works only on particular routers. You need to be careful because, even within certain models of routers, some are, and some are not supported. Flashing your router’s firmware, of course, voids any warranties. Like flashing a computer, it could brick your router if interrupted or flashed with the incorrect firmware. Be careful and informed. The polarcloud web site http://www.polarcloud.com/tomato lists which routers, models, and the particular version of each model supported. Linksys WRTGS v1 is supported by the tomato firmware as I write this article, but Linksys WRTGS v5 is not supported. You have to be careful, because even slight differences could mean you’re left with a doorstop instead of a router. Once you’ve downloaded the correct firmware from Polarcloud’s website, unzip it. Inside you’ll generally find several .bin files for different models of router. Be sure to read the readme html file unpacked with the archive for any important information before flashing/upgrading your router. I’d already flashed my router long ago, but noticed at the start of the article that my tomato firmware was several versions old. I decided to flash/upgrade it.

Le firmware Tomato de Polarcloud ne fonctionne que sur des routeurs spécifiques. Vous devez être prudent, car même parmi ces modèles de routeurs, certains sont pris en charge et pas d'autres. Flasher le firmware de votre routeur annule, bien sûr, la garantie. Comme lorsque vous flashez un ordinateur, cela pourrait casser votre routeur si l'opération est interrompue ou que vous flashez avec le mauvais firmware. Soyez prudent et informez-vous. Le site Polarcloud http://www.polarcloud.com/tomato liste les routeurs, modèles et versions spécifiques de chaque modèle, qui sont pris en charge. Le Linksys WRTGS v1 est pris en charge par le firmware Tomato au moment où j'écris cet article, mais le Linksys WRTGS v5 ne l'est pas. Vous devez être prudent, parce que même de légères différences pourrait signifier que vous vous retrouverez avec un butoir de porte au lieu d'un routeur.

Une fois que vous avez téléchargé le firmware correct sur le site de Polarcloud, décompressez-le. A l'intérieur vous trouverez généralement plusieurs fichiers .bin pour différents modèles de routeurs. Lisez bien le fichier html Readme livré dans l'archive pour prendre connaissance de toutes les informations importantes avant de flasher/mettre à niveau votre routeur. J'avais déjà flashé mon routeur il y a longtemps, mais j'ai remarqué au début de l'article que mon firmware Tomato était vieux de plusieurs versions. J'ai décidé de le flasher/mettre à jour.

5

The initial tomato firmware screen looks something like the screenshot shown right. The first screen shows the status of the router. I’ve modified the screenshot slightly. Careful readers will notice the MLPPP Failed message. The tomato firmware is capable of multi-link PPP which allows you to bond multiple PPP connections. It’s also useful for doing some trickery to get around some of the traffic shaping technologies certain providers use. While we’re subject to traffic shaping, I haven’t bothered resetting the router for MLPPP because we do so few torrents that we don’t tend to feel the traffic shaping much. Most of the options on the left hand side of the router expand to reveal further options. Within status you can see the status of your connection to your provider, the DHCP leases you’re giving out, as well as different wireless options.

L'écran initial du firmware Tomato ressemble à la capture d'écran de droite.

Le premier écran affiche l'état du routeur. J'ai modifié légèrement la capture d'écran. Les lecteurs attentifs remarqueront le message d'échec du MLPPP. Le firmware Tomato peut faire du PPP multi-lien qui vous permet d'agréger plusieurs connexions PPP. C'est également utile pour ruser et contourner les technologies de régulation du trafic utilisées par certains fournisseurs. Bien que nous soyons soumis à la régulation du trafic, je n'ai pas pris la peine de reconfigurer le routeur pour le MLPPP parce que nous faisons si peu de « torrent » que nous ne ressentons pas vraiment cette gestion de bande passante.

La plupart des options sur le côté gauche du routeur se développent pour révéler d'autres options. Dans l'option « état », vous pouvez voir l'état de votre connexion à votre fournisseur, les adresses DHCP que vous allouez, ainsi que différentes options sans-fil.

6

The Bandwidth screen (bottom right) is where you can see pretty graphs for Real-Time traffic and traffic within the last 24 hours. The Daily, Weekly and Monthly traffic is all expressed numerically, but you can choose to display in gigabytes or megabytes. Take note of the items in red in the bottom right of the screenshot. Any item with an underline is the current option. Clicking an option beside will change the option. Clicking the word Line in the Display option in the bottom right results in the graph displaying as a line rather than a filled-in graph. Along the top we have graph tabs for the various interfaces on the router including a couple of vlan ports. Within the tools section there are a number of tools, a tool to ping a server/system, a tool to trace the route to a system/server, a tool to set wake-on-lan for systems within your network, and a tool to conduct wireless surveys of your area.

Sur l'écran « bande passante » (en bas à droite), vous pouvez voir de jolis graphiques sur le trafic en temps réel et dans les dernières 24 heures. Le trafic quotidien, hebdomadaire et mensuel est exprimé numériquement, mais vous pouvez choisir de l'afficher en giga-octets ou méga-octets.

Remarquez les éléments en rouge dans le coin inférieur droit de l'écran. Un élément souligné indique l'option actuelle. On change d'option en cliquant sur une option voisine. En cliquant sur le mot « ligne » dans les options d'affichage en bas à droite, le graphique s'affichera sous forme de ligne au lieu d'être rempli. Dans la partie supérieure se trouvent des onglets de graphes pour les différentes interfaces du routeur, y compris deux ports VLAN.

Dans la section « outils » se trouvent plusieurs outils, dont un pour faire des ping vers un serveur ou système, un pour tracer la route réseau vers un système ou serveur, un pour configurer le « wake-on-lan » pour démarrer vos systèmes via le réseau, et un pour faire des analyses des réseaux sans-fil de votre quartier.

7

RSSI (received signal strength indication), the amount of Noise and channel of other routers is helpful, but of course this can also be done (better) in Linux with the iwlist scanning command. Wireless Site Survey doesn’t list all of the wireless access points in range. In the example above only 1 router is using channel 6 (interesting since most routers around here are set on channel 6 by default). The Basic > Network screen is where you set all your router’s basic options: type of WAN/Internet (DHCP, PPPoE, Static, PPTP, L2TP, or disabled), your router’s LAN address and DHCP information and that IP range, as well as your router’s wireless settings. If you plan on using one of the dynamic DNS services out there, the Basic > DDNS screen is where you set up your router to communicate with whatever DDNS service you’re using.

Il est utile de voir le RSSI (indication de la puissance du signal reçu) ou la quantité de bruit et les canaux des autres routeurs, mais bien sûr vous pouvez aussi voir cela (et mieux) sous Linux avec la commande « iwlist scanning ». L'analyse des réseaux sans-fil ne liste pas tous les points d'accès sans-fil à portée. Dans l'exemple ci-dessus, seulement 1 routeur utilise le canal 6 (intéressant, puisque la plupart des routeurs par ici sont configurés sur le canal 6 par défaut).

L'écran Basique > Réseau est l'endroit où vous définissez toutes les options de base de votre routeur: type de WAN/Internet (DHCP, PPPoE, statique, PPTP, L2TP ou désactivé), l'adresse LAN de votre routeur et les informations DHCP et la plage IP, ainsi que les paramètres sans-fil de votre routeur. Si vous prévoyez d'utiliser un des services DNS dynamiques externes, l'écran Basique → DDNS vous permet de configurer votre routeur pour communiquer avec le service DDNS que vous utilisez.

8

Recent tomato firmware had a choice of over 23 service options from a number of providers including 3322, DNS Exit, DNS-O-Matic, DynDNS, DyNS, easyDNS, EditDNS, EveryDNS, eNom, FreeDNS, Namecheap, OpenDNS – to name a few. The Basic > Static DHCP screen lets you see who has static DHCP reservations on your network. You can also assign static DHCP reservations on this screen, but it’s actually more work than you need to do. It’s easier to assign the DHCP reservations on the Status > Device List screen where you can click the word static under the device’s MAC address. Still, this page is useful because the Status > Device page doesn’t show which addresses are static. If you’re having trouble with a particular person who keeps trying to log in to your router, or perhaps you let someone have access to your router and they abused it, you can set a wireless filter on the Basic > Wireless Filter screen. You can also permit only certain wireless connections by specifying Permit only the following clients along with their MAC addresses.

Les firmwares Tomato récents proposaient un choix de plus de 23 options de service de plusieurs fournisseurs, parmi lesquels 3322, DNS Exit, DNS-O-Matic, DynDNS, DyNS, easyDNS, EditDNS, EveryDNS, eNom, FreeDNS, Namecheap, OpenDNS - pour n'en citer que quelques-uns.

L'écran Basique > DHCP statique vous permet de voir qui a des réservations DHCP statiques sur votre réseau. Vous pouvez également attribuer des réservations DHCP statiques sur cet écran, mais c'est en fait plus de travail que nécessaire. Il est plus facile d'attribuer les réservations DHCP sur l'écran État > Liste de périphériques où vous pouvez cliquer sur le mot statique sous l'adresse MAC de l'appareil. Cette page est quand même utile car la page État > Périphérique n'indique pas quelles adresses sont statiques.

Si vous rencontrez des problèmes avec une personne en particulier qui essaye de se connecter en permanence à votre routeur, ou peut-être si vous avez laissé quelqu'un avoir accès à votre routeur et qu'il en a abusé, vous pouvez définir un filtre sans- fil sur l'écran Basique > Filtre sans-fil. Vous pouvez également autoriser seulement certaines connexions sans-fil en spécifiant « Permettre seulement les clients suivants » avec leurs adresses MAC.

9

The Advanced menu has a number of sub-menus including Conntrack/Netfilter options, DNS options, Firewall options, MAC address options (useful if you need to clone your PC’s MAC address when you’re trying to connect to a modem you’ve used with a PC), routing, wait time, and a couple of miscellaneous options. There is a lot that can be finely tweaked within the advanced menus, things like putting the router into “Afterburner mode” (also known as 125 High Speed Mode, basically a mode that’s suppose to be 30-40% faster than 802.11g), allowing your router to respond to pings (I turn it off), and setting TCP and UDP timeout times. It’s within the Port Forwarding > BASIC menu that I punched the holes necessary for the outside world to see my server’s services. For the game server, I looked to the readme and game configuration files for which ports to open. Search engines are your friend for common ports if you don’t already know them. Also within the Port Forwarding menu are DMZ options, Triggered Port Forwarding options, and UPnP/Nat-PMP options.

Le menu Avancé comporte un certain nombre de sous-menus parmi lesquels les options Conntrack/Netfilter, les options DNS, les options de pare-feu, les options d'adresse MAC (utiles si vous avez besoin de cloner l'adresse MAC de votre PC lorsque vous essayez de vous connecter à un modem que vous avez utilisé avec un PC), le routage, le temps d'attente et quelques options diverses. On peut régler finement beaucoup de choses dans les menus avancés, des choses comme mettre le routeur en mode « Afterburner » (également connu sous le nom Mode haut-débit 125, en fait c'est un mode qui est censé être 30-40 % plus rapide qu'en 802.11g), ou permettre à votre routeur de répondre aux pings (je l'éteins), ou encore de régler le délai d'attente TCP et UDP.

C'est dans le menu Redirection de port > Basique que j'ai percé les trous nécessaires pour que le monde extérieur voie les services de mon serveur. Pour le serveur de jeu, j'ai regardé les fichiers de configuration et « lisez-moi » pour connaître les ports à ouvrir. Les moteurs de recherche sont vos amis pour connaître les ports courants si vous ne les connaissez pas déjà.

Toujours dans le menu Redirection de port se trouvent les options DMZ, les options de déclenchement des redirections de port et les options UPnP/NAT-PMP.

10

Tomato can do Quality of Service (QoS). The QoS menu consists of basic settings where you can assign inbound and outbound traffic percentages to terms Highest, High, Medium, Low, Lowest, then Class A-E. The QoS > Classification screen is where you set which machines on your network get those Highest, High, Medium, Low and Lowest priorities. You can also view a pie graph or details of your QoS if you have it set and configured. In our house, my wife’s PC had the highest priority, followed by DNS traffic between 0 and 2KB, then WWW traffic between 0 and 512KB. The Access Restriction menu option has no sub-options. It allows you to set rules like “Turn off the router’s wireless between 11pm and 5am” (useful if you have teenagers who like to surf all night instead of sleep).

Tomato peut faire de la Qualité de Service (QoS). Le menu QoS se compose de réglages de base où vous pouvez choisir les pourcentages de trafic entrant et sortant entre Maximum, Haut, Moyen, Minimum puis les classes A-E. Sur l'écran QoS > Classification, vous définissez les machines sur votre réseau qui obtiennent ces priorités Maximum, Haute, Moyenne, Basse et Minimum. Vous pouvez également voir un graphique circulaire ou les détails de votre QoS si vous l'avez activée et configurée.

Dans notre maison, l'ordinateur de ma femme a eu la plus grande priorité, suivi par le trafic DNS entre 0 et 2 Ko, puis le trafic WWW entre 0 et 512 Ko.

Le menu Restriction d'accès n'a pas de sous-options. Il vous permet de définir des règles comme « Désactiver le réseau sans fil du routeur entre 23 heures et 5 heures » (utile si vous avez des ados qui aiment surfer toute la nuit au lieu de dormir).

11

If you install Tomato on a router, the Administration > Admin Access menu will be one of the places you’ll want to visit. On the admin access screen, you set options like the router’s password, whether you want the router to allow SSH (also on which port and keys), Web administration options, and (yikes!) Telnet options. I don’t want to sound too much like a broken record by listing all the menu options below the Administration menu, so I’ll point out the few that I actually use: Admin > Configuration is where you back up your router’s configuration to and from your PC. Admin > Upgrade is where you upgrade your Tomato router’s firmware (or revert it back if you’ve backed up the old firmware). The CIFS Client menu option is intriguing. When I looked into it further, I discovered it seems to just be used to mount a CIFS (Windows) share for bandwidth monitoring purposes. About, Shutdown, Reboot, and Logout are obvious, so I won’t cover them here.

Si vous installez Tomato sur un routeur, le menu Administration > Accès admin sera l'un des endroits que vous souhaiterez visiter. Sur l'écran d'accès admin, vous définissez les options comme le mot de passe du routeur, si vous voulez que le routeur permette le SSH (et sur quel port et avec quelles clés), des options d'administration Web, et (oui !) des options Telnet.

Je ne veux pas ressembler trop à un disque rayé en énumérant toutes les options de menu sous le menu Administration, je vais donc juste souligner celles que j'utilise vraiment : Admin > Configuration permet de sauvegarder la configuration entre votre routeur et votre PC. Admin > Mise à niveau sert à mettre à jour le firmware de votre routeur Tomato (ou revenir en arrière si vous avez sauvegardé l'ancien firmware). L'option de menu du client CIFS est mystérieuse. Quand je l'ai regardée en détail, j'ai découvert qu'elle semble juste être utilisée pour monter un partage CIFS (Windows) à des fins de surveillance de la bande passante. À propos, Éteindre, Redémarrer et Déconnexion sont explicites, donc je ne les détaille pas ici.

12

I’ve actually only barely scratched the surface of the Tomato firmware options. I didn’t cover a lot because there are literally hundreds of options in the Tomato firmware. If you’ve ever been dissatisfied with a router, give the Tomato project a look, check out the compatible routers (making sure to pay attention not just to models but also version numbers), and I think you’ll be satisfied with the amount of options available. Also worth checking out is the DD-WRT project which does similar things but tends to be more modular. Important Links: Tomato Firmware page: http://www.polarcloud.com/tomato Wikibooks Tomato Firmware reference: http://en.wikibooks.org/wiki/Tomato_Firmware/Menu_Reference DD-WRT: http://www.dd-wrt.ca/site/index

En fait, ce n'ést qu'un bref aperçu des options du firmware Tomato. Je n'en ai pas présenté beaucoup, car il y a littéralement des centaines d'options dans le firmware Tomato. Si vous avez déjà été insatisfait d'un routeur, jetez un coup d'œil au projet Tomato, consultez les routeurs compatibles (en prenant soin de vérifier non seulement les modèles, mais aussi les numéros de version), et je pense que vous serez satisfait de la quantité d'options disponibles. Il convient également de regarder le projet DD-WRT qui fait des choses similaires, mais a tendance à être plus modulaire.

Liens importants :

Page du firmware Tomato : http://www.polarcloud.com/tomato.

Référence Wikibooks du firmware Tomato : http://en.wikibooks.org/wiki/Tomato_Firmware/Menu_Reference.

DD-WRT : http://www.dd-wrt.ca/site/index.

issue69/labo_linux.txt · Dernière modification : 2013/04/22 19:01 de auntiee