OpenWRT dans mon réseau domestique

OpenWRT

Jusqu’à présent j’avais un réseau domestique assez simple : 1 Freebox mini 4K qui faisait office de routeur et gérait également mon Wi-Fi. Le problème est qu’avec le confinement et le fait de connecter plus de PCs dans toute la maison on a vite rencontré des problèmes de stabilité Wi-Fi sur la box.

Schéma basée sur la Freebox 4K
Schéma représentant mon réseau avant le confinement

Choix du routeur et mise en place d’OpenWRT

Bref, ça me trottait dans la tête depuis un petit moment et j’ai donc décidé de profiter d’une promo sur AliExpress pour acheter non pas 1 mais 2 routeurs Wi-Fi ! J’ai fait le choix de Xiaomi Redmi AC2100 pour leur rapport qualité / prix (32€ l’un !) mais surtout pour leur compatibilité avec OpenWRT. En effet, le firmware open-source s’installe facilement avec uniquement des manipulations software sans passer par la case fer à souder !

Xiaomi Redmi AC2100
Routeur Xiaomi Redmi AC2100

Le but de la manœuvre était de :

  • Remplacer le routeur de la Freebox 4K par OpenWRT.
  • Placer un Access Point à l’étage pour avoir une bonne qualité de réception (j’ai du RJ-45 qui distribue le réseau dans chaque pièce de la maison).
  • Avoir une gestion intelligente des déplacements au sein de la maison. Pour cela j’utilise le Wi-Fi 802.11r, c’est à dire le fast roaming qui permet de passer d’un AP à un autre facilement.

Configuration de la Freebox

Mon réseau sous OpenWRT
Mon réseau avec 2 routeurs OpenWRT

Concernant la Freebox, je n’ai pas encore fait le grand saut de la passer en mode bridge. Pour le moment, j’ai juste activé une DMZ qui renvoie tout sur mon routeur. J’ai sécurité les accès à mon serveur domestique en coupant les accès SSH ainsi que le gestionnaire d’administration (OpenMediaVault) grâce à la mise en place d’un VPN Wireguard.

Luci sous OpenWRT
Interface web Luci sous OpenWRT

Contrôle parental avec OpenWRT & OpenDNS

Confinement toujours, mon grand utilise de plus en plus un PC, j’ai donc mis en place un contrôle parental. Le contrôle est basé sur OpenDNS et des baux statiques liés aux adresses MAC. Pour finir j’ai également mis en place des plages horaires d’utilisation.

OpenDNS
Configuration du contrôle parental sous OpenDNS

Anti-pub avec AdBlock

La Freebox possède un anti pub mais on n’a pas la main dessus. Grace à OpenWRT, j’ai entièrement repris le contrôle sur mon anti pub en installant AdBlock directement sur le routeur.

Luci AdBlock
Interface d’AdBlock sur Luci

Monitoring

Pour monitorer tout ceci, je passe par Collectd, InfluxDB et Grafana. Le monitoring me permet notamment de visualiser les bascules entre fréquences et AP du 802.11r.

Rétrolien

[…] évoqué précédemment, j’ai une installation et un réseau domestique assez étendu, le tout propulsé par 2 […]

[…] façons de procéder, j’ai fait le choix de la performance et j’ai donc mes 2 routeurs Xiaomi Redmi AC2100 qui sont connectés ensemble via un câble […]

Commentaires

Alban

De Alban le 14 août 2020

Bonjour, j'ai essayé d'installé Openwrt sur un Redmi AC2100 mais en lançant la commande :
sudo python3 pppoe-simulator.py

J'ai une erreur au bout de quelque secondes, il ne s'affiche pas Client->Server mais :
Waiting for packets
Traceback (most recent call last):
File "pppoe-simulator.py", line 183, in
sniff(prn=packet_callback, filter="pppoed or pppoes", lfilter=isNotOutgoing)
File "/usr/lib/python3/dist-packages/scapy/sendrecv.py", line 780, in sniff
r = prn(p)
File "pppoe-simulator.py", line 63, in packet_callback
for tag in pkt[PPPoED][PPPoED_Tags].tag_list:
NameError: name 'PPPoED_Tags' is not defined

Avez-vous été confronté à ce problème ?
Merci.

Guillaume Kulakowski

Non par contre je suis passé en root pas en sudo.

Nati

De Nati le 2 décembre 2020

Hi Alban, i handle the same issue, did you solve it ?

root@nati-VirtualBox:/home/nati/ac2100-openwrt-guide-master# python3 pppoe-simulator.py
WARNING: No route found for IPv6 destination :: (no default route?). This affects only IPv6
Waiting for packets
Traceback (most recent call last):
File "pppoe-simulator.py", line 183, in
sniff(prn=packet_callback, filter="pppoed or pppoes", lfilter=isNotOutgoing)
File "/usr/lib/python3/dist-packages/scapy/sendrecv.py", line 603, in sniff
r = prn(p)
File "pppoe-simulator.py", line 63, in packet_callback
for tag in pkt[PPPoED][PPPoED_Tags].tag_list:
NameError: name 'PPPoED_Tags' is not defined

Alban

De Alban le 2 décembre 2020

Hello, I was given a workaround. I've read on internet that the firmware version I had was corrected, it didn't have this way to install openwrt anymore, maybe it was related.
Luckily, this new firmware also had a new way to install openwrt, really easier. I found a video explaining this other solution.

Guillaume Kulakowski

It's not possible to downgrade ?

Alban

De Alban le 2 décembre 2020

I tried to downgrade using the official redmi software and an older firmware file but I still had the same issue. But the new way to get access to the router to install orpnwrt is really easier.

Ricardo

De Ricardo le 7 janvier 2021

Bonsoir,
J'envisage d'installer AdGuard sur mon routeur/firewall Xiaomi, mais je ne sais pas quel package MIPS choisir.
Mon routeur dispose du même processeur que le vôtre, à savoir un Mediatek MT7621A MIPS.
Pourriez-vous me conseiller ?
Ricardo.

Guillaume Kulakowski

Franchement en dessous de 512Mo de RAM laisse tomber... AdGuard c'est top mais un gouffre en RAM.

Si tu veux quand même tester: https://downloads.openwrt.org/snapshots/packages/mipsel_24kc/packages/

Ricardo

De Ricardo le 7 janvier 2021

Je m'en doutais. Merci pour votre conseil !
Je vais me contenter de AdBlock pour l'instant !
Cordialement.

Guillaume Kulakowski

J'attends celui là pour y passer : https://forum.openwrt.org/t/add-support-for-redmi-ax6-ax3000-wi-fi-6-mesh-router/76071

Ricardo

De Ricardo le 7 janvier 2021

Moi aussi ! J'attends avec impatience un portage fiable sur Openwrt.
@+ Ricardo

Bartounet

Salut.
Ca fait longtemps que je monte moi même mes routeur firewall.
Et franchement cela fait quelques temps que je trouve Pfsense idéal.

Qu'est ce qui te fait préférer DD-WRT à Pfsense ?

Guillaume Kulakowski

C'est pas DD-WRT mais OpenWRT. Et ça tiens sur un équipement réseau de type routeur la où pfsense est plus sur un serveur non ?

cyril

De cyril le 26 janvier 2021

Bonjour,
Est-ce que une fois passer sur WRT, on peux faire du Multi-SSID et gérer les Vlans sur les diffèrent SSID ?

Merci d'avance

Guillaume Kulakowski

Tout à fait. J'ai un SSID guest avec un vlan dédié

cyril

De cyril le 26 janvier 2021

est il pourrait en faire 4 différends ?

Guillaume Kulakowski

J'ai pas testé... Mais pas sûr que tu ais une limite...

cyril

De cyril le 26 janvier 2021

Serait-il possible de faire un test avec au moins 3 SSID et me montrer a quoi ressemble cette parti d'interface. j'hésite a l'acheter mes je veux être sur que ça peux fonctionné avec ma config actuel

Merci

Guillaume Kulakowski

Je viens de faire le test avec 2 SSID et 2 VLAN concrètement isolé avec juste des passerelles très limitées et ça marche. Je viens de rajouter un 3ème SSID juste pour voir si ça passait et ça passe (pas allé plus loin dans mon tests par contre).

cyril

De cyril le 5 février 2021

Salut, je viens de recevoir mon routeur, le flash sous OpenWRT c'est bien passer.
Pour la parti multi SSID j'ai pas de problème .
Par contre pour la partie Vlan d'après ceux que j'ai vu il faudrait passer en ligne de commande avez vosu une autre solution j'ai rien trouver sur Luci comme option

Merci

Guillaume Kulakowski

Je mixe les 2 Luci et la ligne de commande

cyril

De cyril le 5 février 2021

j'ai trouvé la solution qui été toute bête il suffit de crée une interface sans protocole et comme interface physique il faut personnaliser lan1.100 (100 étant le VLAN et de rattacher le SSID a cette interface

Ricardo

De Ricardo le 11 mars 2021

Bonjour,
Je voudrais savoir comment vous utilisez le VPN Wireguard que vous avez installé sur Openwrt !
Car je l'ai installé sur ma config (qui est très proche de la vôtre) et tout semble fonctionner correctement.
Sauf que, lorsque je suis sur mon poste client connecté en VPN sur mon routeur Openwrt, je n'ai accès qu'à certains services, par exemple "ping" ou "ssh" qui fonctionnent bien.
En revanche des services comme les partages SMB ou FTP ne fonctionnent pas du tout !
Est-ce que vous rencontrez ce genre de problèmes !
PS :
Pour l'installation de Wireguard j'ai suivi la doc Openwrt (https://openwrt.org/docs/guide-user/services/vpn/wireguard/start) et deux autres tutos.
Ricardo

BJD

De BJD le 10 juillet 2023

Bonjour

J'ai pour projet de faire quasi la même structure réseau pour ma domotique:
Freebox en 192.168.0.254 et un routeur (Xiaomi R3G) sous OpenWRT pour créer un réseau Wlan en 192.168.1.x.
Le problème est que le DMZ doit être fait sur un IP 192.168.0.x et que je n'arrive pas configurer mon routeur sous OpenWRT pour avoir le port ETH1 en 192.168.0.x et le reste(Wlan) en 192.168.1.x. ...
C'est possible d'avoir des explications pour cette configuration ou tout simplement un Screenshot de l'interface sous luci-ssl pour me donner un exemple ?

BJD

BJD

De BJD le 10 juillet 2023

Oups la réponse était déjà la : https://blog.kulakowski.fr/post/openwrt-derriere-une-freebox-ipv6-dmz-et-bridge
Merci!

Les commentaires pour ce poste sont fermés.

Réseaux sociaux