Përmbajtje:

Router Nintendo Wifi: 17 hapa (me fotografi)
Router Nintendo Wifi: 17 hapa (me fotografi)

Video: Router Nintendo Wifi: 17 hapa (me fotografi)

Video: Router Nintendo Wifi: 17 hapa (me fotografi)
Video: 📶 4G LTE USB модем с WiFi с AliExpress / Обзор + Настройки 2024, Nëntor
Anonim
Router Nintendo Wifi
Router Nintendo Wifi

Duke përdorur një kuti të sistemit të Nintendo Entertainment të vjetër, prodhoni një ruter shtëpiak shumë funksional duke përdorur një RaspberryPI 3!

Hapi 1: Instaloni programin e kërkuar RaspberryPi

Disk i ndezur RaspberriPi / Instaloni softuerin e kërkuar (Duke përdorur Ubuntu Linux)

Shkarkoni "RASPBIAN JESSIE LITE"

Krijoni hard diskun tuaj të ri për DashboardPI

Futni microSD në kompjuterin tuaj nëpërmjet përshtatësit USB dhe krijoni imazhin e diskut duke përdorur komandën dd

Gjeni kartën tuaj të futur microSD përmes komandës df -h, çmontoni atë dhe krijoni imazhin e diskut me komandën e diskut dd

$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/media/XXX/1234-5678

$ umount /dev /sdb1

Kujdes: sigurohuni që komanda është plotësisht e saktë, mund të dëmtoni disqe të tjerë me këtë komandë

if = vendndodhja e skedarit të imazhit RASPBIAN JESSIE LITE e = vendndodhja e kartës tuaj microSD

$ sudo dd bs = 4M nëse =/path/to/raspbian-jessie-lite.img e =/dev/sdb (shënim: në këtë rast, është/dev/sdb,/dev/sdb1 ishte një ndarje ekzistuese e fabrikës në microSD) Konfigurimi i RaspberriPi tuaj

Futni kartën tuaj të re microSD në mjedër dhe ndizeni atë me një monitor të lidhur me portën HDMI

Identifikohu

përdoruesi: pi pass: mjedër Ndryshoni fjalëkalimin e llogarisë tuaj për siguri

sudo passwd pi Aktivizo RaspberriPi Opsionet e Avancuara

sudo raspi-config Zgjidh: 1 Zgjero skedarin e sistemit

9 Opsione të Avancuara

Emri i hostit A2 ndryshojeni atë në "NESRouter"

A4 SSH Aktivizo serverin SSH

A7 I2C Aktivizo ndërfaqen i2c Aktivizo tastierën angleze/amerikane

sudo nano/etc/default/keyboard Ndrysho rreshtin e mëposhtëm: XKBLAYOUT = "ne" Konfiguro direktorinë e thjeshtë komandë l [opsionale]

vi ~/.bashrc

shtoni rreshtin e mëposhtëm:

alias l = 'ls -lh'

burimi ~/.bashrc Rregullo theksimin e sintaksës së paracaktuar të VIM [opsionale]

sudo vi/etc/vim/vimrc

mos komentoni rreshtin e mëposhtëm:

sintaksë në Rinisni PI -në tuaj për të marrë ndryshimet më të fundit

rinisni Përditësoni cilësimet lokale të zonës kohore

sudo dpkg-rikonfiguroni tzdata zgjidhni zonën tuaj kohore duke përdorur ndërfaqen

Hapi 2: Krijimi i Pikës së Qasjes WiFi

Ju lutemi vini re, para se ky të bëhet një ruter ne po lidhim RaspberryPi në një rrjet ekzistues përmes portës së tij ethernet për të instaluar paketat e mëposhtme

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-thelbësor python-dev rpi.gpio python3 python3-pip libi2c-dev

sudo vi /etc/dhcpcd.conf

Shtoni rreshtin e mëposhtëm:

denyinterfaces wlan0 sudo vi/etc/network/interfaces

Ndryshoni seksionin wlan0 në mënyrë që të duket kështu:

auto lo iface lo inet loopback

manual iface eth0 inet

auto wlan0 iface wlan0 inet adresa statike 10.0.10.1 maskë në internet 255.255.255.0 rrjet 10.0.10.0 transmetim 10.0.10.255

auto eth1 iface eth1 inet adresa statike 10.0.20.1 maskë neto 255.255.255.0 rrjet 10.0.20.0 transmetim 10.0.20.255 Ringarkoni DHCP Server dhe kërceni konfigurimin për lidhjet eth0 dhe wlan0

rifillimi i shërbimit sudo dhcpcd

sudo ifdown eth0; sudo ifup wlan0

Konfiguroni HOSTAPD (Ndryshoni ssid dhe wpa_passphrase në vlerat e zgjedhjes suaj)

sudo vi /etc/hostapd/hostapd.conf

# Ky është emri i ndërfaqes WiFi që kemi konfiguruar më sipër interface = wlan0

# Përdorni shoferin nl80211 me drejtuesin e shoferit brcmfmac = nl80211

# Ky është emri i rrjetit ssid = NintendoWiFi

# Përdorni brezin 2.4GHz hw_mode = g

# Përdorni kanalin 6 kanalin = 6

# Aktivizo 802.11n ieee80211n = 1

# Aktivizo WMM wmm_enabled = 1

# Aktivizo kanale 40MHz me interval mbrojtës 20ns ht_capab = [HT40] [SHORT-GI-20] [DSSS_CCK-40]

# Pranoni të gjitha adresat MAC macaddr_acl = 0

# Përdorni vërtetimin WPA auth_algs = 1

# Kërkoni që klientët të dinë emrin e rrjetit ignore_broadcast_ssid = 0

# Përdorni WPA2 wpa = 2

# Përdorni një çelës të ndarë paraprakisht wpa_key_mgmt = WPA-PSK

# Fraza e kalimit të rrjetit wpa_passphrase = fjalëkalim

# Përdorni AES, në vend të TKIP rsn_pairwise = CCMP Ne mund të kontrollojmë nëse po funksionon në këtë fazë duke ekzekutuar (por ende nuk ka lidhje të plotë me internetin):

sudo/usr/sbin/hostapd /etc/hostapd/hostapd.conf

sudo vi/etc/default/hostapd

Gjeni linjën

#DAEMON_CONF = "" dhe zëvendësojeni me

DAEMON_CONF = "/etc/hostapd/hostapd.conf" Konfiguro DNSMASQ

sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig

sudo vi /etc/dnsmasq.conf

bind-interfaces # Lidheni me ndërfaqen për t'u siguruar që nuk po dërgojmë gjëra diku tjetër server = 8.8.8.8 # Përcjellni kërkesat për DNS në domenin e Google DNS # Mos përcillni emra të shkurtër fals-priv # Asnjëherë mos i përcillni adresat në jo -hapësirat e adresave të drejtuara.

# Caktoni adresa IP pa kohë të pakufishme qiraje (për statistikat e përdorimit të pajisjes) dhcp-range = wlan0, 10.0.10.100, 10.0.10.200, 255.255.255.0, 10.0.10.255, dhcp-range pafund = eth1, 10.0.20.100, 10.0. 20.200, 255.255.255.0, 10.0.20.255, PinRFUNDIM P SRFUNDIM IPV4 pafund

sudo vi /etc/sysctl.conf

[pa koment] net.ipv4.ip_forward = 1

Aktivizojeni menjëherë me sudo sh -c "echo 1>/proc/sys/net/ipv4/ip_forward"

sudo iptables -t nat -A POSTROUTIM -o eth0 -j MASQUERADE

sudo iptables -A PWRPARA -i eth0 -o eth1 -m gjendje -shteti LIDHUR, I THEMELUAR -j Pranoj

sudo iptables -A PWRPARA -i eth1 -o eth0 -j Pranoj

sudo iptables -A PWRPARA -i eth0 -o wlan0 -m gjendje -shteti LIDHUR, I THEMELUAR -j Pranoj

sudo iptables -A PWRPARA -i wlan0 -o eth0 -j Pranoj

Ruani cilësimet e iptables për rindezjen tjetër

sudo sh -c "iptables -save> /etc/iptables.ipv4.nat"

Krijoni skedarin e rregullave ipv4 (me përmbajtje të re)

sudo vi/lib/dhcpcd/dhcpcd-grepa/70-ipv4-nat

iptables-restore </etc/iptables.ipv4.nat Restart Services

sudo service hostapd start sudo service dnsmasq start

rindiz sudo

Caktimi i IP -ve statike [Opsionale]

Nëse dëshironi që hostet në rrjetin tuaj të kenë ips statike, ju lutemi përdorni sa vijon

Fitoni hostet e lidhur aktualisht përmes DHCP vi /var/lib/misc/dnsmasq.leases

Shtoni adresën MAC (nga dalja e mësipërme) dhe adresën IP që dëshironi t'i caktoni sudo vi /etc/dnsmasq.conf

# desktop kryesor dhcp-host = 12: 34: 56: 78: 9a: pc, 10.0.20.20 Shënim: Kjo do të caktojë ndërfaqen e rrjetit me MAC Adresa: 12: 34: 56: 78: 9a: bc në adresën IP 10.0.20.20. Adresa IP e listuar NUK duhet të jetë në intervalin DHCP të dhënë, vetëm në të njëjtën nënrrjet. Desktopi im kryesor më sipër është në nën -rrjetin et1: 10.0.20.0, kështu që i dhashë Adresën IP të 10.0.20.20.

Shtimi i UFW Firewall

sudo apt-get install ufw

Lejo portën 22 për përdorim publik (për qasje në distancë në rrjet)

sudo ufw lejoni 22

Lejo të gjitha portet në rrjetin tim lokal

sudo ufw lejoni nga 10.0.10.0/24 sudo ufw lejoni nga 10.0.20.0/24

Lejo portet në internet për të gjithë

sudo ufw lejoni 80

Lejoni porta të sigurta në internet për të gjithë

sudo ufw lejoni 443

Aktivizoni UFW dhe kontrolloni statusin

sudo ufw -aktivizo forcën

sudo ufw status

Rregulloni BUG me UFW që nuk fillon me fillimin

sudo su crontab -e

Shtoni rreshtin e mëposhtëm: @reboot /bin /sleep 60; ufw -aktivizo forcën

Hapi 3: Furnizimet e nevojshme: Old Broken Nintendo

Furnizimet e nevojshme: Nintendo e vjetër e thyer
Furnizimet e nevojshme: Nintendo e vjetër e thyer

Rasti i vjetër Nintendo nga një NES i thyer (hiqni të gjithë përmbajtjen e vjetër brenda kasës, duke lënë vetëm kornizën e jashtme, butonat e energjisë / rivendosjes dhe lidhjet e kontrolluesit)

Hapi 4: Furnizimet e nevojshme: Raspberry Pi 3 Model B

Furnizimet e nevojshme: Raspberry Pi 3 Model B
Furnizimet e nevojshme: Raspberry Pi 3 Model B

Hapi 5: Furnizimet e nevojshme: 1.44 "Seriale: UART/I2C/SPI TFT LCD Moduli i ekranit 128x128

Furnizimet e nevojshme: 1.44
Furnizimet e nevojshme: 1.44
Furnizimet e nevojshme: 1.44
Furnizimet e nevojshme: 1.44

Hapi 6: Furnizimet e nevojshme: 5V 0.1A Mini Fan Raspberry Pi

Furnizimet e nevojshme: 5V 0.1A Mini Fan Raspberry Pi
Furnizimet e nevojshme: 5V 0.1A Mini Fan Raspberry Pi

Hapi 7: Furnizimet e nevojshme: Ugreen USB 2.0 në 10/100 Fast Ethernet Lan Wired Wire Adapter

Furnizimet e nevojshme: Përshtatës i rrjetit me tel Ugreen USB 2.0 në 10/100 Fast Ethernet Lan Wired Wire
Furnizimet e nevojshme: Përshtatës i rrjetit me tel Ugreen USB 2.0 në 10/100 Fast Ethernet Lan Wired Wire

Hapi 8: Ndërtimi

Ndërtim
Ndërtim

Instaloni brenda SHKP

Duke përdorur një printer 3D printoni kornizën Digole Display "NESPanel" në dosjen/construction/display-frame/. [nëse nuk keni një printer 3D ju mund të shkurtoni me delikatesë një vrimë katrore për Digole Display me një mjet Dremel] Pritini vrimat e mëposhtme të hapura në pjesën e pasme dhe anën e kasës për të lejuar që ventilatori i vogël të fiksohet në anën dhe kabllot e energjisë/ethernet dhe USB për të hyrë në pjesën e pasme.

Hapi 9: Vazhdimi i ndërtimit

Ndërtimi Vazhdo
Ndërtimi Vazhdo

Zhvidhosni panelin e zi të sipërm të djathtë nga SHKP dhe prerë pastër një vrimë katrore mjaft të madhe për të montuar ekranin tuaj digole. Ngjiteni nxehtë ekranin në vend me kornizën "NESPanel" të printuar 3D mbi pjesën e sipërme të tij.

Hapi 10: Vazhdimi i ndërtimit

Ndërtimi Vazhdo
Ndërtimi Vazhdo

Montoni RaspberryPi në mes të pjesës së poshtme të kutisë së zbrazët të NES, ngjiteni me zam ose një vidë të vogël në pjesën e poshtme. Duke përdorur një rezistencë 270 ohm, lidhni "fuqinë në LED" të NES me kunjat 5V dhe GND në Raspberry Pi (plumbi i shkurtër LED është toka). Lidheni tifozin e vogël me kunjat 5V dhe GND gjithashtu që të funksionojë kur njësia të fillojë, ngjiteni tifozin kundër vrimës në anën për të.

Hapi 11: Lidhja e ekranit Digole

Lidhni kunjat e mëposhtëm me kunjat në RaspberryPi

VCC është e lidhur me 3v

i2cdetect -y 1 duhet të shfaqet në rrjetin e tekstit si 27

Hapi 12: Instaloni Mjetet e Monitorimit të Rrjetit dhe Regjistrimin e DB

sudo apt-get install ifstat memcached python-memcache postgresql postgresql-kontribut python-psycopg2

sudo vi /etc/postgresql/9.4/main/pg_hba.conf

Shtoni rreshtin e mëposhtëm në fund të skedarit: fjalëkalimin lokal të të gjithë pi sudo -i -u postgres

psql

krijoni role pi fjalëkalimin 'fjalëkalimi këtu';

ndryshoni rolin pi login;

alter role pi superuser;

du

(ju duhet të shihni përdoruesin tuaj të PI me lejet e dhëna) të krijoni databazë network_stats;

q

dalje

psql -d statistikat e rrjetit

Drejtoni pyetjet e mëposhtme:

CREATE TABLE trafiku_per_minute (seriali id, vula kohore pa zonën kohore JO NULL, eth0_down real, eth0_up real, eth1_down real, eth1_up real, wan0_down real, wan0_up real);

KRIJONI INDEKSIN UNIK unik të kohës_idx ON trafikut_per_minutë (kohë); Kopjoni dosjen "regjistrimi" të kodit nga ky projekt në drejtorinë kryesore të RPi -së tuaj

crontab -e

Shtoni këtë rresht

@reboot /bin /fle 60; nohup python /home/pi/logging/networkUsage.py>/dev/null 2> & 1

Hapi 13: Instaloni Raportin Përmbledhës të Trafikut (shkon çdo 5 minuta nga Cronjob)

crontab -e

shtoni rreshtin e mëposhtëm

*/5 * * * * python /home/pi/logging/trafficSummary.py

Hapi 14: Instaloni ekranin e pultit

Kopjoni dosjen "shfaq" të kodit nga ky projekt në drejtorinë kryesore të RPi -së tuaj

Drejtojeni atë si më poshtë

$ python /home/pi/display/NESRouter.py Konfiguro skriptin e ekranit që të ekzekutohet gjatë fillimit

crontab -e

Shtoni këtë rresht

@reboot nohup python /home/pi/display/NESRouter.py>/dev/null 2> & 1

Verifikoni që ekrani fillon të punojë në rindezje

rindiz sudo

Hapi 15: Instaloni Uebfaqen e Përdorimit/Statistikave Lokale [https://10.0.10.1]

Instaloni uebfaqen e përdorimit/statistikave lokale [https://10.0.10.1]

sudo apt-merrni përditësim && sudo apt-merrni përmirësim -y

sudo apt-get install apache2

rinisni shërbimin sudo apache2

Hiq faqet e paracaktuara

cd /var /www

sudo rm -rf html

Kopjoni dosjen 'webportal' nga ky projekt në dosjen tuaj në shtëpi në RPi tuaj dhe krijoni lidhjen e lidhjes për apache për t'u përdorur

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

Aktivizo Shkrimin e Python CGI

Shtoni brenda etiketës

Opsionet +ExecCGI AddHandler cgi-script.py sudo shërbim apache2 rinis

Tani mund të vizitoni faqen HTTP lokale [https://10.0.10.1]

Vendosni monitorimin e avancuar të rrjetit (përmes IPFM)

përditësim sudo apt-get

sudo apt-get instaloni ipfm

sudo mv /etc/ipfm.conf /etc/ipfm.conf-bak

sudo vi /etc/ipfm.conf

Krijoni me përmbajtjen e mëposhtme:

# Ndryshore globale

# IPFM mund të monitorojë vetëm një pajisje. Pajisja eth0

# LOG CONS PFR KONFIGURIMIN E LOGLIMIT GLOBAL

FILENAME "/var/log/ipfm/%Y_%d_%m/%H_%M"

# log çdo minutë HUMBONI ÇDO 1 minutë

# statistika të qarta çdo ditë FSHIHJA ÇDO 24 orë RRETHINI N R ZGJIDHJE sudo shërbimi iffm fillimi

OPSIONALE: Krijimi i imazheve tuaja Nintendo për t’i shfaqur në ekran

Ngarko skedarin tuaj 128x128 në URL -në e mëposhtme:

www.digole.com/tools/PicturetoC_Hex_convert…

Zgjidhni skedarin tuaj të imazhit për t'u ngarkuar, shtoni madhësinë që dëshironi të jetë në ekran (Gjerësia/Lartësia)

Zgjidhni "256 Color for Color OLED/LCD (1 bajt/pixel)" në zbritësen "Përdoret për"

Merrni daljen gjashtëkëndore.

Shtoni daljen gjashtëkëndore në një skedar të shfaqur/ ndërtuar/ kokë (.h), përdorni ato të tjera si udhëzues për sintaksën.

Përfshini skedarin e ri në skedarin digole.c #include myimage.h

Përfshini një goditje të re të linjës së komandës në skedarin tuaj të imazhit në. Shënim: komanda më poshtë po thotë vizatoni imazhin tuaj në pozicionin 10 piksel mbi 10 piksel poshtë. Mund ta ndryshoni në koordinata të ndryshme X, Y, gjithashtu mund të ndryshoni vlerat 128, 128 në çfarëdo madhësie që është imazhi juaj i ri në të vërtetë.

} else if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariableHere është përcaktuar në skedarin tuaj (.h)}

Tani rindërtoni (injoroni gabimet) më poshtë që imazhi juaj i ri të shfaqet me komandën e mëposhtme.

$./digole myimage Rindërtimi [i përfshirë] Digole Display Driver për ndryshimet tuaja opsionale

$ cd display/build $ gcc digole.c $ mv a.out../../digole $ chmod +x../../digole

Hapi 16: Përfundoi

Recommended: