Tartalomjegyzék:
- 1. lépés: Telepítse a szükséges RaspberryPi szoftvert
- 2. lépés: A WiFi hozzáférési pont létrehozása
- 3. lépés: Szükséges kellékek: Régi törött Nintendo
- 4. lépés: Szükséges kellékek: Raspberry Pi 3 B modell
- 5. lépés: Szükséges kellékek: 1,44 hüvelykes soros: UART/I2C/SPI TFT LCD 128x128 kijelzőmodul
- 6. lépés: Szükséges kellékek: 5V 0,1A mini ventilátor Raspberry Pi
- 7. lépés: Szükséges kellékek: Ugreen USB 2.0 - 10/100 Fast Ethernet Lan vezetékes hálózati adapter
- 8. lépés: Építés
- 9. lépés: Építési folytatás
- 10. lépés: Építési folytatás
- 11. lépés: A Digole kijelző csatlakoztatása
- 12. lépés: Telepítse a Hálózatfigyelő eszközöket és a DB naplózást
- 13. lépés: Telepítse a forgalmi összesítő jelentést (a Cronjob 5 percenként fut)
- 14. lépés: Telepítse a Dashboard képernyőt
- 15. lépés: Telepítse a helyi használati/statisztikai webhelyet [http://10.0.10.1]
Videó: Nintendo Wifi Router: 17 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:44
Egy régi Nintendo Entertainment rendszer tok használatával hozzon létre egy nagyon funkcionális otthoni útválasztót RaspberryPI 3 segítségével!
1. lépés: Telepítse a szükséges RaspberryPi szoftvert
Villogó RaspberriPi merevlemez / szükséges szoftver telepítése (Ubuntu Linux használatával)
Letöltés "RASPBIAN JESSIE LITE"
Hozza létre új merevlemezét a DashboardPI számára
Helyezze be a microSD -t a számítógépbe USB -adapteren keresztül, és hozza létre a lemezképet a dd paranccsal
Keresse meg a behelyezett microSD -kártyát a df -h paranccsal, távolítsa el, és hozza létre a lemezképet a disk copy dd paranccsal
$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/media/XXX/1234-5678
$ umount /dev /sdb1
Vigyázat: győződjön meg arról, hogy a parancs teljesen pontos, ezzel a paranccsal más lemezeket is károsíthat
if = a RASPBIAN JESSIE LITE képfájl helye = a microSD -kártya helye
$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img of =/dev/sdb (megjegyzés: ebben az esetben a/dev/sdb, a/dev/sdb1 egy meglévő gyári partíció microSD) A RaspberriPi beállítása
Helyezze be az új microSD -kártyát a raspberrypi -be, és kapcsolja be a HDMI -porthoz csatlakoztatott monitorral
Belépés
user: pi pass: raspberry A biztonság érdekében változtassa meg fiókja jelszavát
sudo passwd pi Engedélyezze a RaspberriPi speciális beállításait
sudo raspi-config Válasszon: 1 Bontsa ki a fájlrendszert
9 Speciális beállítások
A2 gazdagépnév: "NESRouter"
A4 SSH Az SSH szerver engedélyezése
A7 I2C Az i2c interfész engedélyezése Engedélyezze az angol/amerikai billentyűzetet
sudo nano/etc/default/keyboard Változtassa meg a következő sort: XKBLAYOUT = "us" Állítsa be az egyszerű könyvtárat l parancs [opcionális]
vi ~/.bashrc
add hozzá a következő sort:
alias l = 'ls -lh'
forrás ~/.bashrc Javítsa ki a VIM alapértelmezett szintaxis kiemelését [nem kötelező]
sudo vi/etc/vim/vimrc
szüntesse meg az alábbi sort:
szintaxis a PI indításakor a legújabb módosítások eléréséhez
A helyi időzóna beállításainak frissítése
sudo dpkg-reconfigure tzdata válassza ki az időzónát a felületen
2. lépés: A WiFi hozzáférési pont létrehozása
Kérjük, vegye figyelembe, hogy mielőtt ez útválasztóvá válik, a következő csomagok telepítéséhez csatlakoztatjuk a RaspberryPi -t egy meglévő hálózathoz az Ethernet -porton keresztül
sudo apt-get update && sudo apt-get -y upgrade
sudo apt-get install dnsmasq hostapd vim
sudo apt-get install vim git python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev
sudo vi /etc/dhcpcd.conf
Adja hozzá a következő sort:
denyinterfaces wlan0 sudo vi/etc/network/interfaces
Szerkessze a wlan0 részt így:
auto lo iface lo inet loopback
iface eth0 inet kézikönyv
auto wlan0 iface wlan0 inet statikus cím 10.0.10.1 netmask 255.255.255.0 hálózat 10.0.10.0 broadcast 10.0.10.255
auto eth1 iface eth1 inet statikus cím 10.0.20.1 netmask 255.255.255.0 hálózat 10.0.20.0 broadcast 10.0.20.255 Töltse be újra a DHCP szervert és pattintsa vissza az eth0 és wlan0 kapcsolatok konfigurációját
sudo szolgáltatás dhcpcd újraindítása
sudo ifdown eth0; sudo ifup wlan0
A HOSTAPD beállítása (az ssid és a wpa_passphrase módosítása az Ön által választott értékekre)
sudo vi /etc/hostapd/hostapd.conf
# Ez a WiFi interfész neve, amelyet az interface = wlan0 felett konfiguráltunk
# Használja az nl80211 illesztőprogramot a brcmfmac illesztőprogram -illesztőprogrammal = nl80211
# Ez a hálózat neve ssid = NintendoWiFi
# Használja a 2,4 GHz -es sávot hw_mode = g
# Használja a 6. csatorna csatornát = 6
# Engedélyezze a 802.11n ieee80211n = 1
# WMM engedélyezése wmm_enabled = 1
# 40 MHz-es csatornák engedélyezése 20ns-es védőintervallummal ht_capab = [HT40] [SHORT-GI-20] [DSSS_CCK-40]
# Minden MAC -cím elfogadása macaddr_acl = 0
# WPA hitelesítés használata auth_algs = 1
# Kötelezze el az ügyfeleket, hogy ismerjék a hálózat nevét ignore_broadcast_ssid = 0
# WPA2 wpa = 2 használata
# Használjon előre megosztott kulcsot wpa_key_mgmt = WPA-PSK
# A hálózati jelszó wpa_passphrase = jelszó
# Használjon AES -t a TKIP helyett rsn_pairwise = CCMP Futtatással ellenőrizhetjük, hogy működik -e ebben a szakaszban (de még nincs teljes internetkapcsolata):
sudo/usr/sbin/hostapd /etc/hostapd/hostapd.conf
sudo vi/etc/default/hostapd
Keresse meg a vonalat
#DAEMON_CONF = "" és cserélje le erre
DAEMON_CONF = "/etc/hostapd/hostapd.conf" DNSMASQ konfigurálása
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
sudo vi /etc/dnsmasq.conf
bind-interfaces # Kötődjön az interfészhez, hogy megbizonyosodjon arról, hogy nem küldünk dolgokat máshová szerver = 8.8.8.8 # DNS-kérések továbbítása a Google DNS-hez tartományra van szükség # Ne továbbítsa a rövid neveket bogus-priv # Soha ne továbbítsa a címeket a -irányított címterek.
# IP-címek hozzárendelése végtelen bérleti idővel (eszközhasználati statisztikákhoz) dhcp-range = wlan0, 10.0.10.100, 10.0.10.200, 255.255.255.0, 10.0.10.255, végtelen dhcp-tartomány = eth1, 10.0.20.100, 10.0. 20.200, 255.255.255.0, 10.0.20.255, végtelen SET UP IPV4 FORWARDING
sudo vi /etc/sysctl.conf
[megjegyzés] net.ipv4.ip_forward = 1
Azonnal aktiválja a sudo sh -c "echo 1>/proc/sys/net/ipv4/ip_forward" paranccsal
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o eth1 -m állapot -állam KAPCSOLÓDÓ, LÉTESÍTETT -j ELFOGAD
sudo iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
sudo iptables -A FORWARD -i eth0 -o wlan0 -m állapot -állapot KAPCSOLÓDÓ, LÉTESÍTETT -j ELFOGAD
sudo iptables -A FORWARD -i wlan0 -o eth0 -j ELFOGAD
Mentse az iptables beállításait a következő újraindításhoz
sudo sh -c "iptables -save> /etc/iptables.ipv4.nat"
Ipv4 szabályfájl létrehozása (új tartalommal)
sudo vi/lib/dhcpcd/dhcpcd-hooks/70-ipv4-nat
iptables-restore </etc/iptables.ipv4.nat Újraindítási szolgáltatások
sudo service hostapd start sudo service dnsmasq start
sudo újraindítás
Statikus IP -k hozzárendelése [opcionális]
Ha azt szeretné, hogy a hálózaton található állomások statikus IP -t kapjanak, használja az alábbiakat
Keresse meg a DHCP -n keresztül jelenleg csatlakoztatott gazdagépeket vi /var/lib/misc/dnsmasq.leases
Adja hozzá a MAC -címet (a fenti kimenetről) és a hozzárendelni kívánt IP -címet a sudo vi /etc/dnsmasq.conf fájlhoz
# main desktop dhcp-host = 12: 34: 56: 78: 9a: bc, 10.0.20.20 Megjegyzés: Ezzel a hálózati interfész a MAC-címmel lesz hozzárendelve: 12: 34: 56: 78: 9a: bc a 10.0 IP-címhez.20.20. A felsorolt IP -címnek nem kell a megadott DHCP tartományban lennie, csak ugyanazon az alhálózaton. A fenti fő asztalom az eth1: 10.0.20.0 alhálózaton található, ezért megadtam a 10.0.20.20 IP -címet.
UFW tűzfal hozzáadása
sudo apt-get install ufw
A 22 -es port engedélyezése nyilvános használatra (távoli hálózati hozzáféréshez)
sudo ufw allow 22
Engedélyezze az összes portot a helyi hálózatomon
sudo ufw allow 10.0.10.0/24 sudo ufw allow 10.0.20.0/24 -től
A webportok engedélyezése mindenki számára
sudo ufw engedélyezi a 80 -at
A biztonságos webportok engedélyezése mindenki számára
sudo ufw engedélyezi a 443 -at
Engedélyezze az UFW funkciót, és ellenőrizze az állapotát
sudo ufw -erő engedélyezése
sudo ufw állapot
Javítsa ki a hibát, ha az UFW nem indul el az indításkor
sudo su crontab -e
Adja hozzá a következő sort: @reboot /bin /sleep 60; ufw -erő engedélyezése
3. lépés: Szükséges kellékek: Régi törött Nintendo
Régi Nintendo tok törött NES -ből (távolítsa el az összes régi tartalmat a tok belsejében, csak a külső keretet, a bekapcsoló / visszaállító gombokat és a vezérlő csatlakozásait hagyva)
4. lépés: Szükséges kellékek: Raspberry Pi 3 B modell
5. lépés: Szükséges kellékek: 1,44 hüvelykes soros: UART/I2C/SPI TFT LCD 128x128 kijelzőmodul
6. lépés: Szükséges kellékek: 5V 0,1A mini ventilátor Raspberry Pi
7. lépés: Szükséges kellékek: Ugreen USB 2.0 - 10/100 Fast Ethernet Lan vezetékes hálózati adapter
8. lépés: Építés
Telepítse a NES belsejébe
Nyomtassa ki 3D nyomtatóval a "NESPanel" Digole kijelző keretet a/construction/display-frame/mappába. [ha nincs 3D nyomtatója, finoman kivághat egy négyzet alakú lyukat a Digole kijelzőhöz egy Dremel eszközzel] oldalt és a táp/ethernet és USB ethernet kábeleket, hogy bejussanak a hátlapon.
9. lépés: Építési folytatás
Csavarja le a jobb felső fekete panelt a NES -ről, és vágjon tisztán egy elég nagy négyzet alakú lyukat a digole kijelző rögzítéséhez. Ragasztja a kijelzőt a helyére, a tetején található "NESPanel" 3D nyomtatott kerettel.
10. lépés: Építési folytatás
Szerelje fel a RaspberryPi -t az üres NES tok alsó részének közepére, ragasztóval vagy egy kis csavarral rögzítse az alján. Egy 270 ohmos ellenállás segítségével csatlakoztassa a NES "bekapcsolt LED" -ét a Raspberry Pi 5V és GND csapjaihoz (rövid LED -vezeték a föld). Csatlakoztassa a kisméretű ventilátort az 5V és GND csapokhoz is, hogy működésbe léphessen, amikor a készülék beindul, és ragassza a ventilátort az oldalán található lyukhoz.
11. lépés: A Digole kijelző csatlakoztatása
Csatlakoztassa a következő csapokat a RaspberryPi csapjaihoz
A VCC 3V -ra van csatlakoztatva. GND földelt. Az adatok SDA CLOCK SCL
i2cdetect -y 1 27 -nek kell megjelennie a szövegrácsban
12. lépés: Telepítse a Hálózatfigyelő eszközöket és a DB naplózást
sudo apt-get install ifstat memcached python-memcache postgresql postgresql-contrib python-psycopg2
sudo vi /etc/postgresql/9.4/main/pg_hba.conf
Adja hozzá a következő sort a fájl végéhez: local all pi password sudo -i -u postgres
psql
create role pi password 'password here';
szerepkör módosítása pi bejelentkezés;
alter role pi superuser;
du
(látnia kell a PI felhasználóját a megadott jogosultságokkal) create network network_stats;
q
kijárat
psql -d network_stats
Futtassa a következő lekérdezéseket:
TÁBLÁZAT LÉTREHOZÁSA traffic_per_minute (azonosító soros, időbélyeg időzónák nélkül NOT NULL, eth0_down real, eth0_up real, eth1_down real, eth1_up real, wan0_down real, wan0_up real);
EGYEDI INDEX LÉTREHOZÁSA time_idx ON traffic_per_minute (time); Másolja a projekt "naplózó" mappáját a projektből az RPi saját könyvtárába
crontab -e
Adja hozzá ezt a sort
@reboot /bin /sleep 60; nohup python /home/pi/logging/networkUsage.py>/dev/null 2> & 1
13. lépés: Telepítse a forgalmi összesítő jelentést (a Cronjob 5 percenként fut)
crontab -e
add hozzá a következő sort
*/5 * * * * python /home/pi/logging/trafficSummary.py
14. lépés: Telepítse a Dashboard képernyőt
Másolja át a projekt "kód" mappáját a projektből az RPi saját könyvtárába
Futtassa az alábbiak szerint
$ python /home/pi/display/NESRouter.py Állítsa be a megjelenítő parancsfájlt az indításkor
crontab -e
Adja hozzá ezt a sort
@reboot nohup python /home/pi/display/NESRouter.py>/dev/null 2> & 1
Ellenőrizze, hogy a kijelző újraindításkor elkezd -e működni
sudo újraindítás
15. lépés: Telepítse a helyi használati/statisztikai webhelyet [https://10.0.10.1]
Telepítse a helyi használati/statisztikai webhelyet [https://10.0.10.1]
sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get install apache2
sudo szolgáltatás apache2 újraindítása
Távolítsa el az alapértelmezett oldalakat
cd /var /www
sudo rm -rf html
Másolja a „webportál” mappát ebből a projektből az RPi otthoni mappájába, és hozza létre az apache számára a szimbólumot
cd /var /www
sudo ln -s/home/pi/webportal html
cd/var/www/html
chmod +x *.py
sudo a2enmod cgi
sudo vi /etc/apache2/sites-enabled/000-default.conf
A Python CGI parancsfájl engedélyezése
Adja hozzá a címke belsejébe
Opciók +ExecCGI AddHandler cgi-script.py sudo service apache2 restart
Most felkeresheti a helyi HTTP webhelyet [https://10.0.10.1]
Fejlett hálózati megfigyelés beállítása (IPFM -en keresztül)
sudo apt-get update
sudo apt-get install ipfm
sudo mv /etc/ipfm.conf /etc/ipfm.conf-bak
sudo vi /etc/ipfm.conf
Hozzon létre a következő tartalommal:
# Globális változók
# Az IPFM csak egy eszközt képes figyelni. KÉSZÜLET eth0
# GLOBAL LOGGING CONFIGURATION LOG
FILENAME "/var/log/ipfm/%Y_%d_%m/%H_%M"
# napló minden percben DUMP MINDEN 1 perc
# tiszta statisztika minden nap MINDEN 24 órás törlés RENDEZÉS FELOLDÁSBAN sudo szolgáltatás ipfm start
VÁLASZTHATÓ: Saját Nintendo -képek létrehozása a kijelzőn történő megjelenítéshez
Töltse fel saját 128x128 -as fájlját a következő URL -re:
www.digole.com/tools/PicturetoC_Hex_convert…
Válassza ki a feltölteni kívánt képfájlt, és adja hozzá a kívánt méretet a képernyőn (szélesség/magasság)
Válassza a "256 szín a színes OLED/LCD (1 bájt/pixel)" lehetőséget a "Használt" legördülő menüben
Szerezze be a hexadecimális kimenetet.
Adja hozzá a hexadecimális kimenetet egy display/ build/ header (.h) fájlhoz, a többit használja útmutatóként a szintaxishoz.
Illessze be az új fájlt a digole.c fájlba #include myimage.h
Helyezzen be egy új parancssori horgot a képfájlba a. Megjegyzés: az alábbi parancs azt mondja, rajzolja le a képét 10 pixel fölött 10 pixel lefelé. Megváltoztathatja különböző X, Y koordinátákra, és megváltoztathatja a 128, 128 értékeket bármilyen méretűre is.
} else if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariable Itt van definiálva a (.h) fájlodban}
Most építse újra (figyelmen kívül hagyja a hibákat), hogy az új kép megjelenjen a következő paranccsal.
$./digole myimage Re-Building [Tartalmazza] Digole Display Driver az opcionális változtatásokhoz
$ cd display/build $ gcc digole.c $ mv a.out../../digole $ chmod +x../../digole
Ajánlott:
UPS a WiFi R4 router V4 -hez: 6 lépés (képekkel)
UPS a WiFi R4 router V4 -hez: Sziasztok! Az otthoni munkavégzés fokozásával mindannyian megszakítás nélkül szeretnénk dolgozni, Indiában nagyon gyakoriak az áramszünetek. Sok apartmanban telepítettek tartalékgenerátort, amely néhány másodpercen belül beindul az áramkimaradás után. Még akkor is, ha az áramkimaradás f
Router Ups V2: 6 lépés (képekkel)
Router Ups V2: Sziasztok! Néhány hónapja készítettem el az első UPS -t az útválasztókhoz 18650 -es lítium -ion akkumulátor használatával, két UPS -t, egyet az útválasztómhoz és egyet a szálváltóhoz. Kicsit zűrzavar volt két hálózati adapterrel. A teendők listában szerepelt, hogy egyetlen UPS -t készítsek
Power Over Ethernet Router átalakítás: 4 lépés (képekkel)
Power Over Ethernet Router Conversion: Ennek a projektnek az ötlete az, hogy bármilyen szabványos, készenléti útválasztót Power Over Ethernet (PoE) -kompatibilis (Wikipédia-leírás) [] egységgé alakítson, adapter és kiegészítő hardver vásárlása nélkül. valami meglehetősen gyakori sok üzletben/off
3 tengelyes CNC router - 60 "x60" x5 " - JunkBot: 5 lépés (képekkel)
3 tengelyes CNC útválasztó - 60 "x60" x5 " - JunkBot: Ez az Instructable az első a sorozatban, amely dokumentálja a DIY 3 tengelyes CNC router építését. Ez az én bejegyzésem az Univerzális Lézervágó Versenyen is. Ennek az utasításnak a célja nem a lépésről lépésre történő teljes haladást mutatja, hanem
Lépjen az internetre anélkül, hogy bekukkantana: Tor (The Onion Router): 4 lépés (képekkel)
Lépjen online anélkül, hogy bekukkantana: Tor (The Onion Router): Amikor online van, mindenhol nyomokat hagy. Lehet, hogy barátaival lóg az IM -ben, megnézi a webhelyeket vagy letölt zenét. Ha olyan országban él, ahol a sznobok kíváncsiak arra, amit a hétköznapi polgárok online csinálnak (lke, um, az U