[LINUX] Créez un convertisseur Ethernet LAN sans fil et un routeur simple avec Raspberry Pi

TL;DR --Construisez un routeur à l'aide du LAN sans fil (wlan0) et du LAN filaire (eth0) de Raspberry Pi.

Environnement de construction

2020-09-15_blockdiag (2).png

Raspberry Pi utilise Raspberry Pi 2. Un adaptateur sans fil USB est utilisé pour la connexion LAN sans fil, mais il n'est pas nécessaire s'il s'agit d'un successeur car il est installé en standard. Puisque 2 a une connexion Ethernet de 100BASE-T, nous recommandons la dernière 4 si possible. Le système d'exploitation est Raspbian Lite installé.

Construire

La configuration initiale de Raspberry Pi est omise. Plus précisément, sshd et les utilisateurs initiaux. Cet article utilise vim, mais tout va bien.

Comme déjà décrit, le côté LAN sans fil est défini sur wlan0 et le côté LAN filaire est défini sur eth0 (par défaut).

Configuration sans fil (wlan0)

Utilisez wpa_supplicant pour configurer la connexion sans fil. Veuillez rechercher le SSID dans Texto.

sudo iw dev wlan0 scan | grep SSID

Ajoutez les paramètres réseau à wpa_supplicant.conf avec la commande suivante.

sudo sh -c 'wpa_passphrase <SSID> <Passphrase> >> /etc/wpa_supplicant/wpa_supplicant.conf'

Le mot de passe brut étant décrit dans le commentaire, il est recommandé de le supprimer après confirmation.

/etc/wpa_supplicant/wpa_supplicant.conf


network={
        ssid="SSID"
        #psk="Passphrase" #Effacer
        psk=xxxxxxxxxxx
}

Veuillez vous connecter au point d'accès sans fil avec wpa_supplicant. Je pense qu'il peut être démarré via systemd. Puisqu'il a été connecté sans aucun paramètre spécial, cela peut dépendre de l'environnement. Il suffit que l'adresse IP puisse être obtenue de l'AP par DHCP.

sudo systemctl start wpa_supplicant.service
sudo systemctl enable wpa_supplicant.service

Réglage filaire (eth0)

Définissez le segment IP du côté eth0. 192.168.21.1 est attribué à Raspberry Pi.

/etc/dhcpcd.conf


interface eth0
static ip_address=192.168.21.1/24
#static ip6_address=fd51:42f8:caae:d92e::ff/64
static routers=0.0.0.0
static domain_name_servers=0.0.0.0

Paramètres de mascarade IP

Configuré pour envoyer des paquets du côté LAN (eth0) vers le côté WAN (wlan0). Après le réglage, veuillez redémarrer une fois pour la réflexion. Bien que les paramètres soient simples ici, veuillez considérer les paramètres appropriés en tenant compte de la sécurité, etc. lors de l'utilisation en production.

/etc/rc.local


#Ajouter
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT
iptables -A FORWARD -i wlan0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE

exit 0

Installation et configuration du serveur DHCP

Créez un serveur DHCP. Installez le logiciel suivant.

sudo apt install -y isc-dhcp-server dnsmasq

Définissez la configuration. Mettez en commentaire les paramètres inutiles et supprimez les commentaires des paramètres requis. Après cela, définissez l'adresse à distribuer par DHCP. Cette fois, nous distribuerons des adresses comprises entre «192.168.21.2» et «192.168.21.99».

/etc/dhcp/dhcpd.conf


#option domain-name "example.org"; #Commenter
#option domain-name-servers ns1.example.org, ns2.example.org; #Commenter

authoritative; #Décommenter

#Ajouter
subnet 192.168.21.0 netmask 255.255.255.0 {
        range 192.168.21.2 192.168.21.99;
        option routers 192.168.21.1;
        option domain-name-servers 192.168.21.1;
        option broadcast-address 192.168.21.255;
        ignore declines;
}

Associez-vous à l'interface. Décrivez l'interface côté LAN (eth0).

/etc/default/isc-dhcp-server


INTERFACESv4="eth0"
#INTERFACESv6=""

Démarrez le serveur DHCP. Je pense que le démarrage échouera si le côté eth0 n'est pas lié. À ce stade, c'est une bonne idée de connecter le Raspberry Pi à votre PC.

sudo systemctl start isc-dhcp-server.service
sudo systemctl enable isc-dhcp-server.service

Si l'adresse est attribuée au PC sous le LAN et que vous pouvez vous connecter à Internet, l'opération réussit. Je vous remercie pour votre travail acharné.

référence

Recommended Posts

Créez un convertisseur Ethernet LAN sans fil et un routeur simple avec Raspberry Pi
Faire une minuterie de lavage-séchage avec Raspberry Pi
Fabriquez un incubateur à CO2 simple à l'aide de Raspberry PI et d'un capteur de CO2 (MH-Z14A)
Créez un thermomètre avec Raspberry Pi et rendez-le visible sur le navigateur Partie 4
Faire une boussole d'affichage kanji avec Raspberry Pi et Sense Hat
Fabriquez un thermomètre avec Raspberry Pi et rendez-le visible sur le navigateur Partie 3
Créez une caméra de surveillance WEB avec Raspberry Pi et OpenCV
Créez facilement un TweetBot qui vous informe de la température et de l'humidité avec Raspberry Pi + DHT11.
Utiliser une webcam avec Raspberry Pi
Créez un simple OMR (lecteur de feuille de marque) avec Python et OpenCV
Classique de Noël (?) Éclairage d'un arbre de Noël avec Raspberry Pi et Philips Hue
Transformez Razzpie en routeur (Wake on LAN over NAT [4])
Surveillance des animaux avec Rekognition et Raspberry pi
[Raspberry Pi] Ajouter un thermomètre et un hygromètre
Créer un environnement Tensorflow avec Raspberry Pi [2020]
Faisons un langage simple avec PLY 1
Faites fonctionner l'oscilloscope avec le Raspberry Pi
Créez un compteur de voiture avec Raspberry Pi
Détectez les signaux analogiques avec un convertisseur A / N en utilisant python sur Raspberry Pi 3!
[Python + PHP] Créez un moniteur de température / humidité / pression avec Raspberry Pi
J'ai essayé de faire un signal avec Raspeye 4 (édition Python)
Créer une socket avec une interface Ethernet (eth0, eth1) (Linux, C, Raspberry Pi)
Construction VPN simple de la passerelle IPsec avec Ubuntu 20.04 et Raspberry Pi ―― 1. StrongSwan introduit
Créez un simple générateur d'images par points avec Flask
Source compilez Apache2.4 + PHP7.4 avec Raspberry Pi et construisez un serveur Web --2 introduction PHP
Compilation croisée de Raspberry Pi et création d'un environnement de développement de débogage à distance avec VS Code
Source compilez Apache2.4 + PHP7.4 avec Raspberry Pi et créez un serveur Web ―― 1. Introduction à Apache
MQTT Radicon Car avec Arduino et Raspberry
Création d'un système de contrôle de température avec tarte aux framboises et ESP32 (3) Réception d'un fichier Python
[Pour les débutants] J'ai fait un capteur humain avec Raspberry Pi et notifié LINE!
Obtenez la température et l'humidité avec DHT11 et Raspberry Pi
Création d'un environnement distribué avec la série Raspberry PI (Partie 3: Installation et configuration de dnsmasq)
J'ai essayé de créer une API de reconnaissance d'image simple avec Fast API et Tensorflow
[Note] Utilisez un périphérique de connexion LAN filaire avec pont WiFi-Eth sur Raspberry Pi 4B
Contrôlez la lecture de musique sur un smartphone connecté à Raspberry Pi 3 et Bluetooth avec AVRCP
Créez des serveurs sur Linux et des réseaux locaux avec Raspberry Pi NextCloud et le partage de bureau
Compilez Apache2.4 + PHP7.4 avec Raspberry Pi et construisez un serveur Web --3. Utilisez MySQL
Construction VPN simple de la passerelle IPsec avec CentOS 8 et openSUSE (Raspberry Pi) --1 Introduction de StrongSwan
Construction VPN simple de la passerelle IPsec avec Ubuntu 20.04 et Raspberry Pi --2 Confirmation de connexion VPN StrongSwan
Enregistrez la température et l'humidité avec systemd sur Raspberry Pi
Essayez de créer un site Web simple avec responder et sqlite3
Apprentissage automatique avec Raspberry Pi 4 et Coral USB Accelerator
Créez un capteur de couleur à l'aide d'une tarte à la râpe et d'une caméra
IoT facile pour démarrer avec Raspeye et MESH
Créez un Slackbot simple avec un bouton interactif en python
Mesurez la température et l'humidité avec Raspberry Pi3 et visualisez avec Ambient
Ubuntu 20.04 sur raspberry pi 4 avec OpenCV et utilisation avec python
Créons une application Mac avec Tkinter et py2app
Faire un rappel de parapluie avec Raspberry Pi Zero W
Qu'est-ce que Dieu? Créez un chatbot simple avec python
Résoudre les problèmes liés à l'installation d'OpenCV sur Raspberry Pi et à la capture
Un mémorandum lors de la réalisation d'une caméra de surveillance avec Raspeye
DigitalSignage avec Raspberry Pi
Notez ce que vous voulez faire à l'avenir avec Razpai
Fabriquez une voiture robotique à conduite automatique avec Raspberry Pi3 B + et capteur de distance à ultrasons HC-SR04
J'ai essayé de créer une caméra de surveillance à détection de mouvement avec OpenCV en utilisant une caméra WEB avec Raspberry Pi
Créez un bot LINE avec GoogleAppEngine / py. Version nue simple
Un simple lecteur de musique interactif fait avec Chuck et OpenPose
Débutant Python s'ouvre et se ferme avec Raspberry Pi