
Satura rādītājs:
- 1. darbība: instalējiet nepieciešamo RaspberryPi programmatūru
- 2. darbība: izveidojiet WiFi piekļuves punktu
- 3. darbība. Nepieciešamie materiāli: vecais bojātais Nintendo
- 4. darbība. Nepieciešamie materiāli: Raspberry Pi 3 B modelis
- 5. darbība. Nepieciešamie materiāli: 1,44 collu sērija: UART/I2C/SPI TFT LCD 128x128 displeja modulis
- 6. darbība. Nepieciešamie materiāli: 5V 0,1A mini ventilators Raspberry Pi
- 7. darbība. Nepieciešamie piederumi: Ugreen USB 2.0 līdz 10/100 Fast Ethernet LAN vadu tīkla adapteris
- 8. solis: būvniecība
- 9. solis: būvniecības turp
- 10. solis: būvniecības turp
- 11. darbība: Digole displeja pievienošana
- 12. solis: instalējiet tīkla uzraudzības rīkus un DB reģistrēšanu
- 13. darbība. Instalējiet satiksmes kopsavilkuma pārskatu (Cronjob darbojas ik pēc 5 minūtēm)
- 14. darbība. Instalējiet informācijas paneļa ekrānu
- 15. darbība. Instalējiet vietējās lietošanas/statistikas vietni [http://10.0.10.1]
2025 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2025-01-23 14:59

Izmantojot veco Nintendo izklaides sistēmas korpusu, izveidojiet ļoti funkcionālu mājas maršrutētāju, izmantojot RaspberryPI 3!
1. darbība: instalējiet nepieciešamo RaspberryPi programmatūru
Mirgojošs RaspberriPi cietais disks / instalējiet nepieciešamo programmatūru (izmantojot Ubuntu Linux)
Lejupielādēt "RASPBIAN JESSIE LITE"
Izveidojiet jauno cieto disku DashboardPI
Ievietojiet microSD datorā, izmantojot USB adapteri, un izveidojiet diska attēlu, izmantojot komandu dd
Atrodiet ievietoto microSD karti, izmantojot komandu df -h, atvienojiet to un izveidojiet diska attēlu ar komandu disk copy dd
$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/media/XXX/1234-5678
$ umount /dev /sdb1
Uzmanību: pārliecinieties, ka komanda ir pilnīgi precīza, ar šo komandu varat sabojāt citus diskus
if = RASPBIAN JESSIE LITE attēla faila atrašanās vieta = jūsu microSD kartes atrašanās vieta
$ sudo dd bs = 4M, ja =/ceļš/uz/raspbian-jessie-lite.img no =/dev/sdb (piezīme: šajā gadījumā tas ir/dev/sdb,/dev/sdb1 bija esošs rūpnīcas nodalījums microSD) RaspberriPi iestatīšana
Ievietojiet jauno microSD karti avenes un ieslēdziet to, izmantojot monitoru, kas pievienots HDMI portam
Pieslēgties
lietotājs: pi pass: raspberry Drošības nolūkos mainiet sava konta paroli
sudo passwd pi Iespējot RaspberriPi papildu opcijas
sudo raspi-config Izvēlieties: 1 Izvērst failu sistēmu
9 Papildu opcijas
A2 resursdatora nosaukums mainiet to uz "NESRouter"
A4 SSH Iespējot SSH serveri
A7 I2C Iespējot i2c interfeisu Iespējojiet angļu/ASV tastatūru
sudo nano/etc/default/keyboard Mainiet šādu rindu: XKBLAYOUT = "us" Iestatiet vienkāršo direktoriju l komanda [pēc izvēles]
vi ~/.bashrc
pievienojiet šādu rindu:
pseidonīms l = 'ls -lh'
avots ~/.bashrc Labot VIM noklusējuma sintakses izcelšanu [pēc izvēles]
sudo vi/etc/vim/vimrc
norakstiet šādu rindu:
Pārstartējiet PI, lai iegūtu jaunākās izmaiņas
Atjauniniet vietējās laika joslas iestatījumus
sudo dpkg-reconfigure tzdata, izmantojot saskarni, izvēlieties savu laika joslu
2. darbība: izveidojiet WiFi piekļuves punktu
Lūdzu, ņemiet vērā: pirms tas kļūst par maršrutētāju, mēs pievienojam RaspberryPi esošam tīklam, izmantojot tā Ethernet portu, lai instalētu šādas paketes
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
Pievienojiet šādu rindu:
denyinterfaces wlan0 sudo vi/etc/network/interfaces
Rediģējiet sadaļu wlan0 tā, lai tā izskatās šādi:
auto lo iface lo inet loopback
iface eth0 inet rokasgrāmata
auto wlan0 iface wlan0 inet statiskā adrese 10.0.10.1 tīkla maska 255.255.255.0 tīkls 10.0.10.0 apraide 10.0.10.255
auto eth1 iface eth1 inet statiskā adrese 10.0.20.1 netmask 255.255.255.0 tīkls 10.0.20.0 apraide 10.0.20.255 Pārlādēt DHCP serveri un atmest eth0 un wlan0 savienojumu konfigurāciju
sudo pakalpojuma dhcpcd restartēšana
sudo ifdown eth0; sudo ifup wlan0
Konfigurējiet HOSTAPD (mainiet ssid un wpa_passphrase uz jūsu izvēlētajām vērtībām)
sudo vi /etc/hostapd/hostapd.conf
# Šis ir tā WiFi saskarnes nosaukums, kuru mēs konfigurējām virs interfeisa = wlan0
# Izmantojiet draiveri nl80211 kopā ar brcmfmac draivera draiveri = nl80211
# Šis ir tīkla nosaukums ssid = NintendoWiFi
# Izmantojiet 2,4 GHz joslu hw_mode = g
# Izmantojiet 6. kanāla kanālu = 6
# Iespējot 802.11n ieee80211n = 1
# Iespējot WMM wmm_enabled = 1
# Iespējojiet 40MHz kanālus ar 20ns apsardzes intervālu ht_capab = [HT40] [SHORT-GI-20] [DSSS_CCK-40]
# Pieņemt visas MAC adreses macaddr_acl = 0
# Izmantojiet WPA autentifikāciju auth_algs = 1
# Prasīt klientiem zināt tīkla nosaukumu ignore_broadcast_ssid = 0
# Izmantojiet WPA2 wpa = 2
# Izmantojiet iepriekš koplietotu atslēgu wpa_key_mgmt = WPA-PSK
# Tīkla ieejas frāze wpa_passphrase = parole
# Izmantojiet AES, nevis TKIP.
sudo/usr/sbin/hostapd /etc/hostapd/hostapd.conf
sudo vi/etc/default/hostapd
Atrodiet līniju
#DAEMON_CONF = "" un aizstājiet to ar
DAEMON_CONF = "/etc/hostapd/hostapd.conf" Konfigurēt DNSMASQ
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
sudo vi /etc/dnsmasq.conf
bind-interfaces # Saistieties ar saskarni, lai pārliecinātos, ka mēs nesūtām lietas citur serveris = 8.8.8.8 # Pārsūtīt DNS pieprasījumus uz Google DNS domēnam nepieciešams # Nepārsūtīt īsos vārdus bogus-priv # Nekad nepārsūtīt adreses -novirzītas adrešu vietas.
# Piešķirt IP adreses ar bezgalīgu nomas laiku (ierīces lietošanas statistikai) dhcp-range = wlan0, 10.0.10.100, 10.0.10.200, 255.255.255.0, 10.0.10.255, bezgalīgs dhcp-range = eth1, 10.0.20.100, 10.0. 20.200, 255.255.255.0, 10.0.20.255, bezgalīga IESTATĪT IPV4 PĀRSŪTĪŠANA
sudo vi /etc/sysctl.conf
[uncomment] net.ipv4.ip_forward = 1
Nekavējoties aktivizējiet to, izmantojot sudo sh -c "echo 1>/proc/sys/net/ipv4/ip_forward"
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A PĀRVEDUMS -i eth0 -o eth1 -m stāvoklis -valsts SAISTĪTA, IZVEIDOTA -j PIEŅEMT
sudo iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --valsts SAISTĪTĀ, IZVEIDOTA -j ACCEPT
sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT
Saglabājiet iptables iestatījumus nākamajai atsāknēšanai
sudo sh -c "iptables -save> /etc/iptables.ipv4.nat"
Izveidojiet ipv4 noteikumu failu (ar jaunu saturu)
sudo vi/lib/dhcpcd/dhcpcd-āķi/70-ipv4-nat
iptables-restore </etc/iptables.ipv4.nat Restart Services
sudo pakalpojums hostapd start sudo pakalpojums dnsmasq start
sudo atsāknēšana
Statisku IP piešķiršana [pēc izvēles]
Ja vēlaties, lai jūsu tīkla saimniekiem būtu statisks ips, lūdzu, izmantojiet tālāk norādīto
Iegūstiet resursdatorus, kas pašlaik ir savienoti, izmantojot DHCP vi /var/lib/misc/dnsmasq.leases
Pievienojiet MAC adresi (no iepriekš minētās izejas) un IP adresi, kuru vēlaties tām piešķirt, lai pievienotu to sudo vi /etc/dnsmasq.conf
# main desktop dhcp-host = 12: 34: 56: 78: 9a: bc, 10.0.20.20 Piezīme. Tīkla saskarnei tiks piešķirta MAC adrese: 12: 34: 56: 78: 9a: bc uz IP adresi 10.0.20.20. Norādītajai IP adresei NAV jābūt norādītajā DHCP diapazonā, tikai tajā pašā apakštīklā. Mana galvenā darbvirsma atrodas apakštīklā eth1: 10.0.20.0, tāpēc es norādīju IP adresi 10.0.20.20.
UFW ugunsmūra pievienošana
sudo apt-get install ufw
Atļaut 22. portu publiskai lietošanai (attālai piekļuvei tīklam)
sudo ufw atļaut 22
Atļaut visus portus manā lokālajā tīklā
sudo ufw atļaut no 10.0.10.0/24 sudo ufw atļaut no 10.0.20.0/24
Atļaut tīmekļa portus ikvienam
sudo ufw atļaut 80
Atļaujiet drošus tīmekļa portus ikvienam
443
Iespējojiet UFW un pārbaudiet statusu
sudo ufw -piespiest spēku
sudo ufw statuss
Labojiet kļūdu ar UFW, kas netiek startēts
sudo su crontab -e
Pievienojiet šādu rindu: @reboot /bin /sleep 60; ufw -piespiest spēku
3. darbība. Nepieciešamie materiāli: vecais bojātais Nintendo

Vecs Nintendo korpuss no salauztas NES (noņemiet visu veco saturu korpusa iekšpusē, atstājot tikai ārējo rāmi, barošanas / atiestatīšanas pogas un kontroliera savienojumus)
4. darbība. Nepieciešamie materiāli: Raspberry Pi 3 B modelis

5. darbība. Nepieciešamie materiāli: 1,44 collu sērija: UART/I2C/SPI TFT LCD 128x128 displeja modulis

6. darbība. Nepieciešamie materiāli: 5V 0,1A mini ventilators Raspberry Pi

7. darbība. Nepieciešamie piederumi: Ugreen USB 2.0 līdz 10/100 Fast Ethernet LAN vadu tīkla adapteris

8. solis: būvniecība

Instalējiet NES iekšpusē
Izmantojot 3D printeri, izdrukājiet Digole displeja rāmi "NESPanel" mapē/konstrukcija/displeja rāmis/. [ja jums nav 3D printera, varat ar Dremel rīku smalki izgriezt kvadrātveida caurumu Digole displejam] pusē un barošanas/Ethernet un USB Ethernet kabeļi, lai iekļūtu caur aizmuguri.
9. solis: būvniecības turp

Atskrūvējiet augšējo labo melno paneli no NES un tīri izgrieziet pietiekami lielu kvadrātveida caurumu, lai uzstādītu digola displeju. Karstā līme pielīmējiet displeju, un tā augšpusē ir 3D drukāts rāmis "NESPanel".
10. solis: būvniecības turp

Uzstādiet RaspberryPi tukšā NES korpusa dibena vidū, piestipriniet ar līmi vai nelielu skrūvi caur dibenu. Izmantojot 270 omu rezistoru, pievienojiet NES "ieslēgšanas gaismas diodi" 5V un GND tapām Raspberry Pi (īss LED vads ir zeme). Pievienojiet mazo ventilatoru arī 5V un GND tapām, lai tas darbotos, kad iekārta ieslēdzas, pielīmējiet ventilatoru pret caurumu tā sānos.
11. darbība: Digole displeja pievienošana
Pievienojiet šādas tapas RaspberryPi tapām
VCC ir pievienots 3 V GND ir iezemēts DATI ir SDA CLOCK ir SCL Tagad jums vajadzētu redzēt ierīci savā i2cdetect komandā
i2cdetect -y 1 tam teksta režģī vajadzētu parādīties kā 27
12. solis: instalējiet tīkla uzraudzības rīkus un DB reģistrēšanu
sudo apt-get install ifstat memcached python-memcache postgresql postgresql-contrib python-psycopg2
sudo vi /etc/postgresql/9.4/main/pg_hba.conf
Faila beigās pievienojiet šādu rindu: local all pi paroli sudo -i -u postgres
psql
izveidot lomu pi parole 'parole šeit';
mainīt lomu pi pieteikšanās;
mainīt lomu pi superlietotājs;
du
(jums vajadzētu redzēt savu PI lietotāju ar piešķirtajām atļaujām) izveidot datubāzi network_stats;
q
Izeja
psql -d network_stats
Izpildiet šādus vaicājumus:
CREATE TABLE traffic_per_minute (id sērija, laika zīmogs bez laika joslas NOT NULL, eth0_down real, eth0_up real, eth1_down real, eth1_up real, wan0_down real, wan0_up real);
CREATE UNIQUE INDEX time_idx ON traffic_per_minute (laiks); Kopējiet šī projekta koda mapi “reģistrēšana” uz RPi mājas direktoriju
crontab -e
Pievienojiet šo rindiņu
@reboot /bin /sleep 60; nohup python /home/pi/logging/networkUsage.py>/dev/null 2> & 1
13. darbība. Instalējiet satiksmes kopsavilkuma pārskatu (Cronjob darbojas ik pēc 5 minūtēm)
crontab -e
pievienojiet šādu rindu
*/5 * * * * python /home/pi/logging/trafficSummary.py
14. darbība. Instalējiet informācijas paneļa ekrānu
Kopējiet šī projekta koda mapi "displejs" uz RPi mājas direktoriju
Palaidiet to šādi
$ python /home/pi/display/NESRouter.py Iestatiet displeja skriptu startēšanai
crontab -e
Pievienojiet šo rindiņu
@reboot nohup python /home/pi/display/NESRouter.py>/dev/null 2> & 1
Pārliecinieties, vai displejs sāk darboties pēc pārstartēšanas
sudo atsāknēšana
15. darbība. Instalējiet vietējās lietošanas/statistikas vietni [https://10.0.10.1]
Instalējiet vietējo lietošanas/statistikas vietni [https://10.0.10.1]
sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get instalēt apache2
sudo pakalpojuma apache2 restartēšana
Noņemt noklusējuma lapas
cd /var /www
sudo rm -rf html
Kopējiet mapi “webportāls” no šī projekta uz savu RPi mājas mapi un izveidojiet simbolu apache lietošanai
cd /var /www
sudo ln -s/mājas/pi/tīmekļa portāla html
cd/var/www/html
chmod +x *.py
sudo a2enmod cgi
sudo vi /etc/apache2/sites-enabled/000-default.conf
Iespējot Python CGI skriptu
Pievienojiet taga iekšpusē
Opcijas +ExecCGI AddHandler cgi-script.py sudo pakalpojums apache2 restart
Tagad varat apmeklēt vietējo HTTP vietni [https://10.0.10.1]
Uzlabotas tīkla uzraudzības iestatīšana (izmantojot IPFM)
sudo apt-get update
sudo apt-get instalēt ipfm
sudo mv /etc/ipfm.conf /etc/ipfm.conf-bak
sudo vi /etc/ipfm.conf
Izveidojiet ar šādu saturu:
# Globālie mainīgie
# IPFM var uzraudzīt tikai vienu ierīci. IERĪCE eth0
# GLOBAL LOGGING CONFIGURATION LOG
FILENAME "/var/log/ipfm/%Y_%d_%m/%H_%M"
# žurnāls katru minūti DUMP KATRU 1 minūti
# Skaidra statistika katru dienu TĪRĪT KATRU 24 stundu KĀRTOT ATŠĶIRT Sudo pakalpojums ipfm start
IZVĒLES: izveidojiet savus Nintendo attēlus, lai tie tiktu parādīti displejā
Augšupielādējiet savu 128x128 failu uz šādu URL:
www.digole.com/tools/PicturetoC_Hex_convert…
Izvēlieties augšupielādējamo attēla failu, pievienojiet ekrānā izmēru (platums/augstums)
Nolaižamajā izvēlnē "Izmantot" atlasiet "256 krāsa krāsu OLED/LCD (1 baits/pikseļi)".
Iegūstiet sešstūra izvadi.
Pievienojiet heksadecimālo izvadi displeja/ uzbūves/ galvenes (.h) failam, pārējos izmantojiet kā sintakses vadlīnijas.
Iekļaujiet jauno failu failā digole.c #include myimage.h
Iekļaujiet savā komandā jaunu komandrindas āķi savā attēla failā. Piezīme: zemāk esošā komanda saka: zīmējiet attēlu 10 pikseļu pozīcijā virs 10 pikseļiem uz leju. Jūs varat mainīt to uz dažādām X, Y koordinātām, jūs varat arī mainīt vērtības 128, 128 uz jebkura izmēra jūsu jauno attēlu.
} cits if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariable Šeit ir definēts jūsu (.h) failā}
Tagad atjaunojiet (ignorējiet kļūdas) zemāk, lai jūsu jaunais attēls tiktu atveidots ar šādu komandu.
$./digole myimage Re-Building [Iekļauts] Digole displeja draiveris jūsu izvēles izmaiņām
$ cd display/build $ gcc digole.c $ mv a.out../../digole $ chmod +x../../digole
Ieteicams:
Drošs WIFI maršrutētājs - pretvīrusu, ļaunprātīgas programmatūras un izpirkuma programmatūras aizsardzība un konfidencialitāte: 5 soļi

Drošs WIFI maršrutētājs - pretvīrusu, ļaunprātīgas programmatūras un izpirkuma programmatūras aizsardzība un konfidencialitāte: zemu izmaksu galapunkta aizsardzība, izmantojot RaspBerryPI 4 un atvērtā pirmkoda. PIRMS to sasniegšanas jūsu datorā vai tālrunī bloķē sekojošo: Ļaunprātīgas programmatūras vīrusi RansomWareAlso nodrošina: Pieaugušo/naida vietņu vecāku kontrole saglabā jūsu privātumu caur reklāmu
Kā paplašināt NVR signālu (IP kameras atkārtotājs, tīkla slēdzis un WiFi maršrutētājs/atkārtotājs): 5 soļi

Kā paplašināt NVR signālu (IP kameras atkārtotājs, tīkla slēdzis un WiFi maršrutētājs/atkārtotājs): šajā pamācībā mēs parādīsim, kā paplašināt NVR signālu, izmantojot: 1. Iebūvētā retranslatora funkcija IP kamerā vai 2. Tīkla slēdzis vai 3. WiFi maršrutētājs
Bezvadu mājas maršrutētājs ar analogo izmantošanas mērītāju: 5 soļi (ar attēliem)

Bezvadu mājas maršrutētājs ar analogo izmantošanas mērītāju: es uzaugu laivās un ap tām, veidojot vadu stelles un vadības paneļus, un man ir mērinstrumentu kolekcija. ciparnīcas, kuras parasti varētu atrast savienotas ar maziem jūras dīzeļdzinējiem. Šodien es strādāju par dizaineri, veidojot saskarnes tīklam
3 asu CNC maršrutētājs - 60 "x60" x5 " - JunkBot: 5 soļi (ar attēliem)

3 asu CNC maršrutētājs - 60 "x60" x5 " - JunkBot: šī pamācība ir pirmā sērija, kas dokumentē 3 asu CNC maršrutētāja DIY uzbūvi. Tas ir arī mans ieraksts universālajā lāzera griezēju konkursā. Šīs pamācības mērķis nav parādīt pilnīgu progresu soli pa solim, bet drīzāk
Dodieties tiešsaistē bez noklausīšanās: Tor (sīpolu maršrutētājs): 4 soļi (ar attēliem)

Dodieties tiešsaistē, nenokļūstot: Tor (sīpolu maršrutētājs): Kad esat tiešsaistē, jūs atstājat dziesmas visā vietā. Jūs varētu tērzēt ar draugiem tērzēšanā, pārbaudīt vietnes vai lejupielādēt mūziku. Ja jūs dzīvojat valstī, kur slepkavas interesējas par to, ko parastie pilsoņi dara tiešsaistē (lke, um, U