Wymiana pliku JSON między komputerami.

Wymiana pliku JSON między komputerami.
dedicated
  • Rejestracja:około 6 lat
  • Ostatnio:około 8 godzin
  • Postów:160
0

link do rysunku
Cześć. Mam następujący problem.
Potrzebuje zdalnie za pomocą laptopa ("client") korzystać ze swojego PC ("horse"). Chcę jednak, by działało to maksymalnie stabilnie, więc oprócz podstawowego założenia:

  1. horse klika "accepted", gdy klient spróbuje przejąć zdalny dostęp (np. poprzez AnyDesk),
    ma on spełniać jeszcze dwa pozostałe.
  2. można go włączyć za pomocą Wake On Lan,
  3. można go zrestartować, ale w wersji "hard" (za pomocą tzn. inteligentnego gniazka ("wifi socket")).
    Głównym problemem jest fakt, że "horse" znajduje się za podwójnym NAT. Nie dość, że nie mogę mieć publicznego IP, to nawet nie mogę przekierować portu. Mam nadmiar śmieciowych komputerów, więc stwierdziłem, że poświęce jednego z nich ("sentinel"), by robił WoL i hard resety. Z uwagi na double NAT potrzebuje publicznego IP, więc zostaje wynajem jakiegoś hosta ("server").
    Drugim problemem jest to, że póki co mało znam się na programowaniu webowym (chociaż jestem programistą). Niby mogę teraz lecieć przez tutorial Django/Flaska (akurat z Pythonem jestem za Pan brat), jednak wpadłem na pomysł, że wystarczyłoby jedynie, by wszystkie komputery mogły się wymieniać jednym JSONem. Moje pytania brzmią:
  1. Jak najprościej wysyłać JSONy między komputerami, które dzieli double NAT.
  2. Czy widzi ktoś jakieś prostsze rozwiązanie mojego problemu? To zdaje mi się być za bardzo skomplikowane.
    Dodam jeszcze, że jestem Januszem i szukam tanich rozwiązań.
    link do rysunku
vpiotr
  • Rejestracja:prawie 14 lat
  • Ostatnio:prawie 3 lata
0
AK
  • Rejestracja:prawie 7 lat
  • Ostatnio:około 2 miesiące
  • Postów:3561
0

Twoje zagadnienie wymaga rozpatrzenia sieci na wielu poziomach (np. teoretyczny model OSI/ISO mówi o siedmiu warstwach). Więc temat jest bardzo obszerny.
W kolejności przypadkowej
a) Przejście podwójnego NAT. Przechodzą Skype (i konkurencja), programy torrentowe. W znanych mi przypadkach są to aplikacje sieciowe na datagramach (IP). Nie będę pisał tu powieści, co to jest datagram.
b) Wake on lan jest aplikacją na poziomie adresu MAC
c) jako programista pewnie rozumiesz, że JSON to zupełnie oddzielny temat, nie mający nic wspólnego z fizyczną siecią (można powiedzieć poziom apliakcji wg OSI/ISO)

... oraz wiele, wiele innych zagadnień.

Jakie tempo wymiany oczekujesz? Ilość pak/s, maksymalne opóźnienie pakietu, % straty (bo straty będą) oraz inne liczby


Bo C to najlepszy język, każdy uczeń ci to powie
edytowany 1x, ostatnio: AnyKtokolwiek
dedicated
Tempo nieistotne, byle działało. Chcę to zrobić na własny użytek. ad b) WakeOnLan będzie puszczany lokalne poprzez "sentinela". Są na to gotowce. Musi on jedynie dostać jakoś info od "serwera" (wspomnianego JSONa np.), o tym, że ma to zrobić. Info może być pobierane cyklicznie, a on będzie jedynie reagował na zmiany.
KR
  • Rejestracja:prawie 7 lat
  • Ostatnio:około rok
  • Postów:174
0

A nie dałoby się zastosować oprogramowania typu Hamachi, które tworzy wirtualną sieć LAN pomiędzy komputerami za NAT-tem i w necie?

dedicated
Dzięki, obczaję.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.