1
0
contenu/blog/2021/03/09/mon-reseau/index.md

9.3 KiB
Executable File
Raw Blame History

Javais envie dhonorer une vieille tradition geek : présenter mon réseau, son architecture, son contenu, etc. Deux objectifs sont poursuivis : un objectif de mémoire - un jour, je relirai cet article avec nostalgie… - et un objectif déchange - si vous trouvez des infos intéressantes ici, ou si vous avez des idées damélioration.

Généralités

Je suis client free depuis 2004, et jai la fibre depuis mars 2023.

Infrastructure

Freebox

Ma Freebox est une Pop configurée en bridge. Je dispose dune adresse IPv4 « full-stack », demandée dès que loption était disponible, et de lIPv6 natif.

Routeur

Mon routeur est un AWOW AK34. Il dispose dun Celeron N3450, 6Go de DDR4, un SSD de 128Go et surtout, deux ports gigabit. Il est installé sous OpnSense.

Lun des ports est relié à la Freebox ; du point de vue de OpnSense, cest linterface WAN. Lautre port est relié au switch ; cest linterface LAN.

La freebox Pop permet datteindre en théorie un maximum de 5GB/s en téléchargement et 700Mb/s en envoi. En pratique, les 5Gb/s sont répartis entre les deux ports filaires 1Gb/s et le port 2.5GB/s, et le wifi.

Par conséquent, mon architecture bride doffice lensemble de mon réseau à 1GB/s en téléchargement. Je pourrais passer à 2.5Gb/s en changeant de routeur, mais je ne dépasserai pas ce débit avec la Pop.

Il faut cependant relativiser tout cela : je me suis satisfait dune connexion ADSL à 16Mb/s en téléchargement et 1Mb/s en envoi pendant très, très longtemps.

En outre, en tant quauto-hébergeur, cest surtout le débit en envoi qui mintéresse, et ce débit nest pas bridé par mon architecture.

Je note que le passage à de tels débits nest pas sans conséquences sur les performances de mon routeur. Je ne peux saturer la connexion 1Gb/s quen désactivant Suricata. Avec la protection activée, le débit plafonne à environ 250Mb/s, tout en sollicitant fortement le CPU.

Switch

Je dispose dun switch TP-Link TL-SG1016 de 16 ports.

Wifi

Jai trois Synology MR2200ac configurés en mesh. Cela confère un certain nombre davantages :

  • toute la configuration de mon réseau sans-fil se fait depuis une seule interface (ce nest pas spécifique à Synology)
  • je nai à configurer quun seul SSID sur toutes mes machines, quelles utilisent la bande de 5GHz, 2.4GHz, en wifi g, n ou ac
  • la connexion est stable, même en basculant dun point daccès à lautre

Serveur domotique

Le serveur domotique est un Kodlix GN41, doté dun Celeron N4100, de 8Go de mémoire vive et dun SSD Samsung 850 EVO de 120Go. Il fait tourner Home Assistant.

Jai intégralement conçu et manufacturé toute la domotique de mon logement. Jai dessiné les circuits imprimés, et je les ai réalisés grâce à la bonne vieille méthode du bain au perchlorure de fer, apprise plus de vingt ans plus tôt en cours de technologie…

Ma domotique est donc constituée des éléments suivants, tous construits autour dESP8266 :

  • 5 thermostats

Ils disposent de trois modes, « Présent », « Nuit » et « Absent ». Les plages horaires de chaque mode sont définies dans un calendrier spécifique à chaque thermostat. LESP8266 présent dans chaque boitier mural contrôle simplement un relais, et capte la température et lhumidité de la pièce via un SHT31-D.

  • 7 lumières, dont 6 bandeaux de LEDs et une prise Sonoff S20

Jai défini deux entrées dans Home Assistant, respectivement pour lextinction et lallumage « inconditionnel » de léclairage. Ainsi, quoiquil arrive, les lumières automatisées (certaines ne le sont pas parce que ce nest pas nécessaire) ne sallumeront jamais dans cette plage horaire (typiquement entre 2h30 et 5h45, soit entre lheure à laquelle je me couche et celle à laquelle mon épouse se lève).

En outre, les lumières automatisées ne sallument que si la luminance extérieure fournie par la station météo est en dessous dun certain seuil que je peux définir pour chacune dentre elles. Enfin, le calendrier me permet de définir les plages horaires pendant lesquelles elles doivent présenter une scène particulière. Jai défini quatre types dambiance : heures de passage (pour un éclairage à pleine puissance), éclairage normal, éclairage tamisé, et éteint.

Un bandeau de LEDs est contrôlé par un capteur de mouvement de type PIR, dont la seule dépendance est la luminance extérieure : même en présence de mouvement, il ne sallumera pas sil fait encore jour. Un autre bandeau est uniquement contrôlé par un bouton poussoir. Un dernier ne peut être contrôlé que par Home Assistant.

Au niveau électronique, chaque contrôleur pilote simplement trois MOSFETs (également des IRLZ34n), et dispose de deux entrées (pour un bouton ou un capteur de mouvement). Cest mon premier projet électronique à usage réel.

  • 2 horloges

Jaime bien avoir lheure partout où je suis. Si jai la date complète, et la température extérieure, cest encore mieux… Alors jai conçu deux horloges dotées dun écran LCD 16x2 piloté en I2C par un ESP8266. Rien de compliqué, rien qui nécessite un circuit imprimé, juste quelques câbles.

  • 1 bouton dappel

Utilisé pour que mon épouse puisse me signifier sans hurler à travers toute la maison quelle va faire dodo quand je suis enfermé dans mon bureau… Quand elle appuie sur son bouton dappel, jai une alerte sur mon tableau de bord. Un appui de ma part sur le tableau de bord éteint sa LED pour lui signifier que jarrive.

  • 1 bouton « Linge »

Pour que mon épouse puisse mindiquer sil y a du linge à étendre ou à passer au lave-linge, je lui ai créé un petit boitier logé près de la machine à laver, dérivé du bouton dappel, et doté de deux boutons et deux LEDs. Cela provoque laffichage dun avertissement sur mon tableau de bord.

Tous ces périphériques tournent sur des ESP8266. En conséquence, jai installé ESPHome qui gère tout ça via de simples fichiers de configuration yaml, et connecte le tout à Home Assistant. Ça rend tout le processus très agréable et facile à utiliser et maintenir au quotidien.

Jai également installé deux caméras sous motionEyeOS sur un Raspberry Pi 0W et un Pi 4.

Serveur principal

Mon serveur préféré (chut, ne le dites pas aux autres), cest aussi celui qui ma coûté le plus cher, mais cest le plus polyvalent. Cest un minisforum U820. Son Core i5 8259U (4c/8t @2.30GHz) est accompagné de 16Go de DDR4.

Il dispose de lUSB-C, plein de ports USB 3.0, deux ports ethernet (dont un 2.5Gbit/s), de HDMI et de Display-Port, ce qui me donnerait presquenvie de le reconvertir en machine desktop plutôt que serveur si jen avais lutilité. Mais surtout, il offre deux baies pour SSD 2.5in, ce qui en fait le meilleur candidat au poste de serveur de stockage. Je lui ai donc collé mes deux Samsung 860 EVO de 500Go. Il tourne sous NixOS.

Sa puissance mest très profitable, puisque jy fais tourner :

  • Caddy (en reverse-proxy ou serveur web direct pour mes applications disponibles depuis lextérieur de mon réseau local)
  • Gitea (ma fameuse forge logicielle)
  • PostgreSQL (stockage de toutes mes bases de données utilisées par les autres applications)
  • Redis
  • plus quelques autres services natifs et containers

Tableau de bord

Le tableau de bord que je mentionne depuis avant est un iPad Pro 10.5 de récup.

Station de travail

Ma station de travail est un Mac mini M2. Je travaille sur une TV LG 55C3 et un écran portable Arzopa de 16 pouces. Jai abandonné la souris pour un TrackPad.

Station de jeu

Consommation électrique

Je dispose dun onduleur Eaton Ellipse 1200 Pro qui présente la caractéristique intéressante de me fournir la consommation réelle de ce qui est branché dessus. Ainsi, je peux dire que lensemble de mon réseau consomment au total moins de 40W en moyenne. Je trouve que cest très satisfaisant. Londuleur pourrait ainsi fonctionner pendant deux heures sur batterie si une coupure de courant devait survenir. Largement de quoi voir venir…