Przekierowanie portów to technika konieczna do dostępu do serwerów bądź usług znajdujących się w sieciach wewnętrznych normalnie niedostępnych „od strony” internetu. Konfiguracja nie jest specjalnie trudna ani skomplikowane, o ile ma się wszystkie potrzebne informacje.
Wstęp teoretyczny
Różne usługi wykorzystują różne porty: przeglądarka internetowa domyślnie łączy się z serwerem WWW na porcie o numerze 80, połączenia z MySQL używa portu 3306, a protokół do synchronizacji czasu – 123.
Załóżmy, że w sieci wewnętrznej jest kilka urządzeń (niezależnie czy jest to tablet, telefon, komputer czy laptop) i na jednym z nich, o adresie 192.168.1.2 jest zainstalowany serwer WWW który nasłuchuje na porcie 80.
Przyjmijmy też, że router ma w sieci wewnętrznej adres IP: 192.168.1.1, zaś na zewnątrz jego adres to 83.24.214.181. Ten ostatni został przyznany przez usługodawcę internetu – w tym wypadku jest to Neostrada od Orange. Czym jest router? To po prostu pośrednik między siecią wewnętrzną a internetem (który logicznie jest taką samą siecią jak ta wewnętrzna, tylko o dużo większej skali). Sytuację logiczną prezentuje poniższy obrazek.
W aktualnej konfiguracji wspomniany serwer WWW będzie dostępny z każdego urządzenia w sieci. Po wpisaniu adresu 192.168.1.2 w przeglądarce na dowolnym z urządzeń zostanie wyświetlona strona umieszczona na serwerze.
Co jednak gdyby ktoś chciał pochwalić się stroną w internecie? U innych użytkowników podanie adresu serwera w sieci wewnętrznej (czyli 192.168.1.2) nie zadziała, podobnie jak wpisanie 83.24.214.181. Choć jest to dobrym tropem, to router (który pośredniczy między internetem a siecią wewnętrzną) nie wie do którego z urządzeń przekierować komunikację.
Tutaj do akcji wkracza przekierowanie portów, czyli wydanie instrukcji routerowi, by każdy ruch na wskazanym porcie przekierował na konkretny adres IP. Ustawienie reguły by ruch na porcie o numerze 80 przekierować na adres 192.168.1.2 w zupełności wystarczy i ktokolwiek wpisze 83.24.214.181 zobaczy odpowiednią stronę internetową.
Konfiguracja przekierowania portów
Jeżeli wszystko jest jasne i zrozumiałe, trzeba będzie kolejno zdobyć adres IP routera, komputera i port na który trzeba przekierować ruch, a na koniec skonfigurować przekierowanie.
W tym celu na komputerze na który trzeba przekierować ruch trzeba uruchomić wiersz poleceń. Najprościej wcisnąć kombinację klawiszy windows + r i w okienku wpisać cmd. Po kliknięciu OK pojawi się okno konsoli gdzie trzeba wpisać ipconfig.
Pole opisane jako Brama domyślna to adres routera zaś Adres IPv4 to komputer. W tym wypadku są to 192.168.1.1 oraz 192.168.1.2.
By zdobyć numer portu najlepiej posiłkować się dokumentacją programu lub usługi, albo skorzystać z rozpiski na Wikipedii. Przyjmijmy, że chcę przekierować ruch dla połączeń SSH, a po sprawdzeniu rozpiski wiadomo, że jego numer to 22.
Nie pozostaje nic innego niż wpisać w oknie przeglądarki adres routera, czyli 192.168.1.1, zalogować się – login i hasło często zapisywane są na urządzeniu, w instrukcji lub umieszczonej w niej kartce papieru albo pamięci przeglądarki – i odnaleźć w menu funkcję nazwaną, lub brzmiącą podobnie do port forwarding. Niestety różni producenci chowają tę opcję w różnym miejscu zatem konieczne będzie dokładne sprawdzenie opcji. Gdy uda się znaleźć ekran konfiguracji przekierowania portów wystarczy w odpowiednie pola wpisać numer portu, adres IP na który trzeba go przekierować (często wystarczy wpisać ostatnia grupę cyfr – oktet – tak jest na prezentowanym przeze mnie zrzucie ekranu), zapisać zmiany i gotowe.
Czasami konieczne jest też wybranie protokołu. Najczęstsze opcje to TCP, UDP i Both, trzeba to skonsultować z dokumentacją konkretnej usługi. Poniżej prezentuję ekran konfiguracyjny dość leciwego już routera Linksys. Jak widać włączone są przekierowania ruchu HTTP i SSH na adres 192.168.1.2 oraz FTP na 192.168.1.3.
Dziękuję za radę, zadziałało w moim ruterze.