DD-WRT : remplacer le firmware d’origine de son routeur
DD-WRT est un firmware libre sous Linux qui remplace le système d'origine d'un routeur WiFi et lui ajoute VPN, QoS, VLAN, SSH et scripts de démarrage. Il ne s'installe que sur les modèles listés dans la base de compatibilité du projet, et un flash sur la mauvaise révision matérielle rend le routeur inutilisable.
D’où vient DD-WRT et ce qu’il remplace
En 2003, un développeur remarque que le Linksys WRT54G fait tourner un noyau Linux. La GPL oblige Linksys à publier les sources, et cette publication ouvre la voie à trois familles de firmwares alternatifs : OpenWrt, Tomato et DD-WRT. Ce dernier démarre en 2005 sous la main de Sebastian Gottschall, à partir du firmware Alchemy de Sveasoft. Les deux lettres viennent de DD, l'immatriculation de Dresde. Le projet est aujourd'hui maintenu par la société allemande NewMedia-NET GmbH, qui vend aussi des versions sous licence à des fabricants de matériel.
Ce que vous écrasez en flashant, c'est le système complet : noyau, pilotes WiFi, interface d'administration, pile de services. Le chargeur de démarrage reste en place, CFE sur les puces Broadcom, U-Boot sur la plupart des autres. C'est précisément ce bootloader intact qui permet de récupérer un routeur après un flash raté.
Après redémarrage, l'interface web répond sur 192.168.1.1. Les vieilles images v24 utilisent le couple root / admin, les builds récents refusent de démarrer l'administration tant que vous n'avez pas défini un identifiant et un mot de passe. Le compte système reste root quel que soit le nom que vous choisissez dans le formulaire, ce qui surprend au premier accès SSH.
Vérifier son routeur avant de flasher
La base de compatibilité du projet (Router Database sur dd-wrt.com) est la seule référence à consulter. Elle indexe le matériel par modèle et par révision, et c'est la révision qui compte. Cas d'école : le WRT54G existe en huit versions. Jusqu'à la v4 il embarque 4 Mo de flash et 16 Mo de RAM sous Linux. À partir de la v5, Linksys passe à VxWorks avec 2 Mo de flash et 8 Mo de RAM seulement, ce qui impose d'abord une image spéciale dite VxWorks killer, puis une build micro. Même nom sur la boîte, procédure totalement différente.
La révision est imprimée sous le boîtier, à côté du numéro de série et de l'adresse MAC. Ne vous fiez pas au modèle affiché dans l'interface du constructeur, il est souvent tronqué.
DD-WRT est distribué en plusieurs variantes selon la place disponible en flash. Choisir une image trop grosse pour la puce provoque une écriture incomplète et un routeur qui ne redémarre plus.
- Relevez la révision matérielle exacte sous le routeur, pas dans l'interface web
- Notez la taille de flash et de RAM : en dessous de 4 Mo / 16 Mo, l'usage réel est très limité
- Téléchargez l'image depuis le dépôt officiel, en repérant la cible et la version de noyau (K2.6, K3.x, K4.x selon le matériel)
- Gardez sous la main le firmware constructeur d'origine, il vous servira si vous voulez revenir en arrière
| Variante | Flash minimale | Contenu |
|---|---|---|
| micro | 2 Mo | Routage, WiFi, DHCP. Ni OpenVPN, ni USB, ni partage de fichiers |
| mini | 4 Mo | Ajoute le portail captif, le DDNS et davantage d'outils réseau |
| std / big | 8 Mo | OpenVPN, USB, Samba, la majorité des options de l'interface |
| mega | 8 Mo et plus | Tout ce qui est compilé pour la cible, y compris les modules rares |
Les fonctions qui justifient le flash
L'argument le plus courant est le VPN. Une build std ou VPN embarque un client et un serveur OpenVPN configurables depuis l'interface, ce qui fait passer tout le réseau local dans le tunnel sans rien installer sur les postes. Les builds récentes intègrent aussi WireGuard, nettement plus léger sur les processeurs MIPS anciens qui plafonnent souvent autour de quelques mégabits par seconde en OpenVPN.
Le reste tient dans l'accès système. Activez Secure Shell dans Services, DD-WRT lance Dropbear sur le port 22 et vous obtenez un shell BusyBox. Toute la configuration vit dans la NVRAM et se manipule en ligne de commande : `nvram get lan_ipaddr` affiche l'adresse LAN, `nvram set wan_hostname=routeur` suivi de `nvram commit` écrit un réglage de façon persistante. Oublier le commit est l'erreur classique, le changement disparaît au redémarrage.
Sur une puce Broadcom, `wl -i eth1 assoclist` liste les adresses MAC associées au point d'accès, ce qui permet de vérifier en trois secondes qui est réellement connecté. Sur Atheros, l'équivalent passe par `iwconfig` et `wl` n'existe pas.
L'onglet Administration puis Commands enregistre des scripts de démarrage et de pare-feu directement en NVRAM. C'est là que se logent les règles iptables personnalisées ou les options dnsmasq supplémentaires, par exemple une ligne `address=/telemetrie.exemple/0.0.0.0` qui renvoie un domaine vers le vide pour tout le réseau. Activer JFFS2 dans le même onglet libère une partition inscriptible pour les fichiers plus volumineux.
- Client et serveur OpenVPN, WireGuard sur les builds récentes, PPTP et L2TP pour l'existant
- QoS par machine, par port ou par protocole, avec limitation de débit montant et descendant
- VLAN taggés sur les ports du switch intégré, utile pour isoler un réseau invité ou de la vidéosurveillance
- Modes client bridge, repeater bridge et WDS pour étendre un réseau sans câble
- DNS et DHCP via dnsmasq, avec baux statiques et DNS personnalisés
- DDNS, Wake on LAN, syslog distant, statistiques de bande passante par interface
Flasher, et récupérer un routeur bloqué
La procédure raisonnable tient en quelques règles. Branchez le routeur en Ethernet, jamais en WiFi. Coupez le pare-feu du poste et fixez une IP statique dans le même sous-réseau. Réinitialisez la configuration usine avant le flash, envoyez l'image, puis attendez au minimum cinq minutes sans toucher à l'alimentation, même si l'interface semble figée. Une fois l'interface DD-WRT accessible, effacez à nouveau la NVRAM depuis Administration puis Factory Defaults : les valeurs héritées du firmware constructeur sont la première cause d'un routeur qui démarre mais reste injoignable.
La vieille manipulation dite 30/30/30, qui consiste à maintenir le bouton reset trente secondes sous tension, trente secondes hors tension puis trente secondes après rebranchement, ne doit plus être appliquée aveuglément. Sur les modèles ARM à flash NAND, elle peut corrompre la configuration au lieu de la remettre à zéro. La documentation du projet recommande une simple remise à zéro NVRAM sur ces plateformes.
Si le routeur ne répond plus, tout se joue sur le bootloader. Beaucoup de CFE et d'U-Boot ouvrent une fenêtre TFTP de trois à cinq secondes au démarrage : vous lancez `tftp -i 192.168.1.1 PUT firmware.bin` en mode binaire puis vous alimentez le routeur, et l'image passe. Sur Asus, le mode récupération s'obtient en maintenant reset pendant la mise sous tension jusqu'à ce que la LED d'alimentation clignote lentement, puis en utilisant l'outil Firmware Restoration. Quand la fenêtre TFTP est fermée ou absente, il reste le port série en 3,3 V ou le JTAG, c'est-à-dire le fer à souder.
DD-WRT face à OpenWrt, FreshTomato et Asuswrt-Merlin
La confusion la plus fréquente oppose DD-WRT et OpenWrt. Les deux descendent de la même publication de sources Linksys, mais leur philosophie diverge complètement. DD-WRT livre une image monolithique où presque tout est déjà compilé et pilotable depuis le web : vous cochez une case, la fonction est là. OpenWrt livre un système minimal et un gestionnaire de paquets, avec une configuration en fichiers texte dans /etc/config manipulables via UCI. DD-WRT demande moins de travail au départ, OpenWrt vieillit mieux parce que ses paquets se mettent à jour indépendamment du firmware.
Attention aussi à ne pas confondre DD-WRT avec la gamme matérielle WRT de Linksys, ni avec Asuswrt-Merlin, qui n'est pas un firmware de remplacement mais une version enrichie du firmware Asus officiel.
| Firmware | Configuration | Ajout de logiciels | Matériel visé |
|---|---|---|---|
| DD-WRT | Interface web, valeurs en NVRAM | Image monolithique, Entware sur clé USB | Large, Broadcom, Atheros, Marvell |
| OpenWrt | LuCI et fichiers UCI dans /etc/config | opkg, dépôt officiel très fourni | Très large, orienté matériel documenté |
| FreshTomato | Interface web, graphiques natifs | Pas de gestionnaire de paquets | Broadcom uniquement |
| Asuswrt-Merlin | Interface Asus enrichie | Entware et scripts | Routeurs Asus uniquement |
Ce que DD-WRT ne règlera pas
Il ne s'installe pas sur une box opérateur. Freebox, Livebox, Bbox et consorts ne sont pas des routeurs génériques et leur firmware est verrouillé. La solution consiste à mettre la box en mode bridge quand l'opérateur le permet, puis à placer le routeur DD-WRT derrière. Pensez alors à changer l'adresse LAN par défaut : une Livebox occupe déjà 192.168.1.1, ce qui entre en conflit direct avec DD-WRT sorti de flash.
Le calendrier de publication est déroutant. La dernière image estampillée stable, v24 SP2 (build 14929), date de 2010, et tout ce qui est sorti depuis est publié en builds datées, identifiées par un numéro de révision de la forme rXXXXX. Faire tourner une v24 de 2010 exposée sur Internet est un problème réel : la CVE-2009-2765 permettait une exécution de commandes à distance via le serveur web d'administration de cette génération. Si vous flashez, prenez une build récente et ne laissez jamais l'administration accessible depuis le WAN.
Enfin, le fameux réglage de puissance d'émission ne fait pas de miracle. Monter le TX power au maximum augmente la distorsion du signal bien avant d'augmenter la portée utile, chauffe l'étage radio, et sort du cadre réglementaire. Les limites applicables en France sont fixées par l'ARCEP à partir des décisions CEPT, en puissance isotrope rayonnée équivalente.
| Bande | Limite PIRE | Condition |
|---|---|---|
| 2400 à 2483,5 MHz | 100 mW (20 dBm) | Intérieur et extérieur |
| 5150 à 5250 MHz | 200 mW (23 dBm) | Usage intérieur |
| 5250 à 5350 MHz | 200 mW (23 dBm) | Intérieur, DFS et TPC obligatoires |
| 5470 à 5725 MHz | 1 W (30 dBm) | DFS et TPC obligatoires |
Testez vos connaissances
Quel événement a rendu possible l'existence de DD-WRT ?
Score : 0 sur 3
Questions fréquentes
Puis-je installer DD-WRT sur ma Freebox ou ma Livebox ?
Non. Les box opérateur ne sont pas des routeurs génériques, leur firmware est signé et verrouillé, et aucune n'apparaît dans la base de compatibilité du projet. La seule approche viable est de passer la box en mode bridge quand l'opérateur le propose, puis de brancher derrière un routeur du commerce flashé en DD-WRT.
DD-WRT ou OpenWrt, lequel choisir ?
Si vous voulez tout piloter depuis une interface web sans toucher à un fichier de configuration, DD-WRT est plus direct : OpenVPN, QoS et VLAN sont déjà dans l'image. Si vous comptez installer des logiciels, mettre à jour des composants indépendamment du firmware ou scripter la configuration, OpenWrt et son gestionnaire de paquets opkg sont plus adaptés sur le long terme.
Le flash annule-t-il la garantie ?
Oui dans la quasi-totalité des cas, le remplacement du firmware par un système tiers sort du cadre de la garantie constructeur. Certains fabricants tolèrent la manipulation tant que le matériel n'est pas endommagé, mais rien ne vous protège en cas de blocage. Sur un routeur encore sous garantie, mieux vaut attendre.
Comment revenir au firmware d’origine ?
Depuis l'interface DD-WRT, Administration puis Firmware Upgrade accepte l'image constructeur sur beaucoup de modèles. Quand ce n'est pas le cas, il faut passer par le mode récupération du bootloader et pousser l'image en TFTP au démarrage. Récupérez le fichier officiel correspondant à votre révision matérielle avant de commencer, pas après.
DD-WRT augmente-t-il la portée du WiFi ?
Marginalement, et pas par la puissance d'émission. Le gain réel vient plutôt du choix manuel du canal, de la largeur de canal, du mode répéteur ou pont sans fil, et d'antennes correctes. Pousser le TX power au maximum dégrade la qualité du signal et dépasse la limite de 100 mW PIRE applicable en 2,4 GHz.
Mes réglages sont-ils conservés après le flash ?
Non, et vous devez même les effacer volontairement. La NVRAM héritée du firmware constructeur contient des variables incompatibles qui provoquent des comportements erratiques, typiquement une interface web injoignable. Remettez la configuration usine avant le flash, puis une seconde fois une fois DD-WRT démarré.
À lire aussi
box internet · adresse mac · cloudflare dns 1 1 1 1 · bande passante