System > Sieć

[ROZWIĄZANY]Uruchamianie skryptu po podlaczeniu do sieci

(1/2) > >>

KarolPrv0:
Witam. Jak w temacie. Potrzebuje po podłączeniu do sieci urochmic jakis tam skrypt .py lub .php. Postawilem sobie serwer apache i chce miec dostep do niego z sieci ale ze po restarcie routera adres sie zmienia, to potrzebuje wyslac nowy adres ip na email. Jak to ugryzc?

baker:
Na takie rzeczy wymyślili dynip i jego alternatywy.
https://wiki.archlinux.org/title/Dynamic_DNS

1709:
Może rozwinę trochę temat. Dla początkujących.
Mogę być omylny, więc proszę mnie poprawić.

Dynamic Domain Name System - Jest to metoda w której pełnej nazwie sieciowej przypisany jest zmienny adres IP.

Większe wyjaśnienie.
Dzięki wspomnianemu DDNS możemy używać nazwy sieciowej zamiast adresu IP, np. do
- połączenia z naszym serwerem przez ssh
( kwestie bezpieczeństwa albo inaczej zaufania się kłaniają, ale pominę ten temat )
- połączenia się z naszą stroną internetową.
Pełna nazwa zazwyczaj składa się z nazwy DNS np.  " wikipedia.org " + nazwy dodatkowej np. " en " ,
czyli całość to  " en.wikipedia.org "
Całą / pełną nazwę można nazwać FQDN  https://en.wikipedia.org/wiki/Fully_qualified_domain_name
DDNS czasami potocznie się też nazywa darmowym DNS, co jest trochę mylące.
- Wspomniane DDNS może polegać np. na zarejestrowaniu się w jakimś serwisie internetowym i instalacji aplikacji lub skryptu
 w celu aktualizacji adresu IP określonej nazwie sieciowej.
- Czymś innym i do czegoś innego jest przeznaczony " public recursive name server " nazywane potocznie także darmowym DNS  https://en.wikipedia.org/wiki/Public_recursive_name_server
Służy do rozwiązywania nazw sieciowych DNS na IP przez nasz system operacyjny, np. dla naszej przeglądarki internetowej.
Kiedyś domyślnie dostawcą rozwiązywania nazw był nasz dostawca internetu, dziś może to być różnie i zazwyczaj można też zmienić.
Ten filmik może odrobinę pokazać jak działa rozwiązywanie nazw na adres IP potrzebny do otworzenia strony internetowej w naszych przeglądarkach.
 https://www.youtube.com/watch?v=72snZctFFtA


Wracając do powyższego linka z wiki archa odnośnie DDNS

Ad.1 Router.
- Router teoretycznie może mieć zainstalowanych kilka aplikacji różnych " dostawców " DDNS.
Tworzymy i rejestrujemy nazwę i gotowe.
Potem gdy aplikacja routera wykryje nowe IP to automatycznie zaktualizuje z naszą nazwą sieciową.
To czy trzeba się rejestrować dodatkowo na stronie internetowej  zależy od danego dostawcy aplikacji / DDNS.
- Jeśli router jest bardziej " konfigurowalny " / umożliwia większą modyfikację
to można zrobić to w sposób opisany niżej lub przy pomocy gotowych konfiguracji.

Ad.2 Klient - Wydaje mi się że chodzi także o aplikacje lub skrypty, ale głównie w systemie operacyjnym
( Postaram się trochę wiedzę poukładać we własne punkty )
2.1 Możemy zainstalować aplikacje lub skrypty dostawców DDNS
( Nie wiem, nie testowałem czemu część jest wielo- i pojedynczo- serwisowe / usługowe )
Czasami taki skrypt / aplikacja wysyła tylko ping do dostawcy DDNS jeśli adres IP ulegnie zmianie.
Po adresie IP przychodzącego wie jakie IP przypisać naszej nazwie sieciowej ( Wiem, kwestia bezpieczeństwa się kłania. )
2.2 Wymieniona jest co najmniej jedna aplikacja " ddclient " obsługująca kilku dostawców DDNS
2.3 Wspomniano że adres IP można uzyskać ze stron internetowych.

Chciałbym rozwinąć temat.

- Jeśli mamy połączony serwer lub komputer bezpośrednio z naszym dostawcą internetu
to znalezienie naszego IP zewnętrznego / publicznego służącego do komunikacji w internecie
przy pomocy komend w systemie lub aplikacji graficznych nie stanowi problemu.
Ponieważ używamy te IP do komunikacji z internetem.
- Jeśli po drodze mamy inne urządzenia np. router
to nasz system operacyjny do komunikacji z routerem posługuje adresem IP prywatnym.  https://en.wikipedia.org/wiki/IP_address#Private_addresses

Adres IP prywatny jest inny niż adres IP publiczny.
Dlatego czasami używa się stron internetowych by powiedziały nam jakie IP publiczne posiadamy.
Tych stron internetowych jest bardzo dużo https://unix.stackexchange.com/questions/22615/how-can-i-get-my-external-ip-address-in-a-shell-script/194136#194136
W terminalu zazwyczaj do pobrania publicznego IP ze strony służy komenda " curl " lub " wget ".

W ten sposób uzyskane IP publiczne można np. za pomocą własnego skryptu:
- wysłać pocztą na swoje konto. ( Tu też się kłania kwestia bezpieczeństwa lub zaufania - zresztą chyba wszędzie :-) )
- przy pomocy ping lub w inny sposób wysłać do dostawcy DDNS w celu aktualizacji IP dla określonej nazwy sieciowej.
( Tu też się kłania kwestia bezpieczeństwa lub zaufania - zresztą chyba wszędzie :-) )

Małe wyjaśnienie.
Moje wspominanie o bezpieczeństwie w niektórych miejscach może jest bez sensu,
Chciałem żeby czytający się zastanowił czy dany sposób jest idealny dla niego także pod względem bezpieczeństwa.

KarolPrv0:
Wiem jak dziala DDNS i mam w routerze mozliwosc ustawienia tego, ale nie jest mi to do niczego potrzebne, bo nie jest to serwer do ktorego maja zagladac jacys obcy ludzie, lecz tylko i wylącznie ja i moze pare osob, od czasu do czasu, wiec potrzebuje tylko wykryc gdy komputer podlaczy sie do sieci. Mozna zrobic CRONA który bedzie sprawdzal co jakis czas czy ip publiczne sie nie zmienilo, ale to troche obejscie problemu, a nie jego rozwiazanie.

Paweł Kraszewski:
No dobra, ale IP zmienia ci się na routerze, nie na kompie podpiętym do niego. Z kolei komp nie widzi bezpośrednio zmiany adresu publicznego routera. Jedyna opcja (jeżeli nie spatchujesz routera własnymi narzędziami) to cykliczne odpytywanie czegoś pokroju "whatsmyip".



Nawigacja

[0] Indeks wiadomości

[#] Następna strona

Idź do wersji pełnej