Spisu treści:
- Kieszonkowe dzieci
- Krok 1: Konfiguracja Raspberry Pi
- Krok 2: 70-persistent-net.rules
- Krok 3: Hostapd.conf
- Krok 4: Dnsmasq.conf
- Krok 5: Interfejsy
- Krok 6: Wpa_supplicant.conf
- Krok 7: Skrypt Hostapdstart
- Krok 8: Rc.local
- Krok 9: Uruchom ponownie
Wideo: Mostek WiFi Raspberry Pi Enterprise Network: 9 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:29
Autorzy: Riley Barrett i Dylan Halland
Celem tego projektu jest umożliwienie urządzeniu IoT, takiemu jak Weemo Smart Plug, Amazon Echo, konsola do gier lub dowolne inne urządzenie obsługujące Wi-Fi, łączenie się z siecią WPA_EAP Enterprise Network za pomocą Raspberry Pi Zero W jako pakietu urządzenie przekazujące. W przypadku urządzeń łączących się z siecią firmową wymagane są dodatkowe czynności konfiguracyjne, a wiele urządzeń w ogóle nie jest zgodnych. Korzystając z mostka Wi-Fi, każde urządzenie może łatwo uzyskać dostęp do Internetu, łącząc się z Pi.
System może być zaimplementowany na jednej karcie bezprzewodowej lub dwóch osobnych kartach w zależności od wymagań użytkownika. W przypadku systemów wymagających większej siły sygnału i większych prędkości wysyłania/pobierania najlepiej jest użyć dedykowanej karty bezprzewodowej do obsługi punktu dostępowego. Jednak w przypadku systemów, w których siła sygnału i przepustowość są mniej ważne lub gdzie pożądane jest bardziej ekonomiczne rozwiązanie, punkt dostępowy i połączenie sieciowe mogą współdzielić pojedynczą kartę.
Kieszonkowe dzieci
Raspberry Pi Zero W
Dostęp do klawiatury i monitora
Trochę wiedzy o programowaniu (do celów debugowania, konfiguracji Raspberry Pi)
Zewnętrzny adapter/klucz sprzętowy WiFi (opcjonalnie)
Krok 1: Konfiguracja Raspberry Pi
Zacznij od podłączenia Pi do klawiatury i monitora (może wymagać adaptera HDMI).
Następnie możesz zacząć od wpisania polecenia:
sudo su
Zapewni to posiadanie niezbędnych uprawnień do modyfikowania plików na pi.
Teraz będziesz chciał zainstalować dnsmasq i hostapd za pomocą polecenia:
apt-get install dnsmasq hostapd
Możesz teraz rozpocząć konfigurację mostka WiFi.
UWAGA - Poniższy samouczek będzie zawierał informacje dla osób korzystających z pojedynczej wbudowanej karty bezprzewodowej zarówno dla punktu dostępowego, jak i do łączenia się z siecią. Możliwe jest również skonfigurowanie systemu do pracy na dwóch oddzielnych kartach. Aby to zrobić, po prostu poszukaj zakomentowanych linii "wlan1" w dostarczonych plikach i zastąp je sąsiednimi liniami "ap0".
Krok 2: 70-persistent-net.rules
Zacznij od znalezienia adresu MAC swojego pi, wpisując:
iw dev
Utwórz następujący plik:
nano /etc/udev/rules.d/70-persistent-net.rules
i edytuj go tak, aby zawierał następujące elementy
PODSYSTEM=="ieee80211", ACTION=="dodaj|zmień", ATTR{adres mac}=="b8:27:eb:c0:38:40", KERNEL=="phy0", / RUN+="/sbin/ iw phy interfejs phy0 dodaj ap0 type _ap", / RUN+="/bin/ip link ustaw adres ap0 b8:27:eb:c0:38:40"
Ten plik informuje system o przydzieleniu urządzenia dla punktu dostępu podczas rozruchu. Tutaj adres MAC powinien zostać zastąpiony adresem twojego własnego pi, które właśnie znalazłeś.
(Dwie karty bezprzewodowe) Ten plik nie jest wymagany w przypadku korzystania z dwóch kart bezprzewodowych.
Krok 3: Hostapd.conf
Następnie edytujesz plik hostapd.conf, wpisując:
nano /etc/hostapd/hostapd.conf
Zmodyfikuj plik tak, aby był zgodny z następującą konfiguracją:
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0 #interface=ap0 interface=wlan1 driver=nl80211 ssid=testnet hw_mode=g channel=6 wmm_enabled=0 macaddr_acl=0 auth_algs=1 wpa=2 wpa_passphrase=0123456789 wpa_keypair_mgmt_wpa_wise CCWPArs=
Zauważ, że chociaż mój kanał jest tutaj ustawiony na 6, być może będziesz musiał zmienić tę wartość, aby pasowała do kanału, na którym jest włączony wlan0. W niektórych sieciach kanał zostanie automatycznie zmieniony, aby punkt dostępu pasował do wlan0, ale nie było to moje doświadczenie w sieci korporacyjnej. Możesz sprawdzić, które kanały są aktualnie używane i przez które interfejsy, wpisując
na liście kanałów
(Dwie karty bezprzewodowe) Po prostu odkomentuj linię zawierającą wlan1 i skomentuj linię zawierającą ap0.
Krok 4: Dnsmasq.conf
Teraz wyedytujesz plik dnsmasq.conf:
nano /etc/dnsmasq.conf
Odkomentuj lub dodaj następujące wiersze:
interfejs=lo, ap0
#interface=lo, wlan1 no-dhcp-interface=lo bind-interfaces server=8.8.8.8 domena-potrzebna fałszywy-priv dhcp-range=192.168.2.100, 192.168.2.200, 12h
Możesz tutaj użyć własnej podsieci, jeśli chcesz, tylko upewnij się, że jesteś spójny.
(Dwie karty WirelessCcards) Odkomentuj wiersz zawierający wlan1 i skomentuj ten zawierający ap0.
Krok 5: Interfejsy
Następnie musisz zmodyfikować plik interfejsów:
nano /etc/sieć/interfejsy
auto lo
auto ap0 #auto wlan1 auto wlan0 iface lo inet loopback iface eth0 inet dhcp allow-hotplug ap0 #allow-hotplug wlan1 iface ap0 inet static #iface wlan1 inet adres statyczny 192.168.2.1 maska sieci 255.255.255.0 hostapd /etc/hostapd/hostapd.conf allow-hotplug wlan0 iface wlan0 inet dhcp pre-up wpa_supplicant -B -Dwext -i wlan0 -c/etc/wpa_supplicant/wpa_supplicant.conf post-down killall -q wpa_supplicant
Warto zauważyć, że interfejs wlan0 MUSI nadejść po dowolnym interfejsie, który do niego przekazujesz, w przeciwnym razie system nie będzie działał poprawnie.
(Dwie karty bezprzewodowe) Odkomentuj wszystkie linie zawierające wlan1 i skomentuj wszystkie zawierające ap0.
Krok 6: Wpa_supplicant.conf
Teraz zmodyfikujesz plik wpa_supplicant.conf znajdujący się pod adresem:
nano /etc/wpa_supplicant/wpa_supplicant.conf
Niektóre sieci są skonfigurowane inaczej niż inne, więc ta część może wymagać trochę majsterkowania, oto plik wpa_supplicant.conf, który pozwolił mi połączyć się z siecią w Cal Poly:
country=USctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="SecureMustangWireless" scan_ssid=1 key_mgmt=WPA-EAP pairwise=CCMP TKIP group=CCMP TKIP eap=PEAP identity="nazwa użytkownika@ calpoly.edu" password="twoje_hasło" phase1="peapver=0" phase2="MSCHAPV2" }
Ten plik służy do konfigurowania wlan0 do łączenia się z siecią firmową. Niektóre sieci korporacyjne wymagają certyfikatu CA do nawiązania połączenia. Sieć kampusowa Cal Poly nie wymaga certyfikatu, więc pominąłem tę część, ale możesz łatwo pobrać odpowiednie certyfikaty i dodać je do swojego pliku wpa_supplicant z linijką
ca_cert="/ścieżka/do/cert.pem"
Krok 7: Skrypt Hostapdstart
Ostatnią rzeczą do zrobienia jest napisanie skryptu, który uruchamia oba interfejsy i konfiguruje przekazywanie pakietów podczas startu systemu. Utwórz plik o nazwie hostapdstart, wpisując:
nano /usr/local/bin/hostapdstart
Dodaj następujące elementy do pliku
sudo ifdown --force wlan0 && sudo ifdown --force ap0 && sudo ifup ap0 && sudo ifup wlan0
#sudo ifdown --force wlan0 && sudo ifdown --force wlan1 && sudo ifup wlan1 && sudo ifup wlan0 sudo sysctl -w net.ipv4.ip_forward=1 sudo iptables -t nat -A POSTROUTING -s 192.168.2.0/24 ! -d 192.168.2.0/24 -j MASQUERADEsudo systemctl restart dnsmasq
Ten skrypt wyłącza oba interfejsy, a następnie przywraca je z powrotem we właściwej kolejności, mówi pi, że chcesz przekazywać pakiety z jednego interfejsu do drugiego, a na koniec ponownie uruchamia dnsmasq, aby zmiany odniosły skutek.
(Dwie karty bezprzewodowe) odkomentuj linię za pomocą wlan1 i skomentuj linię za pomocą ap0.
Krok 8: Rc.local
Na koniec chcemy, aby system uruchamiał się podczas startu systemu, więc zmodyfikujemy plik rc.local, który jest uruchamiany podczas startu:
nano /etc/rc.local
Po prostu dodaj następujący wiersz na końcu pliku:
hostapdstart>1&
Twój plik powinien wyglądać mniej więcej tak:
_IP=$(nazwa hosta -I) || trueif ["$_IP"]; then printf "Mój adres IP to %s\n" "$_IP" fi
hostapdstart>1&
wyjście 0
Krok 9: Uruchom ponownie
I to wszystko! Teraz, zakładając, że wszystko jest poprawnie skonfigurowane, a twój klucz WiFi jest podłączony (jeśli go używasz), wystarczy zrestartować Raspberry Pi za pomocą polecenia:
restart
Po pomyślnym ponownym uruchomieniu Pi powinieneś być w stanie zobaczyć nazwę swojego punktu dostępu na dowolnym urządzeniu (telefonie, laptopie itp.). Po połączeniu się przy użyciu określonego hasła, powinno połączyć się bezpośrednio z wybraną siecią Enterprise!
Specjalne podziękowania dla poniższych linków za dostarczenie nam pomysłu, jak podejść do tego projektu:
- https://blog.thewalr.us/2017/09/26/raspberry-pi-ze…
- https://www.raspberrypi.org/forums/viewtopic.php?p…
- https://www.raspberrypi.org/forums/viewtopic.php?f…
Daj nam znać, jeśli masz jakieś pytania, komentarze lub sugestie!
Drugie miejsce w wyzwaniu IoT
Zalecana:
Tani koncentrator NMEA/AIS - mostek RS232 na Wifi do użytku na pokładzie: 6 kroków
Tani koncentrator NMEA/AIS - RS232 do mostka Wifi do użytku na pokładzie: Aktualizacja 9 stycznia 2021 r. – Dodano dodatkowe połączenie TCP i ponownie użyj ostatniego połączenia, jeśli połączy się więcej klientów.Aktualizacja 13 grudnia 2020 r. – Nie dodano wersji konfiguracyjnej kodu dla łodzi z istniejącymi routeramiWprowadzenieTen NMEA / AIS RS232 do mostka WiFi to
Jak zrobić mostek H: 15 kroków
Jak zrobić mostek H: Mostek H to rodzaj obwodu, którego można użyć, aby odwracalny silnik prądu stałego obracał się zarówno zgodnie z ruchem wskazówek zegara, jak i przeciwnie do ruchu wskazówek zegara. Innymi słowy, ten obwód pozwala szybko odwrócić kierunek, w którym znajduje się silnik wirowanie za pomocą przełącznika lub kontrolera c
Mostek R/C na USB: 7 kroków
Mostek R/C na USB: Konwertuje sygnały PPM z odbiornika radiowego na pozycje joysticka Użyj go do grania w ulubione gry i symulatory lotu za pomocą nadajnika radiowego R/C. Ten Instructable wykorzystuje Arduino firmy littleBits i odbiornik DSMX oraz prosty fragment kodu
Sterownik silnika wysokoprądowego DIY (mostek h): 5 kroków
DIY High Current Motor Driver (h-bridge): Projekt polega na modernizacji silników i elektroniki w tym czterokołowcu dla dzieci Power Wheels. planowaliśmy uaktualnienie do systemu 24v z 2 nowymi silnikami szczotkowymi traxxis 775 po zbadaniu
Mostek H (293D) z 2 silnikami Hobby i pilotem: 11 kroków
Mostek H (293D) z 2 silnikami hobbystycznymi i pilotem: Ta instrukcja pokaże, jak używać pilota do sterowania mostkiem H (293) z 2 silnikami hobby. Ten obwód może być używany z podstawowym robotem dwukołowym z Pilot zdalnego sterowania. Użyte części to; odbiornik podczerwieni zdalnego sterowania 4; Bateria 1,5 V