Как да препращате портове на вашия рутер

Въпреки че съвременните рутери се справят автоматично с повечето функции, някои приложения ще изискват ръчно препращане на порт към това приложение или устройство. За щастие наистина е лесно да се направи, ако знаете къде да търсите.

Какво е пренасочване на портове?

Има много проекти, които сме обхванали, които използват вашия компютър като сървър за други устройства. Когато сте в мрежата си, повечето неща ще работят добре. Но някои приложения, ако искате да получите достъп до тях, когато сте извън мрежата си, правят нещата значително по-космати. Нека започнем, като разгледаме защо е така.

Как вашият рутер обработва заявки и използва портове

Ето карта на обикновена домашна мрежа. Иконата в облака представлява по-големия интернет и вашия публичен или насочен към интернет адрес на Internet Protocol (IP). Този IP адрес представлява цялото ви домакинство от света на оустидите - като уличен адрес, по някакъв начин.

Червеният адрес 192.1.168.1 е адресът на рутера във вашата мрежа. Всички допълнителни адреси принадлежат на компютрите, които се виждат в долната част на изображението. Ако публичният ви IP адрес е като уличен адрес, помислете за вътрешните IP адреси като номера на апартаменти за този уличен адрес.

Диаграмата повдига интересен въпрос, за който може би не сте мислили преди. Как цялата информация от интернет достига до правилното устройство в мрежата? Ако посетите howtogeek.com на вашия лаптоп, как се оказва на вашия лаптоп, а не на работния плот на сина ви, ако публичният IP адрес е еднакъв за всички устройства?

Това е благодарение на чудесна магия за маршрутизация, известна като Превод на мрежови адреси (NAT). Тази функция се случва на ниво рутер, където NAT действа като трафик, насочвайки потока от мрежов трафик през рутера, така че един публичен IP адрес може да бъде споделен между всички устройства зад маршрутизатора. Поради NAT, всеки от вашето домакинство може да поиска уебсайтове и друго интернет съдържание едновременно и всичко ще бъде доставено на правилното устройство.

И така, къде влизат портовете в този процес? Портовете са старо, но полезно задържане от ранните дни на мрежовите изчисления. Навремето, когато компютрите можеха да изпълняват само едно приложение наведнъж, всичко, което трябваше да направите, беше да насочите един компютър към друг компютър в мрежата, за да ги свържете, тъй като те щяха да работят със същото приложение. След като компютрите станаха усъвършенствани за работа с множество приложения, ранните компютърни учени трябваше да се борят с въпроса за осигуряване на приложения, свързани с правилните приложения. Така се раждат пристанищата.

Някои портове имат специфични приложения, които са стандарти в цялата компютърна индустрия. Когато извличате уеб страница, например, тя използва порт 80. Софтуерът на приемащия компютър знае, че порт 80 се използва за обслужване на http документи, така че слуша там и отговаря съответно. Ако изпратите http заявка през различен порт - да речем 143 - уеб сървърът няма да я разпознае, защото не слуша там (въпреки че може да има нещо друго, като IMAP имейл сървър, който традиционно използва този порт).

Другите портове нямат предварително назначени употреби и можете да ги използвате за каквото искате. За да избегнете намеса в други стандартни приложения, най-добре е да използвате по-големи номера за тези алтернативни конфигурации. Plex Media Server използва порт 32400 например, а сървърите на Minecraft използват 25565 - и двата числа, които попадат в тази територия на „честната игра“.

Всеки порт може да се използва чрез TCP или UDP. Най-често се използва TCP или протокол за управление на предаването. UDP или User Datagram Protocol е по-рядко използван в домашни приложения с едно основно изключение: BitTorrent. В зависимост от това какво слуша, то ще очаква да бъдат отправени искания в единия или другия от тези протоколи.

Защо трябва да препращате портове

И така, защо точно ще трябва да препращате портове? Докато някои приложения се възползват от NAT, за да зададат свои собствени портове и да се справят с цялата конфигурация вместо вас, все още има много приложения, които не го правят и ще трябва да помогнете на вашия рутер, когато става въпрос за свързване на услуги и приложения .

В диаграмата по-долу започваме с проста предпоставка. Вие сте на вашия лаптоп някъде по света (с IP адрес 225.213.7.32) и искате да се свържете с домашната си мрежа за достъп до някои файлове. Ако просто включите домашния си IP адрес (127.34.73.214) във всеки инструмент, който използвате (например FTP клиент или приложение за отдалечен работен плот), и този инструмент не се възползва от тези разширени функции на рутера, които току-що споменахме, нямаш късмет. Няма да знае къде да изпрати заявката ви и нищо няма да се случи.

Това между другото е  страхотна функция за сигурност. Ако някой се свърже с домашната ви мрежа и не е свързан с валиден порт,  искате връзката да бъде отхвърлена. Това е защитната стена на вашия рутер, който си върши работата: отхвърля нежелани заявки. Ако обаче човекът, който чука на вашата виртуална врата, сте вие, тогава отхвърлянето не е толкова добре дошло и трябва да направим малко ощипване.

За да разрешите този проблем, искате да кажете на вашия рутер „хей: когато имам достъп до вас с тази програма, ще трябва да я изпратите на това устройство на този порт“. С тези инструкции на място, вашият рутер ще се увери, че имате достъп до правилния компютър и приложение във вашата домашна мрежа.

Така че в този пример, когато сте навън и използвате лаптопа си, използвате различни портове, за да отправяте своите заявки. Когато осъществявате достъп до IP адреса на домашната мрежа чрез порт 22, вашият рутер у дома знае, че това трябва да отиде на 192.168.1.100 вътре в мрежата. След това демонът SSH на вашата инсталация на Linux ще отговори. В същото време можете да направите заявка през порт 80, която вашият рутер ще изпрати до уеб сървъра на 192.168.1.150. Или можете да опитате да управлявате дистанционно лаптопа на сестра си с VNC и вашият рутер ще ви свърже с вашия лаптоп на 192.168.1.200. По този начин можете лесно да се свържете с всички устройства, за които сте настроили правило за пренасочване на портове.

Полезността на пренасочването на портове обаче не свършва дотук! Можете дори да използвате пренасочването на портове, за да промените номерата на портовете на съществуващите услуги за яснота и удобство. Да предположим например, че имате два уеб сървъра, работещи в домашната ви мрежа и искате единият да е лесно и очевидно достъпен (напр. Това е сървър за времето, който искате хората да могат лесно да намерят), а другият уеб сървър е за личен проект.

Когато осъществявате достъп до домашната си мрежа от публичния порт 80, можете да кажете на рутера си да го изпрати до порт 80 на метеорологичния сървър на 192.168.1.150, където ще слуша на порт 80. Но можете да кажете на рутера си че когато имате достъп до него през порт 10 000, той трябва да премине към порт 80 на вашия личен сървър, 192.168.1.250. По този начин не е необходимо вторият компютър да бъде преконфигуриран, за да използва различен порт, но все пак можете да управлявате ефективно трафика - и в същото време, като оставите първия уеб сървър, свързан с порт 80, улеснявате достъпа на хората до вашия гореспоменатия проект за метеорологичен сървър.

Сега, когато знаем какво е пренасочване на портове и защо може да искаме да го използваме, нека разгледаме някои малки съображения относно пренасочването на портове, преди да се потопим в действителното му конфигуриране.

Съображения преди конфигуриране на вашия рутер

Има няколко неща, които трябва да имате предвид, преди да седнете, за да конфигурирате рутера си и да преминете през тях предварително, гарантирано ще намали разочарованието.

Задайте статичен IP адрес за вашите устройства

Първо и най-важно, всички ваши правила за пренасочване на портове ще се разпаднат, ако ги присвоявате на устройства с динамични IP адреси, зададени от DHCP услугата на вашия рутер. Разглеждаме подробностите за това какво е DHCP в тази статия за назначения на DHCP срещу статични IP адреси, но ще ви дадем краткото резюме тук.

СВЪРЗАНИ: Как да зададете статични IP адреси на вашия рутер

Вашият рутер има набор от адреси, които запазва само за раздаване на устройства, когато се присъединят и напуснат мрежата. Помислете за това като за получаване на номер в закусвалня, когато пристигнете - вашият лаптоп се присъедини, бум, той получава IP адрес 192.168.1.98. Вашият iPhone се присъединява, бум, получава адрес 192.168.1.99. Ако извадите тези устройства офлайн за определен период от време или рутерът бъде рестартиран, тогава цялата лотария за IP адреси се случва отново.

При нормални обстоятелства това е повече от добре. Вашият iPhone не се интересува кой вътрешен IP адрес има. Но ако сте създали правило за пренасочване на портове, което казва, че сървърът ви за игри е на определен IP адрес и след това рутерът му дава нов, това правило няма да работи и никой няма да може да се свърже с вашия сървър за игри. За да избегнете това, трябва да присвоите статичен IP адрес на всяко мрежово устройство, на което задавате правило за пренасочване на портове. Най-добрият начин да направите това е чрез вашия рутер - разгледайте това ръководство за повече информация.

Знайте своя IP адрес (и задайте динамичен DNS адрес)

В допълнение към използването на статични IP задания за съответните устройства във вашата мрежа, вие също искате да знаете своя външен IP адрес - можете да го намерите, като посетите whatismyip.com, докато сте в домашната си мрежа. Въпреки че е възможно да имате един и същ публичен IP адрес в продължение на месеци или дори повече от година, вашият публичен IP адрес може да се промени (освен ако вашият доставчик на интернет услуги изрично не ви е предоставил статичен публичен IP адрес). С други думи, не можете да разчитате на въвеждането на вашия цифров IP адрес в какъвто и да е отдалечен инструмент, който използвате (и не можете да разчитате на предоставянето на този IP адрес на приятел).

СВЪРЗАНИ: Как лесно да осъществите достъп до вашата домашна мрежа от всяко място с динамичен DNS

Сега, докато можете да преминете през караницата с ръчна проверка на този IP адрес всеки път, когато излезете от къщата и възнамерявате да работите далеч от дома (или всеки път, когато вашият приятел ще се свърже с вашия сървър на Minecraft или други подобни), това е голямо главоболие. Вместо това силно препоръчваме да настроите динамична DNS услуга, която ще ви позволи да свържете вашия (променящ се) домашен IP адрес със запомнящ се адрес като mysuperawesomeshomeserver.dynu.net. За повече информация как да настроите динамична DNS услуга с вашата домашна мрежа, вижте пълния ни урок тук.

Обърнете внимание на локалните защитни стени

След като настроите пренасочването на портове на ниво рутер, има вероятност да се наложи да промените правилата на защитната стена и на вашия компютър. Например през годините получихме много имейли от разочаровани родители, които настройват пренасочване на портове, за да могат децата им да играят Minecraft с приятелите си. Почти във всеки случай проблемът е, че въпреки правилната настройка на правилата за пренасочване на портове на рутера, някой игнорира заявката за защитна стена на Windows, питайки дали е добре, ако платформата Java (която работи с Minecraft) може да получи достъп до по-големия интернет.

Имайте предвид, че на компютри, работещи с локална защитна стена и / или антивирусен софтуер, който включва защитна стена, най-вероятно ще трябва да потвърдите, че свързаната от вас връзка е наред.

Първа стъпка: Намерете правилата за пренасочване на портове на вашия рутер

Изтощени от всички уроци по работа в мрежа? Не се притеснявайте, най-накрая е време да го настроите - и сега, когато знаете основите, това е доста просто.

Колкото и да се радваме да предоставим точни инструкции за вашия точен рутер, реалността е, че всеки производител на рутери има свой собствен софтуер и как изглежда този софтуер може дори да варира в различните модели рутери. Вместо да се опитваме да уловим всяка вариация, ние ще подчертаем няколко, за да ви дадем представа как изглежда менюто и ще ви насърчим да потърсите ръководството или онлайн помощните файлове за вашия конкретен рутер, за да намерите спецификите.

Като цяло ще търсите нещо, наречено - познахте - „Препращане на портове“. Може да се наложи да прегледате различните категории, за да го намерите, но ако вашият рутер е добър, трябва да е там.

За сравнение, ето как изглежда менюто за препращане на портове на рутера D-Link DIR-890L:

И ето как изглежда менюто за пренасочване на портове на същия рутер, работещ с популярния фърмуер DD-WRT на трети страни:

Както можете да видите, сложността между двата изгледа варира значително, дори при един и същ хардуер. Освен това местоположението е напълно различно в менютата. Като такъв е най-полезно, ако търсите точните инструкции за вашето устройство, като използвате ръководството или заявка за търсене.

След като намерите менюто, е време да зададете действителното правило.

Стъпка втора: Създайте правило за пренасочване на портове

След като научихте всичко за пренасочването на портове, настроите динамичен DNS за вашия домашен IP адрес и цялата друга работа, която влезе в това, важната стъпка - създаването на действителното правило - е почти разходка в парка. В менюто за пренасочване на портове на нашия рутер ще създадем две нови правила за пренасочване на портове: едно за музикалния сървър Subsonic и едно за нов сървър на Minecraft, който току-що настроихме.

Въпреки разликите в местоположението на различния софтуер на рутера, общият вход е един и същ. Почти универсално ще назовете правилото за пренасочване на портове. Най-добре е просто да го наименувате какъв е сървърът или услугата и след това да го добавите, ако е необходимо за по-голяма яснота (например „Webserver“ или „Webserver-Weather“, ако има повече от един). Помните ли протокола TCP / UDP, за който говорихме в началото? Също така ще трябва да посочите TCP, UDP или и двете. Някои хора са много войнствени да разберат точно какъв протокол използва всяко приложение и услуга и да съчетаят идеално нещата от съображения за сигурност. Ние първи ще признаем, че сме мързеливи в това отношение и почти винаги просто избираме „И двете“, за да спестим време.

Някои фърмуери на рутера, включително по-усъвършенствания DD-WRT, който използваме на екранната снимка по-горе, ще ви позволят да посочите стойност „Source“, която е списък с IP адреси, към които ограничавате пренасочването на порта за целите на сигурността. Можете да използвате тази функция, ако желаете, но бъдете предупредени, че тя въвежда съвсем нов набор от главоболия, тъй като предполага, че отдалечените потребители (включително вас, когато сте далеч от дома и приятели, които се свързват) имат статични IP адреси.

След това ще трябва да поставите външния порт. Това е портът, който ще бъде отворен на рутера и с лице към Интернет. Тук можете да използвате всеки номер, който искате, между 1 и 65353, но практически повечето по-ниски номера се заемат от стандартни услуги (като имейл и уеб сървъри) и много от по-високите номера се присвояват на доста често срещани приложения. Имайки това предвид, бихме препоръчали да изберете номер над 5000 и за по-голяма безопасност да използвате Ctrl + F за търсене в този дълъг списък с номера на TCP / UDP портове, за да сте сигурни, че не избирате порт, който да е в конфликт съществуваща услуга, която вече използвате.

И накрая, въведете вътрешния IP адрес на устройството, порта, който сте на това устройство, и (ако е приложимо) включете правилото. Не забравяйте да запазите настройките.

Стъпка трета: Тествайте правилото за пренасочване на портове

Най-очевидният начин да проверите дали вашият порт напред е работил е да се свържете, като използвате рутината, предназначена за порта (напр. Вашият приятел да свърже своя клиент на Minecraft към вашия домашен сървър), но това не винаги е веднага налично решение, ако не сте далеч от вкъщи.

За щастие има удобна малка проверка на портовете, достъпна онлайн на YouGetSignal.com. Можем да тестваме, за да видим дали нашият порт за сървър на Minecraft е взел напред, просто като накараме тестера на порта да се опита да се свърже с него. Включете вашия IP адрес и номера на порта и кликнете върху „Проверка“.

Трябва да получите съобщение, както се вижда по-горе, като „Порт X е отворен на [Вашият IP]“. Ако портът се отчита като затворен, проверете отново настройките в менюто за препращане на портове на вашия рутер, както и данните за вашия IP и порт в тестера.

Леко е трудно да настроите пренасочване на портове, но докато присвоите статичен IP адрес на целевото устройство и настроите динамичен DNS сървър за вашия домашен IP адрес, това е задача, която трябва да посетите само веднъж, за да наслаждавайте се на безпроблемен достъп до вашата мрежа в бъдеще.