RPI comme interface wifi pour un NAS

Bonjour à tous,

J’ai un raspberry pi B+ . Je souhaite l’utiliser pour connecter un NAS (QNAP TS-101) accessible depuis l’extérieur.

Le pi servirait de liaison entre la box et le NAS. (Cela évite d’avoir le NAS dans le salon :smiley:)

Je me perds dans les différents programmes à mettre en oeuvre (je suis un grand debutant)

Merci à ceux qui me permettront de mener à bien ce petit projet en me l’expliquant.

Phil

Hello,

I have a raspberry pi B+. I want to use it to connect a NAS (QNAP TS-101) accessible from outside.

The pi would serve as a link between the box and the NAS.

I get lost in the different programs to implement (I’m a complete beginner)

Thank you to those who will allow me to carry out this little project by explaining it to me.

Phil

Excuse moi, mais a la première lecture, je ne comprend pas l’objectif, mis à part que ce n’est pas logique.

Ton NAS est un Barebone, ce qui veux dire qu’il agi comme un ordinateur. Tu veux ajouter un ordinateur (RPi) sur un ordinateur (NAS) ? Ou est le but ?

De plus, le NAS est conçu pour être connecté au réseau, alors tu peux le mettre ou tu veux (dans la maison), en autant qu’il est sur le réseau.

La … si tu veux rendre le NAS Ethernet en un appareil NAS en Wifi, oublie le RPi, c’est te compliquer la vie pour rien. Il existe déjà des appareils qui peuvent convertir un cable Ethernet RJ45 en terminaison Wifi , pour le même prix qu’un RPi, et optimisé. Tu obtiendras de meilleurs performances, voir de meilleur vitesse de transfert.

Exemple :

https://www.amazon.ca/-/fr/IOGEAR-GWU637-Adaptateur-universel-Ethernet-2-WiFi/dp/B018YPWORE/ref=sr_1_6
Beau gros model à fort prix, mais existe plusieurs modèles.

Après, si tu veux créer une seul interface pour plusieurs NAS, la c’est autres choses…

Bonjour et merci pour votre réponse,

J’ignorais qu’une telle interface existât :grinning: !
Cela va faciliter mon projet.
Pour votre compréhension de ce dernier, je résume…
Box et modem dans le salon, pas moyen de passer un câble ethernet ailleurs (béton)…
Reste le wifi mais mon NAS qui a bien une interface usb,n’est pas prévu pour un dongle wifi, d’où mon idée de départ qui était de lui adjoindre un rpi qui servirait de liaison radio. J’espère être plus clair :blush:.
J’avais pensé à rasapp ou à une solution routeur mais mon RPI est vieux… comme moi !
Merci de vos réponses…

Si il n’est que USB, regarde mon projet, mais selon le model donnée, il supporte le réseau.

Ton model possède 1Gbps en port réseau, ce qui est 10x plus vite que le Raspberry. Si tu passe par ton RPi, tu va perdre de la performance, c’est assuré.

Pour le hardware (si je met lien actif, le resumé mélange l’url)https://www.qnap.com/en/product/ts-101/specs/hardware

Non, je précise… Le ts-101 est un NAS qui rejoint parfaitement un réseau ethernet comme le montre la fiche hardware.
Ce que je veux c’est avoir la même chose qu’en ethernet … mais en WIFI… d’où mon idée RPI…
même si je perds en performances.

Je me répète, mais la solution passe pas par le RPi. Passe par un adaptateur de Ethernet à Wifi.

  • C’est pratiquement du PnP, selon le model
  • Le NAS serais sur le réseau en quelques secondes, avec un RPi tu devra attendre le boot, chargement des modules…
  • Peux de chance de « planter » comparativement au RPi, et dans ce cas tu devras « debug ».

Je vois aucun avantage d’utiliser un RPi, car tu va handicaper la vitesse, augmenter le latency. Utiliser un fichier directement de la source sera long et pénible; oublie la lecture de fichier vidéo par exemple, le RPi tiendra pas la vitesse et la constante.


Mais si tu tien à faire avec un RPi, la théorie que tu dois examiner est comment faire un pont entre le Ethernet, ou est le NAS et le Wifi que ton RPi utiliseras. Ton NAS au RPi via le port Ethernet, tu va descendre la vitesse de 1Gbps à 100Mbps. Après, si tu te connect à ton réseau via Wifi, tu descend la vitesse à 54Mbps.

Ta vitesse théorique maximal de transfert sera alors de 3~5Mo/s comparativement à 75~100Mo/s en lien direct (25 fois moins vite). En passant via un adaptateur Ethernet à WIfi, en choisissant un model N tu atend de bien meilleur vitesses.

Je suis parfaitement conscient de la baisse énorme de vitesse.
Mais je persiste et te demande quelle est la démarche ou les démarches a effectuer pour mettre en oeuvre ce bridge…tant du côté RPI que du côté NAS.
Merci pour tes conseils pertinents

hello,

tu peux essaye d’adapter ton système à partir de ce tuto.
(Easy Raspberry Pi WiFi Bridge - Pi My Life Up)
a minima il faudra revoir les règles du firewall et adapter le routage.

Pour info il y a deux solutions pour transformer un raspberry en routeur le NAT ou le bridge.
. le NAT c’est la solution du tuto.
. le bridge c’est regrouper deux interfaces sur une seule. malheureusement et si j’ai bien compris, sur le raspberry, il faut passer l’interface wifi (wlan0) en mode « AP » (en Point d’Accès - ça peut se faire via hostap) pour « bridger » wlan0 et eth0 et comme ta box ne doit pas savoir devenir un client du réseau générer par cet AP ça devient indemerdable. en théorie il te faudrait un autre raspberry en routeur entre ta box (sur eth0) et ton raspberry en AP (via wlan0 ) en NAT. bonjour les temps de réponse !

erratum : il doit être possible de faire un bridge avec l’interface wifi en utilisant ebtables
(fr/BridgeNetworkConnections - Debian Wiki)

donc le pur bridge pas réaliste mais formateur lol et le NAT à tester en faisant gaffe au paramétrage du firewall, au routage des postes de ton réseau et si les temps de réponse restent correct !

source :
https://wiki.debian.org/fr/BridgeNetworkConnections

Merci…

Ben… je me mets au boulot :grinning:
Je reviendrai pour témoigner
à bientôt

Hello,
Bon j’ai essayé le tuto mais j’ai dû abandonné faute de comprendre ce que l’on me demandait (on ne rit pas svp :sleepy:)
J’ai donc cherché et j’ai trouvé cela: https://www.moyens.net/tech/comment-transformer-votre-raspberry-pi-en-pont-wi-fi/
MAIS JE NE SAISIS PAS BIEN LE POURQUOI DE CES LIGNES…

interface eth0

static ip_address=192.168.220.1/24 (pourquoi 220 ?)

static routers=192.168.220.0


interface=eth0

listen-address=192.168.220.1

bind-interfaces

server=8.8.8.8. IL NE MANQUE PAS 1.1.1.1 ?**

domain-needed. ???

bogus-priv C’EST QUOI ???

CE QUI SUIT M’EST DIFFICILEMENT COMPREHENSIBLE
sudo iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE

sudo iptables -A FORWARD -i wlan0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT

sudo iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT

UNE BONNE AME PEUT-ELLE M’EXPLIQUER PAS à PAS CE QUE TOUT CELA SIGNIFIE ??

MERCI d’avance pour votre courage :crazy_face:

Bon, ça c’est un élément de base du réseau.

Tu as ton réseau actuel, il es basé sur 192.168.1 ou 192.168.0. Tu te connecte via le Wifi à ton réseau principal, alors tu laisse la configuration de base.
Tu dois créer un réseau pour ton RPi et ton NAS, alors pour éviter la confusion des deux, tu va le créer en 192.168.220 (le 220 en fait, c’est au choix, tu peux prendre tout entre 2 et 255, tu évite le 0 et le 1 vu que c’est l’un de ces deux choix qui est ton réseau principal)

Vu que ton NAS est relié via le port ETH de ton RPi, tu dois dire à ce port que son adresse est statique; 192.168.220.1 . Un Gateway (Routeur) qui fournis le DHCP (gestion des adresses IP et hostnames) est habituellement sur le ip finissant par 1. Ce qui simplifie la connexion et la gestion pour le système (et toi).

Et le IP finissant par .0 est pour limiter sont utilisation et créer un loop (en très simple).

Bon, ici ont est pour ton internet et non ton réseau, tu défini ici le MASTER NAME SERVER, c’est le système qui permet de changer le « domaine.com » en « 123.234.213.123 » par exemple. Les adresses de Google sont 8.8.8.8 et 8.8.4.4 .
Le « . » à la fin est pour dire que l’adresse fini … là.

En gros, ici c’est des règles pour dire que les connections réseau sont redirigé.

  • Première ligne, tu va créer un réseau de type NAT avec WLAN0.
  • Second, tu va rediriger tout les entrées de WLAN0, sur ETH0 si son état est étable ou relié.
  • Le dernier est pour passer toutes les demandes de ETH0 vers WLAN0 sans restriction.

Ton réseau principal est 192.168.0.? ou 192.168.1.? alors ton ordinateur est par exemple 192.168.0.101 ou 192.168.1.101 . Ton RPi si connecte via le WIFI (WLAN0) et obtient une adresse de ce réseau de manière automatique. (DHCP)

Ton RPi va créer un réseau via le port ETHERNET et le définir en 192.168.220.?, pour offrir le lien et la gestion, il va ce définir sur ce réseau l’adresse 192.168.220.1 sur le port ETH0.

Ton NAS tu le connecte via le port ETHERNET du RPi, il va parler avec lui et ce connecter. Entre le RPi et le NAS, une adresse IP sera utilisé, mais toi, tu dois te connecter avec le IP que le RPi à sur ton réseau principal, par exemple 192.168.0.102 ou 192.168.1.102.

Wahouu
Explications très claires :partying_face:
Vraiment merci et bravo.
Je vais tester cela dès demain.
Si je résume la fin, pour joindre Mon Nas je dois chercher le rpi…
Je reviendrai …promis.

J’ai pas pu attendre !!!

J’ai suivi le tuto à la lettre mais : pas moyen de joindre le NAS:
Ma box me donne une adresse au RPI (192.168.0.28):
je lance le service dnsmasq sur mon mac je tape l’adresse du rpi: impossible
Il doit me manquer quelque chose mais quoi:
Dois-je d’abord connecter mon NAS sur ma box et le paramétrer avec une adresse fixe en 192.168.220.XXX ??
Je sèche.
J’ai branché mon mac à l’arrière de l’ethernet du rpi. J’obtiens bien une adresse en 220.XX par contre pas moyen d’aller sur le net ( ce que m’affirme pourtant le tuto)…
Si tu as une idée (ou plusieurs…)
J’ai tenté de joindre le propriétaire du tuto mais son site n’envoie pas les commentaires et son formulaire de contact plante :roll_eyes:

Malheureusement, je n’ai jamais eu a tenter en pratique ce type de manœuvre car j’en ai jamais eu besoin. Et c’est pour cette raison que je déconseillais ce type de configuration au départ. Faut toujours aller au plus simple, éviter de ce compliquer la vie.

Mais voici quelques pistes

  • Le service iptable est désactivé par défaut, assure toi que le service est actif.
  • Le service iptable doit sauvegarder les consigne, quand tu en ajoute, pense à faire la commande de sauvegarde des consignes, sinon au reboot, il prendra celle déjà enregistré (et donc, par défaut)
  • Fait des pings du Mac (eurk, pauvre toi*) vers le RPi. De trouver un port scanneur pour voir si les ports sont ouverts.
  • Faire des pings du RPi vers le NAS et des tests depuis le RPi sur les connections vers le NAS.
  • Ton NAS peut ne pas être compatible avec une configuration de type NAS car le ip qu’il ce voit (192.168.200.?) n’est pas celui que le demandeur informe (192.168.0.?). Je sais que Samba (SMB), le partage Windows, est l’un des services pouvant contrôler les appels, il faudrait alors éditer la configuration pour corriger ça. (c’est le problème du « bind address », c’est que les services peuvent avoir plusieurs adresses d’écoute, et de ce limiter à ce dernier, comme tu as des services qui réponde à « localhost » et ignorer ce qu’y vient de l’extérieur. Mais il est possible de le faire avec un ip spécifique ou un sous host (écouter depuis 192.168.220.10 ou écouter tout les adresses commençant par 192.168.220). Habituellement pour contourner ce problème, ont remplace par « 0.0.0.0 ».

Un Mac c’est un jouet, un système limité et bridé. Si le Mac aime pas quelque chose, il va te bloquer sans rien te dire. Tout est prétexte à sécurité (abusive) et contrôle de es actions.

Si tu tente de joindre un service basé Windows, comme Samba, il faut peut-être déjà jouer dans les sécurités. Après peut-être que certain certificats de sécurité sont requis, comme dans le cas du HTTPS. Il a 3 versions de Samba et linux est compatible avec la version 1, difficilement le 2 et en implantation le 3. Sous Windows 7+, il faut idéalement installer l’élément facultatif de la compatibilité Samba 1.0/1.1.

Je suis TI dans une compagnie et seul les mac (ou presque) cause des soucis, tant que pour les utilisateurs que l’équipe TI.

Comment je m’en assure ? (C’est basique je sais mais suis un GD Grand Débutant)

Ce n’est pas ce que " sudo iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
sudo iptables -A FORWARD -i wlan0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT" est censé faire ?

Ca ça marche…

Avec angry Ip scanner par exemple ?

Dans ce cas je demarre avec « startx » et le NAS branché Comme il faut passer par un browser je pense le trouver . J’essayerai ce soir.

Ca , j’ai pas vraiment compris :upside_down_face:

Je vais essayer avec windows 10 … au cas où

Encore merci

  • Pour t’assurer que les services requis sont la, fait cette commande : sudo apt install iptables-persistent . Pour contrôler le service; sudo service iptables [start|stop|restart]
  • Sauvegarder les règles : iptables-save
  • Un port scanneur, l’idée est de voir quel port du RPi/NAS qui est ouvert.
  • Tu as mis un bureau sur le RPi ? Tu veux vraiment handicaper et compliquer ton projet… ton projet va mieux aboutir avec le Raspbian OS Lite
  • Pour le gros segment que tu ne comprend pas, c’est que un service peut écouter sur une adresse IP en particulier. Par exemple; j’ai un serveur internet avec 2 adresse ip, disont 100.25.25.1 et 100.25.25.2, je peux configurer un dire à un service quelconque que seul les connection sur l’adresse 100.25.25.1 sont à servir, si quelqu’un rejoin le service via 100.25.25.2, le service va l’ignorer. Dans Samba par exemple (partage de fichier Windows) dans le document de config; /etc/samba/smb.conf tu as c’est ligne qui te l’explique. (ceci est la config par défaut sous Raspbian)

#### Networking ####
# The specific set of interfaces / networks to bind to
# This can be either the interface name or an IP address/netmask;
# interface names are normally preferred
; interfaces = 127.0.0.0/8 eth0

# Only bind to the named interfaces and/or networks; you must use the
# 'interfaces' option above to use this.
# It is recommended that you enable this feature if your Samba machine is
# not protected by a firewall or is a firewall itself. However, this
# option cannot handle dynamic or non-broadcast interfaces correctly.
; bind interfaces only = yes

si j’ai bien compris et mis a part les problèmes de firewall déjà expliqués par levelKro tu dois avoir aussi un problème de routage:

ton Rpi est en 192.168.0.X sur wlan0 et en 192.168.200.X sur eth0
pour accéder à la box le NAS en 192.168.200.X doit avoir la route ( default route ) qui lui permet d’atteindre l’internet.

sa default route sera via l’adresse eth0 du Rpi.( donner par le dnsmasq sur le Rpi ou par un autre DHCP - paquet isc-dhcp-server )
sur le Rpi en 192.168.0.X la default route sera via la box la box ( la box le gère )

dans l’autre sens pour que les postes de ton réseau atteigne le NAS il va aussi falloir leur indiquer le chemin:
sur un poste la route vers le NAS se fera via l interface wlan0 du Rpi
sur le rpi on ajoutera la route vers le NAS sur Eth0 (avec une adresse fixe - static )

source :

chapitre sur Debian mettre le paramétrage de eth0 dans :
/etc/network/interfaces.d/eth0 plutot que dans /etc/network/interfaces comme indiqué ds ce tuto

https://www.cyberciti.biz/faq/ip-route-add-network-command-for-linux-explained/

https://stackdata.fr/commande-pour-definir-une-route-sous-macos/

Merci Bof,

Je vais me triturer un peu plus les méninges. Vous savez, c’est pas évident pour un GD :woozy_face:

Je te rassure même après pas mal d’années de pratique on en apprend encore ! et c’est tant mieux ! :wink:

On progresse!!!

Apparemment j’ai des réponses du RPI:

phil@raspberrypi:~ $ ip r
default via 192.168.220.0 dev eth0 src 192.168.220.1 metric 202
default via 192.168.0.1 dev wlan0 proto dhcp src 192.168.0.28 metric 303
192.168.0.0/24 dev wlan0 proto dhcp scope link src 192.168.0.28 metric 303
192.168.220.0/24 dev eth0 proto dhcp scope link src 192.168.220.1 metric 202

Mais je n’arrive pas à joindre le NAS qui a en principe une ip par défaut
« http://169.254.100.100:6000 »

Je continue :smiley: à chercher…