Настройка программы no-ip: различия между версиями
Misha (обсуждение | вклад) (→Установка) |
Misha (обсуждение | вклад) м (Откат правок Sopod (обсуждение) к версии Misha) |
||
(не показано 11 промежуточных версий 3 участников) | |||
Строка 19: | Строка 19: | ||
# cd /usr/local/src | # cd /usr/local/src | ||
# tar -zxf noip-duc-linux.tar.gz | # tar -zxf noip-duc-linux.tar.gz | ||
− | # cd noip-2.1. | + | # cd noip-2.1.9-1 |
# make | # make | ||
# cp redhat.noip.sh /etc/init.d/noip | # cp redhat.noip.sh /etc/init.d/noip | ||
− | # chmod 744 /etc/init.d/noip | + | # chmod 744 /etc/init.d/noip |
# make install</pre> | # make install</pre> | ||
При выполнении make install | При выполнении make install | ||
Строка 30: | Строка 30: | ||
Скрипт создает файл /usr/local/etc/no-ip2.conf | Скрипт создает файл /usr/local/etc/no-ip2.conf | ||
− | Далее запускаем drakxconf и делаем noip. | + | Добавляем в /etc/init.d/noip строки.<br /> |
+ | Было: | ||
+ | <pre> | ||
+ | # Written by serge@vanginderachter.be and tested on Redhat 8 | ||
+ | # ... and debugged by Uwe Dippel | ||
+ | # 29-03-2003 | ||
+ | # | ||
+ | # Source function library. | ||
+ | </pre>Стало | ||
+ | <pre> | ||
+ | # Written by serge@vanginderachter.be and tested on Redhat 8 | ||
+ | # ... and debugged by Uwe Dippel | ||
+ | # 29-03-2003 | ||
+ | # | ||
+ | # Startup script for noip client | ||
+ | # | ||
+ | # chkconfig: 345 85 15 | ||
+ | # description: noip client | ||
+ | # processname: noip | ||
+ | # config: | ||
+ | # | ||
+ | ### BEGIN INIT INFO | ||
+ | # Provides: noip | ||
+ | # Required-Start: $network | ||
+ | # Required-Stop: $network | ||
+ | # Default-Start: 3 4 5 | ||
+ | # Short-Description: noip client | ||
+ | # Description: noip client | ||
+ | ### END INIT INFO | ||
+ | |||
+ | # Source function library. | ||
+ | </pre> | ||
+ | Далее запускаем drakxconf и делаем noip - сервисом. | ||
+ | ==Настройка ADSL модема== | ||
+ | Надо настроить модем так, что бы при обращении к внешнему IP адресу модема, запросы переадресовывались Интернет серверу.<br /> | ||
+ | WAN настраиваем как обычно.<br /> | ||
+ | Данные от провайдера: | ||
+ | Port - 0 | ||
+ | VPI - 8 | ||
+ | VCI - 35 | ||
+ | Connection Type - PPPoE | ||
+ | Encapsulation Mode - LLS/SNAP-BRIDGING | ||
+ | Вводим Login и пароль (szt, szt) | ||
+ | |||
+ | Настройка взята [http://allwow.ru/forum/viewthread.php?thread_id=156 тут] | ||
+ | {| | ||
+ | |[[Изображение:Login ADSL modem.png|left|150px|Login modem]] | ||
+ | |Далее заходим на модем через браузер, чтобы открыть на нем порт.<br />Для этого в браузере пишем 192.168.0.1 или 192.168.1.1 | ||
+ | |- | ||
+ | |[[Изображение:ADSL NAT.png|150px|left|Вкладка NAT ADSL модема]] | ||
+ | |Далее заходите в NAT и открываете порт своего модема. <br />'''Примечание: У всех модемы разные, и как открывать порты узнавайте на сайте производителя''' | ||
+ | |- | ||
+ | |[[Изображение:Port NAT ADSL.png|150px|left|Открытие портов NAT->Port]] | ||
+ | |Откройте порты 80, 22, 8245. Надо открыть универсальный TCP/UDP порт, или один TCP и одни UDP. | ||
+ | |- | ||
+ | |[[Изображение:DMZ host ADSL.png|150px|left|Настройка DMZ]] | ||
+ | | Пропишите соответствующий DMZ host. Это ip адрес вашего сервера, обычно 192.168.1.2.<br /> | ||
+ | Далее сохраните настройки модема. | ||
+ | |} | ||
+ | Перезапустите NOIP. | ||
+ | <pre> | ||
+ | # service noip stop | ||
+ | # service noip start | ||
+ | </pre> | ||
+ | |||
+ | ==Если NOIP не правильно определяет адрес== | ||
+ | Если мы прокинули порт на модеме, а noip определяет наш адрес как 192.168.1.2 (адрес интерфейса), то можно поступить так.<br /> | ||
+ | 1. Исключаем noip из сервисов, например, с помощью drakxconf (Для Mandriva).<br /> | ||
+ | 2. Устанавливаем билиотеку php-cli, если она не установлена | ||
+ | <pre>$sudo urpmi php-cli</pre> | ||
+ | 2. Создаем файл '''/etc/scripts/myip.php''', который определяет наш IP адрес через сайт www.myip.ru и отправляет его на сайт NOIP. | ||
+ | <pre>#!/usr/bin/php | ||
+ | <?php | ||
+ | $page = file_get_contents('http://www.myip.ru/get_ip.php?loc=http://www.myip.ru/'); | ||
+ | //echo $page; | ||
+ | preg_match_all('|<TR><TD bgcolor=white align=center valign=middle>(.+)</TD></TR>|',$page,$result); | ||
+ | $rez=$result[1][rand(0,0)]; | ||
+ | //echo $rez; | ||
+ | exec ('/usr/local/bin/noip2 -i'.$rez); | ||
+ | ?> | ||
+ | </pre> | ||
+ | 3. Добавляем в crontab задание | ||
+ | <pre># Отправка в noip IP адреса | ||
+ | */10 * * * * root /etc/scripts/myip.php | ||
+ | </pre> | ||
+ | И теперь каждые 10 минут скрипт будет определять Ваш внешний IP адрес и отправлять его на NOIP. |
Текущая версия на 06:41, 6 марта 2013
Содержание
Для чего это нужно.
Очень часто бывают случаи, кагда адрес интернет сервер получает динамически от провайдера, а мы хотим, что бы данный сервер не только раздавал интернет, но и имел свое доменное имя, для поднятия своего HTTP и mail сервера, а так же, что бы администратор мог управлять данным сервером по ssh с любого места интернета. Для этого и служит программа no-ip.
Как оно работает
Вы регистрируете свое доменное имя на сайте www.no-ip.com и устанавливаете демоном к себе на сервер утилиту, которая периодически посылает на серевер no-ip.com данные о своем ip адресе и тот заносит их в свою базу DNS. И теперь если кто-то из инета запросит данный адрес, то DNS сервер ip-com выдаст ему актуальный на данный момент ip адрес.
Регистрация
- Для регистрации нудно зайти на сайт www.no-ip.com
- Зайти на ссылку Sign-up Now!
- Заполнить предложенную анкету.
- После этого на ваш адрес придет письмо, где надо подтвердить ваш аккаунт.
- После этого заходите на сайт www.no-ip.com и набираете свой mail и пароль и попадаете на страницу настроек.
- В прицципе там все понятно - надо вписать имя вашего сервера и выбрать домен (например: имя - voluzo, домен - sytes.net, и полное имя вашего сервера будет voluzo.sytes.net), а так же вписать ip адрес сервера на данный момент.
- Если хотите настроить почтовый сервер на вашем шлюзе, то надо вписать в MX record имя почтового сервера (mail.voluzo.sytes.net - для нашего случая)
- Нажимаете на Create Host
Установка
- Выкачиваете последнюю версию программы под Linux
- Разархивируете полученный файл в директорию /usr/local/src
# cp noip-duc-linux.tar.gz /usr/local/src # cd /usr/local/src # tar -zxf noip-duc-linux.tar.gz # cd noip-2.1.9-1 # make # cp redhat.noip.sh /etc/init.d/noip # chmod 744 /etc/init.d/noip # make install
При выполнении make install
- Выбираем какой интерфейс смотрит в инет
- Вводим email адрес, который использовали при регистрации
- Вводим пароль, который использовали при регистрации
Скрипт создает файл /usr/local/etc/no-ip2.conf
Добавляем в /etc/init.d/noip строки.
Было:
# Written by serge@vanginderachter.be and tested on Redhat 8 # ... and debugged by Uwe Dippel # 29-03-2003 # # Source function library.
Стало
# Written by serge@vanginderachter.be and tested on Redhat 8 # ... and debugged by Uwe Dippel # 29-03-2003 # # Startup script for noip client # # chkconfig: 345 85 15 # description: noip client # processname: noip # config: # ### BEGIN INIT INFO # Provides: noip # Required-Start: $network # Required-Stop: $network # Default-Start: 3 4 5 # Short-Description: noip client # Description: noip client ### END INIT INFO # Source function library.
Далее запускаем drakxconf и делаем noip - сервисом.
Настройка ADSL модема
Надо настроить модем так, что бы при обращении к внешнему IP адресу модема, запросы переадресовывались Интернет серверу.
WAN настраиваем как обычно.
Данные от провайдера:
Port - 0 VPI - 8 VCI - 35 Connection Type - PPPoE Encapsulation Mode - LLS/SNAP-BRIDGING Вводим Login и пароль (szt, szt)
Настройка взята тут
Далее заходим на модем через браузер, чтобы открыть на нем порт. Для этого в браузере пишем 192.168.0.1 или 192.168.1.1 | |
Далее заходите в NAT и открываете порт своего модема. Примечание: У всех модемы разные, и как открывать порты узнавайте на сайте производителя | |
Откройте порты 80, 22, 8245. Надо открыть универсальный TCP/UDP порт, или один TCP и одни UDP. | |
Пропишите соответствующий DMZ host. Это ip адрес вашего сервера, обычно 192.168.1.2. Далее сохраните настройки модема. |
Перезапустите NOIP.
# service noip stop # service noip start
Если NOIP не правильно определяет адрес
Если мы прокинули порт на модеме, а noip определяет наш адрес как 192.168.1.2 (адрес интерфейса), то можно поступить так.
1. Исключаем noip из сервисов, например, с помощью drakxconf (Для Mandriva).
2. Устанавливаем билиотеку php-cli, если она не установлена
$sudo urpmi php-cli
2. Создаем файл /etc/scripts/myip.php, который определяет наш IP адрес через сайт www.myip.ru и отправляет его на сайт NOIP.
#!/usr/bin/php <?php $page = file_get_contents('http://www.myip.ru/get_ip.php?loc=http://www.myip.ru/'); //echo $page; preg_match_all('|<TR><TD bgcolor=white align=center valign=middle>(.+)</TD></TR>|',$page,$result); $rez=$result[1][rand(0,0)]; //echo $rez; exec ('/usr/local/bin/noip2 -i'.$rez); ?>
3. Добавляем в crontab задание
# Отправка в noip IP адреса */10 * * * * root /etc/scripts/myip.php
И теперь каждые 10 минут скрипт будет определять Ваш внешний IP адрес и отправлять его на NOIP.