Chociaż nowoczesne routery obsługują większość funkcji automatycznie, niektóre aplikacje wymagają ręcznego przekierowania portu do tej aplikacji lub urządzenia. Na szczęście jest to naprawdę proste, jeśli wiesz, gdzie szukać.
Co to jest przekierowanie portów?
Omówiliśmy wiele projektów, które wykorzystują Twój komputer jako serwer dla innych urządzeń. Gdy jesteś w swojej sieci, większość rzeczy będzie działać dobrze. Ale niektóre aplikacje, jeśli chcesz uzyskać do nich dostęp, gdy jesteś poza swoją siecią, sprawiają, że rzeczy są znacznie bardziej owłosione. Zacznijmy od przyjrzenia się, dlaczego tak jest.
Jak router obsługuje żądania i wykorzystuje porty
Oto mapa prostej sieci domowej. Ikona chmury reprezentuje większy internet i Twój publiczny lub skierowany do przodu adres protokołu internetowego (IP). Ten adres IP reprezentuje całe twoje gospodarstwo domowe z innego świata - w pewnym sensie jak adres pocztowy.
Czerwony adres 192.1.168.1 to adres routera w Twojej sieci. Wszystkie dodatkowe adresy należą do komputerów widocznych na dole obrazu. Jeśli Twój publiczny adres IP przypomina adres ulicy, pomyśl o wewnętrznych adresach IP, takich jak numery mieszkań dla tego adresu.
Diagram rodzi interesujące pytanie, o którym być może wcześniej nie pomyślałeś. W jaki sposób wszystkie informacje z Internetu trafiają do odpowiedniego urządzenia w sieci? Jeśli odwiedzasz stronę howtogeek.com na swoim laptopie, w jaki sposób trafia ona na laptopa, a nie na komputer Twojego syna, jeśli publiczny adres IP jest taki sam dla wszystkich urządzeń?
Dzieje się tak dzięki wspaniałej magii routingu znanej jako translacja adresów sieciowych (NAT). Ta funkcja występuje na poziomie routera, na którym NAT działa jak policjant ruchu, kierując przepływem ruchu sieciowego przez router, tak aby pojedynczy publiczny adres IP mógł być współdzielony między wszystkimi urządzeniami za routerem. Dzięki NAT każdy domownik może jednocześnie żądać stron internetowych i innych treści internetowych, a wszystko to zostanie dostarczone na właściwe urządzenie.
Skąd więc porty wchodzą w ten proces? Porty to stara, ale użyteczna pozostałość od wczesnych dni przetwarzania sieciowego. W dawnych czasach, gdy komputery mogły uruchamiać tylko jedną aplikację naraz, wszystko, co trzeba było zrobić, to skierować jeden komputer na inny komputer w sieci, aby je połączyć, tak jakby działały z tą samą aplikacją. Kiedy komputery stały się wyrafinowane do uruchamiania wielu aplikacji, pierwsi informatycy musieli zmagać się z kwestią zapewnienia, że aplikacje są połączone z odpowiednimi aplikacjami. Tak narodziły się porty.
Niektóre porty mają określone aplikacje, które są standardami w całej branży komputerowej. Na przykład, kiedy pobierasz stronę internetową, używa ona portu 80. Oprogramowanie komputera odbierającego wie, że port 80 jest używany do obsługi dokumentów http, więc nasłuchuje i odpowiednio odpowiada. Jeśli wyślesz żądanie HTTP przez inny port - powiedzmy 143 - serwer sieciowy go nie rozpozna, ponieważ tam nie nasłuchuje (chociaż może być coś innego, na przykład serwer poczty IMAP, który tradycyjnie używa tego portu).
Inne porty nie mają wstępnie przypisanych zastosowań i możesz ich używać do wszystkiego, co chcesz. Aby uniknąć kolizji z innymi aplikacjami spełniającymi normy, najlepiej jest używać większych liczb dla tych alternatywnych konfiguracji. Na przykład Plex Media Server używa portu 32400, a serwery Minecraft używają 25565 - obie liczby mieszczą się w tym obszarze „uczciwej gry”.
Każdy port może być używany przez TCP lub UDP. Protokół TCP, czyli Transmission Control Protocol, jest najczęściej używany. Protokół UDP lub User Datagram Protocol jest rzadziej używany w aplikacjach domowych z jednym głównym wyjątkiem: BitTorrent. W zależności od tego, co nasłuchuje, oczekuje się, że żądania będą wysyłane w jednym lub drugim z tych protokołów.
Dlaczego musisz przekazywać porty
Dlaczego więc dokładnie miałbyś przekazywać porty? Podczas gdy niektóre aplikacje korzystają z NAT, aby ustawić własne porty i obsłużyć całą konfigurację za Ciebie, nadal istnieje wiele aplikacji, które tego nie robią, i będziesz musiał pomóc routerowi, jeśli chodzi o łączenie usług i aplikacji .
Na poniższym diagramie zaczynamy od prostego założenia. Jesteś na swoim laptopie gdzieś na świecie (z adresem IP 225.213.7.32) i chcesz połączyć się z siecią domową, aby uzyskać dostęp do niektórych plików. Jeśli po prostu podłączysz swój domowy adres IP (127.34.73.214) do dowolnego narzędzia, z którego korzystasz (na przykład klienta FTP lub aplikacji zdalnego pulpitu), a to narzędzie nie korzysta z tych zaawansowanych funkcji routera, o których właśnie wspomnieliśmy, nie masz szczęścia. Nie będzie wiedział, gdzie wysłać Twoją prośbę, i nic się nie stanie.
Nawiasem mówiąc, to jest plik wspaniały funkcja bezpieczeństwa. Jeśli ktoś łączy się z twoją siecią domową i nie jest podłączony do prawidłowego portu, ty chcieć połączenie, które ma zostać odrzucone. To element zapory sieciowej routera wykonujący swoją pracę: odrzucający niepożądane żądania. Jeśli jednak osobą, która puka do Twoich wirtualnych drzwi, jesteś Ty, to odrzucenie nie jest mile widziane i musimy trochę poprawić.
Aby rozwiązać ten problem, chcesz powiedzieć swojemu routerowi „hej: kiedy uzyskam dostęp do Ciebie za pomocą tego programu, musisz wysłać go do tego urządzenia przez ten port”. Dzięki tym instrukcjom router zapewni dostęp do odpowiedniego komputera i aplikacji w sieci domowej.
W tym przykładzie, gdy jesteś poza domem i używasz laptopa, do wysyłania żądań używasz różnych portów. Gdy uzyskujesz dostęp do adresu IP swojej sieci domowej za pomocą portu 22, Twój domowy router wie, że powinien to być adres 192.168.1.100 w sieci. Następnie demon SSH w instalacji Linuksa odpowie. W tym samym czasie możesz wysłać żądanie przez port 80, które router wyśle do serwera WWW pod adresem 192.168.1.150. Możesz też spróbować zdalnie sterować laptopem swojej siostry za pomocą VNC, a router połączy Cię z laptopem pod adresem 192.168.1.200. W ten sposób możesz łatwo połączyć się ze wszystkimi urządzeniami, dla których masz skonfigurowaną regułę przekierowania portów.
Na tym jednak nie koniec użyteczności przekierowania portów! Możesz nawet użyć przekierowania portów, aby zmienić numery portów istniejących usług dla przejrzystości i wygody. Na przykład, powiedzmy, że masz dwa serwery internetowe działające w sieci domowej i chcesz, aby jeden był łatwo i wyraźnie dostępny (np. Jest to serwer pogodowy, który chcesz, aby ludzie mogli łatwo znaleźć), a drugi serwer sieciowy jest przeznaczony dla projekt.
Kiedy uzyskujesz dostęp do sieci domowej z publicznego portu 80, możesz powiedzieć routerowi, aby wysłał ją do portu 80 na serwerze pogodowym pod adresem 192.168.1.150, gdzie będzie nasłuchiwał na porcie 80. Ale możesz powiedzieć routerowi że kiedy uzyskujesz do niego dostęp przez port 10 000, powinien przejść do portu 80 na twoim osobistym serwerze, 192.168.1.250. W ten sposób drugi komputer nie musi być rekonfigurowany, aby używał innego portu, ale nadal możesz efektywnie zarządzać ruchem - a jednocześnie pozostawiając pierwszy serwer WWW połączony z portem 80, ułatwiasz ludziom dostęp do twojego wspomniany projekt serwera pogodowego.
Teraz, gdy już wiemy, czym jest przekierowanie portów i dlaczego możemy chcieć go używać, przyjrzyjmy się kilku drobnym rozważaniom dotyczącym przekierowania portów, zanim zajmiemy się faktyczną konfiguracją.
Rozważania przed konfiguracją routera
Przed przystąpieniem do konfiguracji routera należy pamiętać o kilku rzeczach, a przeglądanie ich z wyprzedzeniem gwarantuje ograniczenie frustracji.
Ustaw statyczny adres IP dla swoich urządzeń
Przede wszystkim wszystkie reguły przekierowania portów rozpadną się, jeśli przypiszesz je do urządzeń z dynamicznymi adresami IP przypisanymi przez usługę DHCP routera. Zagłębiamy się w szczegóły tego, czym jest DHCP ten artykuł na temat DHCP a statyczne przypisywanie adresów IP , ale podamy tutaj krótkie podsumowanie.
ZWIĄZANE Z: Jak ustawić statyczne adresy IP w routerze
Twój router ma pulę adresów, które rezerwuje tylko do przekazywania urządzeniom, które dołączają do sieci i opuszczają ją. Pomyśl o tym jak o uzyskaniu numeru w restauracji po przyjeździe - Twój laptop dołącza, bum, otrzymuje adres IP 192.168.1.98. Twój iPhone dołącza, boom, otrzymuje adres 192.168.1.99. Jeśli wyłączysz te urządzenia na pewien czas lub router zostanie ponownie uruchomiony, cała loteria adresów IP dzieje się od nowa.
W normalnych okolicznościach jest to więcej niż w porządku. Twój iPhone nie dba o to, jaki ma wewnętrzny adres IP. Ale jeśli utworzysz regułę przekierowania portów, która mówi, że twój serwer gry znajduje się pod określonym adresem IP, a następnie router poda mu nowy, ta reguła nie zadziała i nikt nie będzie mógł połączyć się z twoim serwerem gry. Aby tego uniknąć, musisz przypisać statyczny adres IP do każdego urządzenia sieciowego, do którego przypisujesz regułę przekierowania portów. Najlepszym sposobem jest użycie routera - sprawdź ten przewodnik po więcej informacji.
Poznaj swój adres IP (i ustaw dynamiczny adres DNS)
Oprócz używania statycznych przypisań adresów IP dla odpowiednich urządzeń w sieci, chcesz również znać swój zewnętrzny adres IP - możesz go znaleźć, odwiedzając whatismyip.com w sieci domowej. Chociaż możliwe jest, że możesz mieć ten sam publiczny adres IP przez miesiące lub nawet ponad rok, Twój publiczny adres IP może się zmienić (chyba że dostawca usług internetowych wyraźnie podał ci statyczny publiczny adres IP). Innymi słowy, nie możesz polegać na wpisaniu swojego numerycznego adresu IP w jakimkolwiek zdalnym narzędziu, którego używasz (i nie możesz polegać na tym, że podasz go znajomemu).
ZWIĄZANE Z: Jak łatwo uzyskać dostęp do sieci domowej z dowolnego miejsca dzięki dynamicznemu DNS
Teraz, chociaż możesz przejść przez kłopoty związane z ręcznym sprawdzaniem adresu IP za każdym razem, gdy wychodzisz z domu i zamierzasz pracować poza domem (lub za każdym razem, gdy twój przyjaciel będzie łączył się z serwerem Minecraft lub podobnym), to jest duży bół głowy. Zamiast tego zdecydowanie zalecamy skonfigurowanie usługi dynamicznego DNS, która pozwoli Ci połączyć (zmieniający się) domowy adres IP z niezapomnianym adresem, takim jak mysuperawesomeshomeserver.dynu.net. Aby uzyskać więcej informacji, jak skonfigurować usługę dynamicznego DNS w sieci domowej, sprawdź nasz pełny tutorial tutaj .
Zwróć uwagę na lokalne zapory
Po skonfigurowaniu przekierowania portów na poziomie routera może być konieczne zmodyfikowanie reguł zapory na komputerze. Na przykład przez lata otrzymaliśmy wiele e-maili od sfrustrowanych rodziców, którzy ustawili przekierowanie portów, aby ich dzieci mogły grać w Minecrafta ze znajomymi. W prawie każdym przypadku problem polega na tym, że pomimo prawidłowego skonfigurowania reguł przekierowania portów na routerze, ktoś zignorował żądanie zapory systemu Windows pytając, czy wszystko jest w porządku, jeśli platforma Java (na której działa Minecraft) może uzyskać dostęp do większego Internetu.
Pamiętaj, że na komputerach z lokalną zaporą sieciową i / lub oprogramowaniem antywirusowym obejmującym zaporę sieciową prawdopodobnie będziesz musiał potwierdzić, że skonfigurowane połączenie jest prawidłowe.
Krok pierwszy: znajdź reguły przekierowania portów w routerze
Wyczerpany wszystkimi lekcjami networkingowymi? Nie martw się, nadszedł czas, aby to skonfigurować - a teraz, gdy znasz już podstawy, jest to całkiem proste.
Chcielibyśmy podać dokładne instrukcje dotyczące konkretnego routera, ale rzeczywistość jest taka, że każdy producent routera ma własne oprogramowanie, a jego wygląd może się nawet różnić w zależności od modelu routera. Zamiast próbować uchwycić każdą odmianę, wyróżnimy kilka, aby pokazać, jak wygląda menu, i zachęcić do przejrzenia instrukcji lub plików pomocy online dla konkretnego routera, aby znaleźć szczegółowe informacje.
Ogólnie rzecz biorąc, będziesz szukał czegoś, co nazywa się - zgadłeś - „Przekierowanie portów”. Być może będziesz musiał przejrzeć różne kategorie, aby go znaleźć, ale jeśli twój router jest dobry, powinien tam być.
Dla porównania, tak wygląda menu przekierowania portów na routerze D-Link DIR-890L:
A oto, jak wygląda menu przekierowania portów na tym samym routerze, na którym działa popularne oprogramowanie wewnętrzne DD-WRT innej firmy :
Jak widać, złożoność między dwoma widokami znacznie się różni, nawet na tym samym sprzęcie. Ponadto lokalizacja jest zupełnie inna w menu. W związku z tym najbardziej przydatne jest wyszukanie dokładnych instrukcji dotyczących swojego urządzenia, korzystając z instrukcji lub zapytania wyszukiwania.
Po zlokalizowaniu menu czas skonfigurować rzeczywistą regułę.
Krok drugi: Utwórz regułę przekierowania portów
Po nauczeniu się wszystkiego o przekierowywaniu portów, skonfigurowaniu dynamicznego DNS dla domowego adresu IP i całej innej pracy, która w tym została wykonana, ważnym krokiem - utworzeniem faktycznej reguły - jest spacer po parku. W menu przekierowania portów na naszym routerze zamierzamy utworzyć dwie nowe reguły przekierowania portów: jedną dla serwera muzycznego Subsonic i jedną dla nowego serwera Minecraft, który właśnie skonfigurowaliśmy.
Pomimo różnic w lokalizacji w różnych programach routera, ogólne dane wejściowe są takie same. Prawie uniwersalnie nazwiesz regułę przekierowania portów. Najlepiej jest po prostu nazwać to, czym jest serwer lub usługa, a następnie w razie potrzeby dodać je dla jasności (np. „Serwer sieciowy” lub „Serwer sieciowy-Pogoda”, jeśli jest więcej niż jeden). Pamiętasz protokół TCP / UDP, o którym mówiliśmy na początku? Musisz także określić TCP, UDP lub oba. Niektórzy ludzie są bardzo wojowniczy, jeśli chodzi o ustalenie dokładnie, jakiego protokołu używa każda aplikacja i usługa, i idealne dopasowanie elementów do celów bezpieczeństwa. Jako pierwsi przyznamy, że jesteśmy pod tym względem leniwi i prawie zawsze wybieramy „Obie”, aby zaoszczędzić czas.
Niektóre oprogramowanie sprzętowe routerów, w tym bardziej zaawansowany DD-WRT, którego używamy na powyższym zrzucie ekranu, umożliwia określenie wartości „Źródło”, która jest listą adresów IP, do których ograniczasz przekierowanie portu ze względów bezpieczeństwa. Możesz korzystać z tej funkcji, jeśli chcesz, ale ostrzegamy, że wprowadza ona zupełnie nowe bóle głowy, ponieważ zakłada, że zdalni użytkownicy (w tym Ty, gdy jesteś poza domem i łączący się znajomi) mają statyczne adresy IP.
Następnie musisz podłączyć port zewnętrzny. To jest port, który będzie otwarty na routerze i będzie skierowany do Internetu. Możesz użyć dowolnego numeru między 1 a 65353, ale praktycznie większość niższych numerów jest zajmowana przez standardowe usługi (takie jak poczta e-mail i serwery WWW), a wiele wyższych numerów jest przypisanych do dość powszechnych aplikacji. Mając to na uwadze, zalecamy wybranie liczby powyżej 5000 i, dla większego bezpieczeństwa, użycie Ctrl + F do wyszukiwania długa lista numerów portów TCP / UDP aby upewnić się, że nie wybierasz portu, który koliduje z istniejącą usługą, której już używasz.
Na koniec wpisz wewnętrzny adres IP urządzenia, port na tym urządzeniu i (jeśli dotyczy) włącz regułę. Nie zapomnij zapisać ustawień.
Krok trzeci: Przetestuj regułę przekierowania portów
Najbardziej oczywistym sposobem sprawdzenia, czy przekierowanie portu zadziałało, jest połączenie za pomocą procedury przeznaczonej dla portu (np. Poproś znajomego o połączenie klienta Minecraft z serwerem domowym), ale nie zawsze jest to natychmiast dostępne rozwiązanie, jeśli nie ma Cię w domu od domu.
Na szczęście istnieje mały przydatny program do sprawdzania portów dostępny online pod adresem YouGetSignal.com . Możemy przetestować, czy przekierowanie naszego serwera Minecraft trwało po prostu przez próbę połączenia się z nim testera portu. Wprowadź swój adres IP i numer portu i kliknij „Sprawdź”.
Powinieneś otrzymać wiadomość, jak widać powyżej, na przykład „Port X jest otwarty na [Your IP]”. Jeśli port jest zgłaszany jako zamknięty, sprawdź dokładnie ustawienia w menu przekierowania portów na routerze oraz adres IP i dane portu w testerze.
Konfiguracja przekierowania portów jest trochę kłopotliwa, ale tak długo, jak przypiszesz statyczny adres IP do urządzenia docelowego i skonfigurujesz dynamiczny serwer DNS dla domowego adresu IP, jest to zadanie, które wystarczy odwiedzić raz ciesz się bezproblemowym dostępem do swojej sieci w przyszłości.