Diferència entre revisions de la pàgina «Accés remot a dispositius sense sistema operatiu»
(Es crea la pàgina amb «== Programació remota (OTA) == center|Programacio OTA de la placa IoT-02 === Dos programes de prova de programació remota === [https://www.b...».) |
m |
||
Línia 13: | Línia 13: | ||
Per a tenir visibilitat externa de la pàgina web servida per la placa IoT-02 (per exemple amb la IP 192.168.1.151:80), ho redireccionarem a un port ( 192.168.1.151:80 --> localhost:5001 ) | Per a tenir visibilitat externa de la pàgina web servida per la placa IoT-02 (per exemple amb la IP 192.168.1.151:80), ho redireccionarem a un port ( 192.168.1.151:80 --> localhost:5001 ) | ||
− | Per a fer funcionar [https://binefa.cat/training/iot02/ota/edge/simple-port-forwarding.js simple-port-forwarding.js] caldrà haver afegit el paquet '''http-proxy''': | + | Per a fer funcionar [https://www.binefa.cat/training/iot02/ota/edge/simple-port-forwarding.js simple-port-forwarding.js] caldrà haver afegit el paquet '''http-proxy''': |
npm install http-proxy | npm install http-proxy | ||
Línia 24: | Línia 24: | ||
httpProxy.createProxyServer({target:'http://' + targetHost + ':' + portOrigen}).listen(portDesti); | httpProxy.createProxyServer({target:'http://' + targetHost + ':' + portOrigen}).listen(portDesti); | ||
− | Per a fer aquest redireccionador sigui un servei, es copia [https://binefa.cat/training/iot02/ota/edge/myForwardingService.service myForwardingService.service] a la carpeta '''/etc/systemd/system''' o el fem de nou amb un editor: | + | Per a fer aquest redireccionador sigui un servei, es copia [https://www.binefa.cat/training/iot02/ota/edge/myForwardingService.service myForwardingService.service] a la carpeta '''/etc/systemd/system''' o el fem de nou amb un editor: |
cd /etc/systemd/system | cd /etc/systemd/system |
Revisió de 14:14, 15 març 2022
Contingut
Programació remota (OTA)
Dos programes de prova de programació remota
IoT-02_OTAWebUpdater_01 (Fa pampallugues el led blanc) Per a que us funcioni, haureu d'actualitzar el codi amb el vostre nom de xarxa sense fils (SSID) i la vostra contrasenya d'accés.
IoT-02_OTAWebUpdater_02 (Fa pampallugues el led verd) Per a que us funcioni, haureu d'actualitzar el codi amb el vostre nom de xarxa sense fils (SSID) i la vostra contrasenya d'accés.
Programació a la vora (edge)
L'ordinador a la vora (edge) pot ser un ordinador normal, habitualment de poca potència, del tipus Raspberry Pi.
Per a tenir visibilitat externa de la pàgina web servida per la placa IoT-02 (per exemple amb la IP 192.168.1.151:80), ho redireccionarem a un port ( 192.168.1.151:80 --> localhost:5001 )
Per a fer funcionar simple-port-forwarding.js caldrà haver afegit el paquet http-proxy:
npm install http-proxy
El codi nodejs de redireccionament (suposant que la placa IoT-02 ha adquirit l'adreça IP 192.168.1.151):
var httpProxy = require('http-proxy'); var targetHost = '192.168.1.151'; var portOrigen = 80; var portDesti = 5001; httpProxy.createProxyServer({target:'http://' + targetHost + ':' + portOrigen}).listen(portDesti);
Per a fer aquest redireccionador sigui un servei, es copia myForwardingService.service a la carpeta /etc/systemd/system o el fem de nou amb un editor:
cd /etc/systemd/system sudo nano myForwardingService.service sudo chmod 755 myForwardingService.service sudo systemctl daemon-reload sudo systemctl start myForwardingService
Per a veure l'estat del servei:
systemctl status myForwardingService
I per a fer que el servei es posi en marxa al reiniciar l'ordinador a la vora:
sudo systemctl enable myForwardingService
Programació al núvol
Mitjançant una xarxa virtual privada (VPN) de l'estil ZeroTier podem fer que l'ordinador a la vora i l'ordinador al núvol comparteixin la mateixa xarxa.
Suposant que l'ordinador a la vora té la IP 10.242.156.158, podem redireccionar-hi 10.242.156.158:5001 --> localhost:7007 :
var httpProxy = require('http-proxy'); var targetHost = '10.242.156.158'; var portOrigen = 5001; var portDesti = 7007; httpProxy.createProxyServer({target:'http://' + targetHost + ':' + portOrigen}).listen(portDesti);
I així tenim accés remot des del núvol, connectant mitjançant l'ordinador a la vora que es connecta a la placa IoT-02.
Per accedir-hi des del navegador, escriviu a la URL:
<nom_de_domini>:7007
Això visualitzarà el que presenta l'ordinador a la vora (la IP és la VPN a l'ordinador a la vora):
10.242.156.158:5001
Que al seu temps presenta el servei pel port 80 de la placa IOT-02 connectada a la mateixa xarxa local que l'ordinador a la vora:
192.168.1.151