Différences entre versions de « SuperPi-router-configuration »
(68 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 3 : | Ligne 3 : | ||
== Introduction == | == Introduction == | ||
− | + | Le routeur est constitué d'un Raspberry-Pi 4 exécutant le logiciel OpenWrt depuis une carte SD. | |
− | [[Fichier:Raspberry-Pi-4-1Go.png|320px]] | + | Une deuxième interface réseau est ajoutée pour pouvoir séparer le réseau SuperPi (192.1l8.10.x) du réseau externe/domestique (192.168.11.x) . |
+ | |||
+ | [[Fichier:Raspberry-Pi-4-1Go.png|320px]] <font style="font-size: xxx-large">+</font> [[Fichier:SuperPi-usb-ethernet.jpg|320px]] | ||
+ | |||
+ | Enfin, le routeur assurera aussi l'accès à Internet par l'intermédiaire de son interface WiFi (c'est très pratique). | ||
+ | |||
+ | [[Fichier:SuperPi-router-config-interface.jpg]] | ||
== Installer == | == Installer == | ||
Ligne 76 : | Ligne 82 : | ||
[[Fichier:SuperPi-router-configuration-05.png]] | [[Fichier:SuperPi-router-configuration-05.png]] | ||
− | === Accès à Internet === | + | === Accès à Internet (via WiFi) === |
La première opération consiste à activer le réseau WiFi et connecter OpenWrt sur un routeur domestique (pour avoir accès à Internet). | La première opération consiste à activer le réseau WiFi et connecter OpenWrt sur un routeur domestique (pour avoir accès à Internet). | ||
Ligne 86 : | Ligne 92 : | ||
[[Fichier:SuperPi-router-configuration-06.png]] | [[Fichier:SuperPi-router-configuration-06.png]] | ||
− | Dans | + | Dans la page "Wireless": |
* Activer l'interface WiFi | * Activer l'interface WiFi | ||
* Connecter l'interface comme "Client" sur un réseau WiFi existant | * Connecter l'interface comme "Client" sur un réseau WiFi existant | ||
Ligne 98 : | Ligne 104 : | ||
=== Installer le Pilote RTL8152 === | === Installer le Pilote RTL8152 === | ||
− | + | Rendez-vous dans le point de menu "'''System --> Software'''", ce qui permettra d'installer les pilotes RTL8152 (de la clé USB-Ethernet). | |
[[Fichier:SuperPi-router-configuration-10.png]] | [[Fichier:SuperPi-router-configuration-10.png]] | ||
Ligne 108 : | Ligne 114 : | ||
[[Fichier:SuperPi-router-configuration-11.png]] | [[Fichier:SuperPi-router-configuration-11.png]] | ||
− | + | L'installateur s'occupe également de télécharger les dépendances nécessaires. | |
+ | |||
+ | Une fois le pilote installé, vous pouvez redémarrer le système via le point de menu "'''System --> Reboot'''" | ||
+ | |||
+ | === Activer Eth1 === | ||
+ | Brancher le convertisseur USB-Ethernet sur le Raspberry Pi et brancher cette interface sur un réseau Ethernet. | ||
+ | |||
+ | {{tmbox | type = speedy | text = OpenWrt ne détectera pas l'interface s'il n'y a pas de réseau Ethernet actif sur celle-ci. }} | ||
+ | |||
+ | Rendez-vous sur la page "'''Network --> Interfaces'''" et sélectionner le volet "'''Devices'''". | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-20.png]] | ||
+ | |||
+ | Dans le volet "Devices", cliquez sur le bouton "'''Add device configuration...'''" | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-21.png]] | ||
+ | |||
+ | Dans l'écran de configuration du nouveau périphérique, sélectionner l'interface "'''Eth1'''" sans modifier les options avancées. | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-22.png]] | ||
+ | |||
+ | Une fois ajouté, le périphérique "'''Eth1'''" est visible dans la liste. | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-23.png]] | ||
+ | |||
+ | Cliquer sur le bouton "Save & Apply" pour sauvegarder ce changement dans la configuration. | ||
+ | |||
+ | == Configuration Eth1 == | ||
+ | L'interface Eth1 se trouve sur le réseau du SuperPi. Le router dispose également d'un accès internet par l'intermédiaire de la connexion WiFi. | ||
+ | |||
+ | Cette section va se concentrer sur la configuration d'Eth1 et permettre au réseau SuperPi d'avoir accès à Internet (cela sera nécessaire pour faire les mises-à-jour des noeuds). | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-29.jpg]] | ||
+ | |||
+ | Pour tester cette configuration, nous allons utiliser la '''station de contrôle''' et tester la connectivité vers Internet par l'intermédiaire du router. | ||
+ | |||
+ | === DHCP sur ETH1 === | ||
+ | Dans un premier temps de cette configuration: | ||
+ | * Le service DHCP sera activé sur ETH1. | ||
+ | * La '''station de contrôle''' (RPI 5) utilisera le service DHCP pour obtenir son adresse IP. | ||
+ | |||
+ | Commençons par configurer l'interface du réseau SuperPi et relions le sur Eth1. | ||
+ | |||
+ | Sélectionner le menu '''Network --> Interfaces''' puis cliquer sur le bouton [Add new interfaces...] | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-30.png]] | ||
+ | |||
+ | Saisir '''lan_superpi''' associé au périphérique '''eth1''' avec le protocol "Static address" (puisque cette interface dispose d'une adresse fixe). | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-31-v2.png]] | ||
+ | |||
+ | Par la suite, revenir dans les détails de l'interface '''lan_superpi''' pour éditer et poursuivre la configuration. | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-32.png]] | ||
+ | |||
+ | Dans le volet "Firewall Settings", l'interface '''lan_superpi''' est rattaché à la zone "lan" (verte) | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-33.png]] | ||
+ | |||
+ | Dans un premier temps, nous allons activer le service DHCP ce qui permettra d'initialiser facilement l'adresse IP mais '''aussi les informations DNS'''. | ||
+ | |||
+ | J'ai aussi réduit la gamme d'adresse IP entre "10" et "50". | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-34.png]] | ||
+ | |||
+ | La configuration avancée confirme l'utilisation du service DHCP. | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-35.png]] | ||
+ | |||
+ | === Station de contrôle en DHCP === | ||
+ | |||
+ | Pour tester la configuration du routeur, nous allons utiliser un Raspberry-Pi 5 dans son boîtier [http://52pi.com/ 52pi.com] sur lequel est installé la dernière version de Raspberry-Pi OS. | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-40.jpg|800px]] | ||
+ | |||
+ | Pour tester la connectivité: | ||
+ | # Désactiver le WiFi du Raspberry-Pi | ||
+ | # Configurer la connection Ethernet comme ci-dessous: | ||
+ | |||
+ | Sélectionner l'outil de configuration des connexions: | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-41.png]] | ||
+ | |||
+ | Dans la fenêtre de gestion des connexions, sélectionner la "Connection filaire" puis cliquer sur l'icône de configuration | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-42.png]] | ||
+ | |||
+ | Dans l'écran de paramètre, sélectionner le volet concernant IPv4 | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-43.png]] | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-44.png]] | ||
+ | |||
+ | |||
+ | Après un redémarrage pour être certain de la prise en charge des nouveaux paramètres, c'est le moment de tester la connectivité Internet. | ||
+ | |||
+ | La capture ci-dessous démontre la navigation sur YouTube | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-45.png|800px]] | ||
+ | |||
+ | === Station de contrôle en IP Fixe === | ||
+ | |||
+ | Maintenant que nous savons qu'il est possible d'accéder à Internet avec une configuration Dynamique (DHCP), c'est le moment de passer en IP Fixe sur l'adresse 192.168.10.10 | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-29.jpg]] | ||
+ | |||
+ | Lors du test en DHCP, la commande 'cat /etc/resolv.conf' indique que la résolution DNS passe par le routeur (192.168.10.1) | ||
+ | |||
+ | <nowiki># Generated by NetworkManager | ||
+ | search lan | ||
+ | nameserver 192.168.10.1 | ||
+ | </nowiki> | ||
+ | |||
+ | Sélectionner l'outil de configuration des connexions: | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-41.png]] | ||
+ | |||
+ | Dans la fenêtre de gestion des connexions, sélectionner la "Connection filaire" puis cliquer sur l'icône de configuration | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-42.png]] | ||
+ | |||
+ | Dans l'écran de paramètre, sélectionner le volet concernant IPv4. | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-43.png]] | ||
+ | |||
+ | Configurer la connexion en adresse IP Fixe: | ||
+ | # Sélectionner la méthode "manuel" (adress IP Fixe) | ||
+ | # Ajouter un addresse IP Fixe (avec le masque, et le routeur comme passerelle). | ||
+ | # Enfin l'adresse du routeur est également utilisé comme "Serveur DNS" | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-50.png]] | ||
+ | |||
+ | Après redémarrage et test, l'accès aux vidéos YouTube est toujours possible :-) | ||
+ | |||
+ | == Pont SSH (Eth0) --> Station Contrôle (Eth1) == | ||
+ | |||
+ | La [[SuperPi-network-direct|connexion PC Direct]] permettait de à un PC du réseau local de contacter le router. | ||
+ | |||
+ | A noter que le router est accessible via ssh (port 22) à l'aide de la commande: | ||
+ | |||
+ | <nowiki>ssh root@192.168.11.1</nowiki> | ||
+ | |||
+ | [[Fichier:SuperPi-eth1-direct-config2-v2.png]] | ||
+ | |||
+ | Dans cette section, la configuration sera altérée afin de permettre au PC du réseau local de contacter la station de contrôle de SuperPi. | ||
+ | |||
+ | Dans l'exemple ci-dessous, la flèche orange met en lumière la fonctionnalité souhaitée lorsque, par exemple, il faut contacter la station de contrôle. | ||
+ | |||
+ | [[Fichier:SuperPi-router-configuration-60.png|800px]] | ||
+ | |||
+ | La solution consiste a router le port 2222 du routeur vers la station de contrôle (192.168.10.10) sur le port 22. | ||
+ | |||
+ | De la sorte, l'instruction ci-dessous permet de contacter la station de contrôle en ssh: | ||
+ | |||
+ | <nowiki>ssh pi5@192.168.11.1 -p 2222</nowiki> | ||
+ | |||
+ | Voici comment configurer la redirection du port | ||
+ | |||
+ | Sélectionner le point de menu '''Network --> Firewall''' pour accéder à la page Firewall. | ||
+ | |||
+ | Puis sélectionner le volet '''Port Forwards'''. | ||
+ | |||
+ | [[Fichier:SuperPi-router-config-60.png]] | ||
+ | |||
+ | Dans le volet '''Port Forwards''', cliquer sur le bouton '''[Add]''' pour ajouter une nouvelle règle. | ||
+ | |||
+ | [[Fichier:SuperPi-router-config-61.png]] | ||
+ | |||
+ | Configurer la nouvelle règle comme ci-dessous: | ||
+ | |||
+ | [[Fichier:SuperPi-router-config-62.png]] | ||
+ | |||
+ | Voilà, je peux maintenant me connecter depuis mon ordinateur personnel vers la station de contrôle (via SSH) | ||
== Ressources == | == Ressources == | ||
* [https://youtu.be/fOYmHPmvSVg?si=S5nkypDrHKnJr8lG How to build a Router with a Raspberry Pi and managed Switch VLANs with OpenWrt] (YouTube) | * [https://youtu.be/fOYmHPmvSVg?si=S5nkypDrHKnJr8lG How to build a Router with a Raspberry Pi and managed Switch VLANs with OpenWrt] (YouTube) | ||
* [https://openwrt.org/docs/guide-quick-start/starterfaq OpenWrt Starter FAQ] | * [https://openwrt.org/docs/guide-quick-start/starterfaq OpenWrt Starter FAQ] | ||
+ | * [https://www.karlrupp.net/en/computer/nat_tutorial NAT - Network Address Translation] NAT with Linux and iptables par karlrupp | ||
{{SuperPi-TRAILER}} | {{SuperPi-TRAILER}} |
Version actuelle datée du 3 septembre 2024 à 22:11
Introduction
Le routeur est constitué d'un Raspberry-Pi 4 exécutant le logiciel OpenWrt depuis une carte SD.
Une deuxième interface réseau est ajoutée pour pouvoir séparer le réseau SuperPi (192.1l8.10.x) du réseau externe/domestique (192.168.11.x) .
Enfin, le routeur assurera aussi l'accès à Internet par l'intermédiaire de son interface WiFi (c'est très pratique).
Installer
Rendez-vous sur openWrt.org et téléchargez le firmware "factory" pour votre Raspberry-Pi.
Utiliser RPi-Imager pour graver le système d'exploitation sur une carte micro-SD.
Au premier démarrage = Configuration par défaut:
- il n'y a pas de mot de passe pour l'utilisateur root
- le serveur WEB d'OpenWrt est actif sur l'interface Ethernet (eth0) à l'adresse 192.168.1.1
Cette configuration par défaut présente plusieurs problèmes:
- l'adresse 192.168.1.1 est souvent déjà utilisée (par la box internet)
- L'interface réseau USB-EThernet additionnelle (Realtek RTL8152) n'est pas installée car il n'y a pas de pilote.
- Enfin, pas facile d'accéder à l'interface WEB s'il y a changement de range IP (et forcement hors du range du réseau).
Changer l'IP Statique
Nous allons commencer par modifier l'IP Statique de 192.168.1.1 vers 192.168.11.1 .
Cela permettra alors d'utiliser "accès PC Direct" pour poursuivre la configuration via un ordinateur et l'interface WEB d'OpenWrt.
Il sera nécessaire de se connecter à l'aide d'un câble console (USB-Serie) sur l'UART du Rapsberry-Pi.
Démarré un programme terminal (Putty) puis établir cette connexion à 115.200 bauds.
Enfin, démarrer le Raspberry-Pi.
Il convient de changer le mot-de-passe dès que possible avec la commande passwd .
Modifier la configuration réseau avec l'éditeur 'vim'.
vim /etc/config/network
Dans la section "config interface 'lan'", modifier l'entrée "option ipaddr" pour fixer l'adresse à "192.168.11.1" .
config interface 'loopback' option device 'lo' option proto 'static' option ipaddr '127.0.0.1' option netmask '255.0.0.0' config globals 'globals' option ula_prefix 'fd38:6ed0:8214::/48' config device option name 'br-lan' option type 'bridge' list ports 'eth0' config interface 'lan' option device 'br-lan' option proto 'static' option ipaddr '192.168.11.1' option netmask '255.255.255.0' option ip6assign '60'
Saisir la commande reboot pour redémarrer OpenWrt.
Passer sur l'interface WEB
En utilisant une connexion PC directe tel que détaillée dans l'article "accès PC Direct", l'interface OpenWrt est accessible en saisissant l'adresse IP 192.168.11.1 depuis le navigateur Web de mon ordinateur.
Accès à Internet (via WiFi)
La première opération consiste à activer le réseau WiFi et connecter OpenWrt sur un routeur domestique (pour avoir accès à Internet).
Cette connexion Internet est vitale pour pouvoir installer des pilotes (ci-dessous). |
Sélectionner le point de menu "Network --> Wireless" .
Dans la page "Wireless":
- Activer l'interface WiFi
- Connecter l'interface comme "Client" sur un réseau WiFi existant
Une fois connecté sur le réseau WiFi, l'écran de configuration doit ressembler à ceci:
Dans l'exemple ci-dessus, le réseau WiFi sur lequel le Raspberry-Pi est connecté s'appelle ici "ATCG103".
Installer le Pilote RTL8152
Rendez-vous dans le point de menu "System --> Software", ce qui permettra d'installer les pilotes RTL8152 (de la clé USB-Ethernet).
Dans la page software:
- Saisir "rtl8152" dans la zone de filtre et presser le bouton [Update lists...]
- Dans la liste mise-à-jour, presser le bouton [Install] pour installer le pilote
L'installateur s'occupe également de télécharger les dépendances nécessaires.
Une fois le pilote installé, vous pouvez redémarrer le système via le point de menu "System --> Reboot"
Activer Eth1
Brancher le convertisseur USB-Ethernet sur le Raspberry Pi et brancher cette interface sur un réseau Ethernet.
OpenWrt ne détectera pas l'interface s'il n'y a pas de réseau Ethernet actif sur celle-ci. |
Rendez-vous sur la page "Network --> Interfaces" et sélectionner le volet "Devices".
Dans le volet "Devices", cliquez sur le bouton "Add device configuration..."
Dans l'écran de configuration du nouveau périphérique, sélectionner l'interface "Eth1" sans modifier les options avancées.
Une fois ajouté, le périphérique "Eth1" est visible dans la liste.
Cliquer sur le bouton "Save & Apply" pour sauvegarder ce changement dans la configuration.
Configuration Eth1
L'interface Eth1 se trouve sur le réseau du SuperPi. Le router dispose également d'un accès internet par l'intermédiaire de la connexion WiFi.
Cette section va se concentrer sur la configuration d'Eth1 et permettre au réseau SuperPi d'avoir accès à Internet (cela sera nécessaire pour faire les mises-à-jour des noeuds).
Pour tester cette configuration, nous allons utiliser la station de contrôle et tester la connectivité vers Internet par l'intermédiaire du router.
DHCP sur ETH1
Dans un premier temps de cette configuration:
- Le service DHCP sera activé sur ETH1.
- La station de contrôle (RPI 5) utilisera le service DHCP pour obtenir son adresse IP.
Commençons par configurer l'interface du réseau SuperPi et relions le sur Eth1.
Sélectionner le menu Network --> Interfaces puis cliquer sur le bouton [Add new interfaces...]
Saisir lan_superpi associé au périphérique eth1 avec le protocol "Static address" (puisque cette interface dispose d'une adresse fixe).
Par la suite, revenir dans les détails de l'interface lan_superpi pour éditer et poursuivre la configuration.
Dans le volet "Firewall Settings", l'interface lan_superpi est rattaché à la zone "lan" (verte)
Dans un premier temps, nous allons activer le service DHCP ce qui permettra d'initialiser facilement l'adresse IP mais aussi les informations DNS.
J'ai aussi réduit la gamme d'adresse IP entre "10" et "50".
La configuration avancée confirme l'utilisation du service DHCP.
Station de contrôle en DHCP
Pour tester la configuration du routeur, nous allons utiliser un Raspberry-Pi 5 dans son boîtier 52pi.com sur lequel est installé la dernière version de Raspberry-Pi OS.
Pour tester la connectivité:
- Désactiver le WiFi du Raspberry-Pi
- Configurer la connection Ethernet comme ci-dessous:
Sélectionner l'outil de configuration des connexions:
Dans la fenêtre de gestion des connexions, sélectionner la "Connection filaire" puis cliquer sur l'icône de configuration
Dans l'écran de paramètre, sélectionner le volet concernant IPv4
Après un redémarrage pour être certain de la prise en charge des nouveaux paramètres, c'est le moment de tester la connectivité Internet.
La capture ci-dessous démontre la navigation sur YouTube
Station de contrôle en IP Fixe
Maintenant que nous savons qu'il est possible d'accéder à Internet avec une configuration Dynamique (DHCP), c'est le moment de passer en IP Fixe sur l'adresse 192.168.10.10
Lors du test en DHCP, la commande 'cat /etc/resolv.conf' indique que la résolution DNS passe par le routeur (192.168.10.1)
# Generated by NetworkManager search lan nameserver 192.168.10.1
Sélectionner l'outil de configuration des connexions:
Dans la fenêtre de gestion des connexions, sélectionner la "Connection filaire" puis cliquer sur l'icône de configuration
Dans l'écran de paramètre, sélectionner le volet concernant IPv4.
Configurer la connexion en adresse IP Fixe:
- Sélectionner la méthode "manuel" (adress IP Fixe)
- Ajouter un addresse IP Fixe (avec le masque, et le routeur comme passerelle).
- Enfin l'adresse du routeur est également utilisé comme "Serveur DNS"
Après redémarrage et test, l'accès aux vidéos YouTube est toujours possible :-)
Pont SSH (Eth0) --> Station Contrôle (Eth1)
La connexion PC Direct permettait de à un PC du réseau local de contacter le router.
A noter que le router est accessible via ssh (port 22) à l'aide de la commande:
ssh root@192.168.11.1
Dans cette section, la configuration sera altérée afin de permettre au PC du réseau local de contacter la station de contrôle de SuperPi.
Dans l'exemple ci-dessous, la flèche orange met en lumière la fonctionnalité souhaitée lorsque, par exemple, il faut contacter la station de contrôle.
La solution consiste a router le port 2222 du routeur vers la station de contrôle (192.168.10.10) sur le port 22.
De la sorte, l'instruction ci-dessous permet de contacter la station de contrôle en ssh:
ssh pi5@192.168.11.1 -p 2222
Voici comment configurer la redirection du port
Sélectionner le point de menu Network --> Firewall pour accéder à la page Firewall.
Puis sélectionner le volet Port Forwards.
Dans le volet Port Forwards, cliquer sur le bouton [Add] pour ajouter une nouvelle règle.
Configurer la nouvelle règle comme ci-dessous:
Voilà, je peux maintenant me connecter depuis mon ordinateur personnel vers la station de contrôle (via SSH)
Ressources
- How to build a Router with a Raspberry Pi and managed Switch VLANs with OpenWrt (YouTube)
- OpenWrt Starter FAQ
- NAT - Network Address Translation NAT with Linux and iptables par karlrupp