понедельник, 5 марта 2012 г.

Удаленный доступ к NAS серверу D-Link


Частенько в форумах новичками поднимается вопрос об удаленном доступе к сетевому хранилищу, расположенному то-ли дома на полочке, то-ли в офисе - из внешней сети, то есть из Интернета. На самом деле, ничего сложного в этом нет, просто изначально необходимо понимать механизмы работы сети. Для этого, как и в любой математической системе, прежде чем говорить о чем-либо, необходимо дать понятия удиницы и нуля, то есть определить кто есть кто :)
Итак, рассмотрим самые главные понятия, используемые в организации сетей, а именно, что такое IP адрес, что такое порт, что такое NAT, DNS, и что такое перенаправление портов.

 

IP адрес

IP адрес - это вроде имя компьютера. По правде говоря, IP адрес - это все-же адрес сетевого интерфейса, коих в одном компьютере может быть несколько, но для упрощения, будем считать, что для одного компьютера может быть один IP адрес. Для того, чтобы компьютер имел возможность обмена данными в сети, он должен иметь свой уникальный IP адрес. IP адресом является комбинация четырех трехзначных цифровых значений, разделенных между собой точкой, значения которых колеблются от 0 до 255. Каждый компьютер в Internet имеет свой абсолютно уникальный IP адрес, то есть не может быть два компьютера в интернете, с одинаковым IP адресом.

Компьютеры, находящиеся в отдельно взятой локальной сети имеющей доступ к Интернету, могут быть отграничены от глобальной сети Internet, неким NAT. Компьютеры, расположенные за NAT, также имеют свои IP адреса, однако эти адреса являются уникальными только в пределах отдельно взятой локальной сети, и не доступны из глобальной сети Internet. Обычно такие адреса в локальной сети имеют вид: 192.168.x.x, 10.0.x.x (где х - числовое значение от 0 до 255).

 

Порты

Каждый IP адрес подразделен на порты. Это сделано для того, чтобы один отдельно взятый IP адрес мог использоваться множеством приложений одновременно, то есть чтобы программы могли пересылать данные в одно и то же время по одному IP адресу. Для примера, использование портов дает нам возможность одновременно серфить в интернете и проверять e-mail, так как наш браузер использует порт 80, а e-mail передает данные на 110 порту.
Порт можно рассматривать как маршрут для данных. Когда программа использует определенный порт для приема и передачи данных, данный порт ака маршрут считается заблокированным. Это означает, что никакая другая программа не сможет воспользоваться данным портом для передачи данных, то есть один порт может использоваться только одним приложением.

NAT

NAT - аббревиатура от Network Address Translation - Трансляция Сетевых Адресов. NAT берет один сетевой адрес, и разбивает его на несколько сетевых адресов. Для упрощения понимания этого механизма рассмотрим иллюстрацию:
Механизм NAT
На данном рисунке изображен роутер (выполняющий функцию NAT) подключенный к Интернету, и локальный компьютер, подключенный к данному роутеру. Здесь видно, как внешний IP адрес (External IP) разбит на два внутренних IP адреса (Internal IP1 и Internal IP2). Первый IP адрес (Internal IP1) выполняет роль шлюза, второй адрес Internal IP2 - адрес первого компьютера в локальной сети. Обратите внимание, что роутер имеет два IP адреса: это External IP - внешний IP адрес доступный из Интернета, и внутренний Internal IP1 - доступный только из локальной сети, и являющийся шлюзом в Интернет для всех компьютеров локальной сети. Таким образом, компьютеры в локальной сети могут "видеть" только локальные IP адреса других компьютеров локальной сети. Это означает, что компьютер в локальной сети не может непосредственно передавать данные на компьютеры в интернете, потому как он их не видит. Просто напросто, когда компьютеру в локальной сети необходимо передать данные на компьютер в Интернете, он посылает их на шлюз (Internal IP1), который уже от своего имени внешнего IP адреса (External IP) - пересылает данные в Интернет, так как он видит IP адреса внешней сети. Тоже самое относится и к компьютерам внешней глобальной сети - они не могут видеть IP адреса компьютеров локальной сети. Когда некоему компьютеру из внешней сети необходимо передать данные на какой-либо компьютер локальной сети, данные сначала попадают на внешний IP адрес роутера, а затем уже роутер и решает, что делать с этими данными. Описанный механизм NAT в общем-то много решений принимает сам :), однако иногда нам необходимо точно указать, что все-таки делать с определенными данными, поэтому рассмотрим последнее понятие - перенаправление портов.

 

Перенаправление портов

Итак, понимая основные понятия и механизмы взаимодействия сети, разберем перенаправление (иногда называют проброс) портов. Когда компьютер в Интернете отправляет данные на внешний IP адрес роутера (External IP), роутеру необходимо знать, что делать с этими данными. Так вот, механизм перенаправления портов просто сообщает маршрутизатору, какому компьютеру в локальной сети предназначались данные. И при правильно настроенных правилах перенаправления портов, поступившие на внешний IP адрес данные, роутер перенаправляет на определенный локальный IP адрес компьютера локальной сети. Так, например, для доступа к имеющемуся в локальной сети сетевому хранилищу с локальным IP адресом 192.168.1.100, на котором запущен FTP-сервер (обычно работающий на порту 21), необходимо в WEB-интерфейсе роутера задать правило перенаправления для порта 21, чтобы любые запросы на внешний IP адрес роутера по этому порту, приходили по адресу локальной сети 192.168.1.100 на порт 21. Если данное правило перенаправления порта верно настроить, то введя в строке адреса интернет-браузера: ВАШ_IP_АДРЕС:21 - > попадем на FTP-сервер сетевого хранилища.

Таким образом, можно настроить любые порты, и иметь доступ к своему NAS серверу из любой точки земного шара. Лично у меня настроены порты для FTP, WEB, и SSH сервера моего NAS-сервера.

Стоить отметить, что для удаленного доступа к своему NAS серверу, необходимо иметь так называемый белый статический IP адрес, то есть адрес доступный во внешней глобальной сети Internet. Можно конечно же использовать и белый динамический IP адрес, но ввиду его постоянной смены, необходимо натсроить службу DDNS. Благо данная служба поддерживается большинством роутеров, а руководств по ее настройке в Сети предостаточно. Но все-же по просьбе жаждущих немного освещу настройку службы DDNS. Для этого необходимо выяснить, что такое DNS.

 

DNS

DNS (Domain Name System) - Система Доменных Имен, это сеть специальных серверов, которые позволяют сопоставить доменные имена в виде буквенных выражений, удобных для людей с внешними IP-адресами компьютеров. Благодаря DNS, когда в строке адреса браузера мы набираем nas-tweaker.org.ua, из базы данных его серверов сопоставляется зарегистрированный за данным сайтом IP адрес, и мы попадаем по назначению. Однако сложилось так, что классическая система доменных имен (DNS) работает только со статическими IP-адресами. 

 

DDNS

Дело в том, что как уже описывалось выше, каждый компьютер в глобальной сети Интернет имеет свой уникальный IP адрес. Но довольно часто, провайдеры, своим пользователям, при подключении, назначают так называемый белый динамический IP адрес. Белый он из-за того, что является внешним, и доступным из глобальной сети. Проблема только в том, что какой именно внешний адрес получит ваш роутер при каждом подключении - неизвестно. Именно для этого и существует служба DDNS - динамическая система доменных имен. Система DDNS позволяет присваивать динамическим IP-адресам фиксированные имена хоста и доменные имена. Данная служба позволяет автоматически отслеживать изменения нашего динамического IP-адреса и связывает его с зарегистрированным доменным именем. Для этого в вашем роутере работает клинт службы DDNS, который постоянно следит за актуальным выделенным в данный момент внешним IP адресом, и сообщает его на серверы службы DDNS, где на основании полученных данных, соответсвующий IP адрес сопоставляется с зарегистрированным доменным именем. Итак, для того, чтобы иметь возможность доступа к нашему NAS серверу из интернета, имея провайдера, который выделяет нам динамический IP адрес, сначала необходимо зарегистрироваться на сайте.

После регистрации на данном сайте, необходимо войти на него под своей учетной записью, и нажать на ссылку в верхнем правом углу "My Services"

Затем на открывшейся странице нажимаем на ссылку "Add Hostname" и в открывшейся странице заполняем информацию для вашего нового домена. В поле Hostname вписываем желаемое имя по которому будем впоследствии обращаться к нашему NAS серверу, к примеру назовем его "nas". В выпадающем списке рядом выбираем любой домен, пусть будет dyndns.org. В поле "Service Type" выбираем "Host with IP adress" и ниже нажимаем "Use auto detected IP address", чтобы подставился наш текущий адрес. После этого, нажимаем кнопку "Add to cart" в самом низу страницы. На следующей странице "Shopping Cart", просто нажимаем "Next", после чего, на странице "Free Services Checkout" надо нажать кнопку "Activate Services".

После проведения вышеописанных манипуляций, необходимо соответствующим образом настроить клиента, который будет сообщать наш текущий IP адрес в службу DDNS, которая по нему будет сопоставлять его с нашим созданным доменным именем: nas.dyndns.org

Следует отметить, что клиенты службы DDNS имеются и в NAS сервере, однако же лучше настраивать его именно на роутере, так как именно он получает внешний IP адрес. Таким образом, необходимо зайти в WEB интерфейс вашего роутера, открыть закладку DDNS, и в поля ввести соответствующие записи: имя пользователя и пароль аккаунта, созданного на  сайте, и имя нашего созданного хоста - nas.dyndns.org. Остальные пункты 
можно оставить по-умолчанию. 

Результатом проведения всех этих действий, является получение доступа к вашему NAS серверу по доменному имени: nas.dyndns.org. Пользоваться им так же, как и IP адресом, то есть, если мы хотим, например, попасть на FTP-сервер, соответственно необходимо набрать nas.dyndns.org:21


Источник: NAS-TWEAKER