Zewnętrzne adresy IP, maski podsieci i SSH - jak to wszystko działa?


2

Naprawdę jestem zdezorientowany, jak mogę połączyć się z określonym komputerem w mojej sieci na komputerze w innej sieci przez Internet. Na przykład, w moim domu ciągle działa klaster beowulfa. Używam go do obliczeń hardcore, takich jak brutalne hasła z listy słów. Powiedzmy, że jestem na moim laptopie, ale gdzieś indziej na innej sieci LAN. Znam zewnętrzny adres IP węzła nadrzędnego w klastrze beowulf i jest to jedyny podłączony do Internetu ze wszystkich węzłów. Jednak, gdy otrzymam zewnętrzny adres IP na mój komputer w tej samej sieci LAN co klaster, otrzymuję ten sam zewnętrzny adres IP. Z tego co rozumiem, zewnętrzne IP będzie takie samo dla wszystkich urządzeń w tej sieci LAN. Zewnętrzny adres IP dla węzła głównego klastra beowulf, mojego pulpitu i mojego telewizora Smart TV (na przykład) powinien być taki sam, jak wszystkie przez ten sam modem, prawda? Maska podsieci określa, który węzeł w sieci LAN (zewnętrzny IP współdzielony przez wszystkie urządzenia) pochodzi z danych, prawda? Jeśli tak, w jaki sposób mogę połączyć się z węzłem głównym w klastrze za pośrednictwem SSH, aby przesłać informacje do pracy, jeśli mój pulpit ma także otwarty port SSH 22? Jeśli dwie lub więcej maszyn znajduje się w sieci LAN, a wszystkie te komputery korzystają z SSH, a do sieci LAN może odwoływać się tylko zewnętrzny adres IP udostępniany przez dwa komputery, w jaki sposób mogę określić, do której maszyny w tej sieci LAN chcę się podłączyć?


„A maska ​​podsieci określa, który węzeł w sieci LAN (zewnętrzny adres IP współużytkowany przez wszystkie urządzenia) pochodzi z danych, prawda?” Nie, to źle. Masz do czynienia z translacją adresów sieciowych (NAT), sprawdź, jak działa NAT i czym jest przekierowanie portów.
Ƭᴇcʜιᴇ007

Odpowiedzi:


3

Maski podsieci

Maska podsieci jest używana tylko do grupowania komputerów w jednej sieci w podsieci.

Adres IPv4 zawiera cztery oktety, łącznie 32 bity. Powiedzmy, że masz kilka komputerów w sieci LAN i mają przypisane te adresy IP i maski podsieci:

  1. IP 192.168.0.1, maska 255.255.255.0
  2. IP 192.168.0.6, maska 255.255.255.0
  3. IP 192.168.1.1, maska 255.255.255.248
  4. IP 192.168.1.6, maska 255.255.255.248
  5. IP 192.168.1.12, maska 255.255.255.248

Aby określić, które komputery należą do której podsieci, musimy zastosować maskę do adresów IP:

  • Konwertuj adresy IP i maski na pliki binarne

    1. IP 11000000 10101000 00000000 00000001, maska 11111111 11111111 11111111 00000000
    2. IP 11000000 10101000 00000000 00000110, maska 11111111 11111111 11111111 00000000
    3. IP 11000000 10101000 00000001 00000001, maska 11111111 11111111 11111111 11111000
    4. IP 11000000 10101000 00000001 00000110, maska 11111111 11111111 11111111 11111000
    5. IP 11000000 10101000 00000001 00001100, maska 11111111 11111111 11111111 11111000
  • Wykonaj operację logiczną „i”, tj. Kopiuj 1 bity, w których znajdują się zarówno IP, jak i maska 1 i wypełnij dziury 0 s

    1.    11000000 10101000 00000000 00000001
        & 11111111 11111111 11111111 00000000
        -------------------------------------
        = 11000000 10101000 00000000 00000000
    
    2.    11000000 10101000 00000000 00000110
        & 11111111 11111111 11111111 00000000
        -------------------------------------
        = 11000000 10101000 00000000 00000000
    
    3.    11000000 10101000 00000001 00000001
        & 11111111 11111111 11111111 11111000
        -------------------------------------
        = 11000000 10101000 00000001 00000000
    
    4.    11000000 10101000 00000001 00000110
        & 11111111 11111111 11111111 11111000
        -------------------------------------
        = 11000000 10101000 00000001 00000000
    
    5.    11000000 10101000 00000001 00001100
        & 11111111 11111111 11111111 11111000
        -------------------------------------
        = 11000000 10101000 00000001 00001000
    
  • Konwertuj wyniki z powrotem na dziesiętny

    1. 192.168.0.0
    2. 192.168.0.0
    3. 192.168.1.0
    4. 192.168.1.0
    5. 192.168.1.8
  • Są to adresy podsieci naszych komputerów. Jeśli komputery mają identyczne adresy podsieci, należą do tej samej podsieci.

    • Komputery 1 i 2 należą do jednej podsieci
    • Komputery 3 i 4 należą do innej podsieci
    • Komputer 5 należy do trzeciej podsieci

Podsieci mają znaczenie tylko w sieci lokalnej, tj. komputery podłączone do jednego przełącznik . Przełącznik jest następnie podłączony do routera, który kieruje pakiety sieciowe między przełącznikiem a modemem. Prawdopodobnie masz wszystkie trzy w jednym urządzeniu.

Przełącznik, router i modem

  • Switch - pozwala połączyć więcej niż dwa komputery razem. Nie możesz po prostu przylutować wielu kabli sieciowych i połączyć ich z wieloma komputerami, musisz użyć przełącznika.

  • Modem - zapewnia dwukierunkową konwersję między różnymi standardami sieci. Twój dostawca usług internetowych używa innego standardu sieci niż zwykłe sieci LAN, więc potrzebujesz modemu, który przełoży pakiety sieciowe na format i pakiety na format.

  • Routery - routery trasa pakiety między dwiema sieciami. Nie można po prostu połączyć dwóch przełączników w różnych sieciach ze sobą, potrzebny jest router między nimi. Router ma jeden adres IP w każdej sieci, do której jest podłączony.

Twoja sieć wygląda mniej więcej tak:

            +-----------------------------------------+        
            |                                         |        
    PC1 +---------+                                   |        
            |     |                                   |        
            |   +--------+   +--------+   +-------+   |        
    PC2 +-------+ Switch +---+ Router +---+ Modem +-------+ ISP
            |   +--------+   +--------+   +-------+   |        
            |     |                                   |        
    PC3 +---------+                                   |        
            |                                         |        
            +-----------------------------------------+        

Jak działa routing?

Komputery po lewej stronie mają trzy adresy IP, powiedzmy:

  • 192.168.0.1
  • 192.168.0.2
  • 192.168.0.3

Jest także adres po stronie twojego routera.

Ale po prawej stronie masz tylko jeden adres IP, tak zwany „publiczny adres IP”. To adres internetowy routera. Kiedy ktoś z zewnątrz chce rozmawiać z komputerem w twojej sieci, jak określa, z kim chce rozmawiać?

Odpowiedź brzmi: nie może. Nie możesz po prostu zacząć rozmawiać z komputerem w sieci z zewnątrz. Ludzie w Internecie mogą komunikować się tylko z routerem.

Ten rodzaj sieci byłby jednak zupełnie bezużyteczny i najwyraźniej można pobierać dane z Internetu. Jak to działa? Działa, ponieważ zainicjowałeś połączenie. Gdy komputer w sieci próbuje komunikować się ze światem zewnętrznym, router przypisuje jeden ze swoich portów internetowych do portu tego komputera. Jeśli ktoś odpowie na ten port, router wie, gdzie powinien przesłać te pakiety. Ta technika jest nazywana translacją adresów sieciowych (w skrócie NAT).

Jak połączyć się z komputerami w sieci z zewnątrz?

Nie możesz bez właściwej konfiguracji routera, ponieważ to komputer w twojej sieci musi zainicjować połączenie. Będzie działać tylko wtedy, gdy komputer na drugim końcu ma publiczny adres IP, co jest mało prawdopodobne. Sieć prawdopodobnie wygląda tak:

    +----------------+                            +-----------------------+
    |                |                            |                       |
    |  Your cluster  |                            |     Other network     |
    |                |                            |                       |
    |    PC1 +---+   |                            |   +---+ Other PC      |
    |            |   |     +----------------+     |   |                   |
    |            |   |     |                |     |   |     The computer  |
    |    PC2 +-------------+  THE INTERNET  +-------------+ you're using  |
    |            |   |     |                |     |   |     to connect    |
    |            |   |     +----------------+     |   |                   |
    |    PC3 +---+   |                            |   +---+ Other PC      |
    |                |                            |                       |
    +----------------+                            +-----------------------+

Obie te sieci mają routery na granicy, a oba te routery używają NAT, więc skonfigurowanie połączenia wstecznego nie będzie działać.

Jak połączyć się z klastrem?

Musisz skonfigurować przekierowanie portów w routerze.

Przekierowanie portów trwale wiąże jeden port po stronie routera z jakimś portem jednego z komputerów.

Na przykład można przekazać port 5432 routera do portu 22 (domyślny port SSH) komputera PC1 w klastrze. Następnie możesz SSH do swojego publicznego adresu IP na porcie 5432, a będziesz faktycznie łączyć się z PC1 na porcie 22.

Jeśli chcesz połączyć się z innym komputerem w swoim klastrze, możesz to zrobić na dwa sposoby:

  • Prześlij inny port do innej maszyny

  • Użyj PC1. PC1 jest podłączony do twojej sieci LAN i może rozmawiać z innymi komputerami w sieci LAN bez routingu lub NAT. Możesz SSH do PC1 przez przekierowany port, a następnie SSH z PC1 do PC2. Jest to mniej wydajne niż bezpośrednie połączenie, ale nie wymaga żadnej dodatkowej konfiguracji.


To jest piekielna odpowiedź. Dziękuję Ci bardzo!
Zulfe

0

Myślę, że powinieneś sprawdzić, jak działa podsieć IPv4, ponieważ masz niewłaściwy koniec drążka, a następnie przeczytaj o NAT-PMP. Jednak w skrócie:

Masz dwie sieci, internet i sieć. Są one całkowicie oddzielne, z wyjątkiem routera NAT w środku. Gdy chcesz połączyć się ze światem zewnętrznym (tj. Podsiecią poza własną), komputer kontaktuje się z „bramą” lub „trasą domyślną”. Będzie to twój router NAT. Następnie router przekazuje ruch w przód iw tył między komputerem a Internetem przy użyciu wewnętrznego, tymczasowego zestawu reguł opisujących połączenie.

Aby połączyć się z siecią ze świata zewnętrznego, musisz skonfigurować reguły mapowania portów NAT. Twój zewnętrzny adres IP jest właśnie taki; jeden adres IP identyfikujący port WAN routera, jego połączenie z Internetem, które wszystkie komputery współużytkują za pomocą NAT. Używając interfejsu routera, musisz ustawić reguły pozwalające na przekierowanie ruchu do określonych portów w interfejsie WAN routera do usług w sieci wewnętrznej.

na przykład Masz trzy komputery - 192.168.0.100, 192.168.0.101, 192.168.0.102, podsieć zamaskowana 255.255.255.0. Te trzy komputery działają na SSH na porcie 22. Twój zewnętrzny adres IP to 123.4.5.6

Aby uzyskać dostęp do trzech oddzielnych serwerów SSH, należy zmapować trzy zewnętrzne porty do trzech wewnętrznych adresów IP / kombinacji portów. na przykład

123.4.5.6:22222 -> 192.168.0.100:22
123.4.5.6:22223 -> 192.168.0.101:22
123.4.5.6:22224 -> 192.168.0.102:22

Ta funkcja jest wbudowana w twój router NAT - powinieneś być w stanie znaleźć konkretne instrukcje, aby ustawić to dla twojego modelu routera. Polecam jednak, żebyś najpierw zaczął czytać!

HTH!

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.