Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
michal Čepelák:30.6.2022 13:27

Zdravím ,
jak by se dala udělat komunikace mezi RPi, které mám na své vnitřní síti s připojením k internetu bez veřejné IP adresy a webserver kde běží PHP, web server je mi mojí síť a je dostupný z venku má svojí doménu.

Zkusil jsem: Zkoušel jsem googlit ale nevím co přesně mám hledat.
Děkuji

Chci docílit: Potřebuji přes webovou stránku poslat příkaz RPi pro otevření vrat.
Napadlo mě to udělat přes websocket ale nevím jak moc by to zatěžovalo síť.
Děkuji za rady

 
Odpovědět
30.6.2022 13:27
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:30.6.2022 15:50

Mozna je problem v tom, ze nemuis popsat, co chces :)
Pokud mas webovou stranku, ta ta vetsinou pracuje s http requesty, url adresami. Napriklad odkazy, iframe, obrazky, tag script, js-requesty:

<a href="server/adresa?akce=1">1</a>
<a href="server/adresa?akce=2">2</a>

Slo by ze stranky pomoci js pracovat i se sockety, ale s tim je dost drbacka. Resi se tam autentizace, pripojeni, na serveru musi bezet socket server. Ano, bude to rychlejsi. Ale, jestli chces jen tlacitka otevrit-zavrit vrata, tak ti staci jen odkazy, ne?

RPI, server pocitac, na kterem bezi php, pripojeny nekde na tvuj router, to se da nejak nastavit na routeru, jakym zpusobem bude dostupny. Muzes si tam spustit i name-server, prekladac textovych URL na IP adresu. Ale, muzes to volat i pres IP adresu. Ta bude ve tvaru neco jako http://192.168.1.1, cili

<a href="http://192.168.1.1:8080/adresa?akce=2">2</a>

Tak podobne funguji tiskarny v siti, tvuj pocitac ve stejne siti posle adresu tiskarny routeru a tiskarna si to prevezme. A dal za router, ven, to uz nejde.

Ted je otazka, zda tu stranku chces spoustet jen na lokalnim pocitaci nebo ma byt viditelna z venku? Z venku potrebujes tu vlastni home-ip-adresu, si myslim. Ale moc jsem zatim nic takove nedelal.
Cili, pokud spustit stranku na lokalnim pocitaci, tak ti odkazy s tou ip budou fungovat. Z venci nikoliv, protoze z venci to jde pres router cloveka, kde hostujes stranky a on do tve site nema pristup. Ale, tvuj router ma nejakou adresu a na ni to poslat muzes, kdyz mu pak reknes, co s tim ma pak delat.

Nebo, muzes si udelat nekde na webu prostrednika.
U sebe na pc spustis program, ktery se bude neustale, treba pres ty websockety, dotazovat prostrednika, zda ma nejaky pozadavek. A kdyz se pozadavek objevi, zpracuje ho a posle na to RPI.
Cili, funguje to podobne jako chat. Se tam nalogujes a vybiraz data z sql. Ty pak tvuj program preposila na to RPI. Nebo v pripade chatu na obrazovku :)

 
Nahoru Odpovědět
30.6.2022 15:50
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:30.6.2022 15:56
[pc1 outside/inside stranka] ---> (send) [pc2 outside php/sql server]

[pc3 inside stranka] <--- (receive) <--- [pc2] // aby to fungovalo, tak pc3 musi neustele skenovat pc2, byt zapnut
[pc3 inside stranka] (working)
[pc3 inside stranka] ---> (send) ---> [pc4 inside rpi] ----> (send) ---> garaz motor

pc3 a pc4 muze byt jeden a tentyz, rpi :)

Blbe je, ze ti takto, pokud to nezasifrujes, muze nekdo spamovat pozadavky. A tez nepohlidas, jak casto lze pozadavky zasilat a pretizi ti doma sit, treba. A ze k tomu potrebujes ten venkovni server.
A blbe je, ze ziskat adresu routeru nevim, zda ti dovoli firma, co u ni mas internet :)

Editováno 30.6.2022 15:58
 
Nahoru Odpovědět
30.6.2022 15:56
Avatar
LacoS.
Člen
Avatar
LacoS.:11.11.2022 23:25

Je to sice starsi prispevok, ale mozno Ti to este pomoze:

  • na internete si vytvor vlastnu web-stranku http://mojadomena/moja-brana.php, na ktorej bude jedna jedina cislica (0 / 1)
  • Tvoje RPi sa bude pozeraj na tu stranku @30s ... a ked tam najde 0 ... tak branu zatvori, ak 1 ... tak ju otvori

... toto je najjednoduchsi sposob, ako z internetu presuvat poziadavky do domacej siete, ak nemas externu IP, alebo DDNS, alebo ak na internete nemas server (nemyslim web-server, ale nejaky iny servis alebo nejaku komunikaciu).

To iste vies urobit aj cez Databazu, ak v nej vies menit cez web-stranku nejake data, a Tvoje RPi sa bude do tej DB pavidelne pozerat.

 
Nahoru Odpovědět
11.11.2022 23:25
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.