Самодельный dyndns сервис своими руками
Автор данного метода обитает на Хабре, не могу точно сказать кто и когда опубликовал .
Если в Вашем распоряжении хостинг или сервер с поддержкой php,все организовать довольно легко. Для этого пишете подобный скрипт на php и закидываете на хостинг или сервер друга (нагрузки никакой, так что не откажет). Создаем файл, называем, к примеру, “ip.php”
<?php
if($_GET['key']=='кодовое слово')
{
file_put_contents ( 'ip.txt' , getenv("REMOTE_ADDR"));
}
else
{
$ip = file_get_contents('ip.txt');
if (isset($_GET['page']))
{
header('Location: http://'.$ip.':нужный вам порт/'.$_GET['page']);
}
else
{
echo $ip;
}
}
?>
Кодовое слово - это отправляемый в запросе к скрипту, Ваш “ключ” чтоб “хулиганы и боты” не дергали скрипт каждую секунду.
Далее необходимо в Unix-системах добавить в кронтаб вот такое задание:
*/3 * * * * wget http://адрес сервера где скрипт/ip.php?key=ваш ключ -O /dev/null 2>&1
Выходит, что ПК обращается раз в 3 минуты на данный файл на сервере, тот, соответственно, читает ip и пишет его в файл ip.txt Для тех у кого вебсервер поднят на пк домашнем. (Например у меня для написания этих Заметок ).Скрипт модифицирован, и Вам вовсе не нужно каждый раз смотреть ip.txt, чтоб узнать свой ip. Достаточно просто дать товарищу адрес вида
http://адрес сервера, где скрипт/ip.php?page=folder
и он автоматически перейдет по Вашему ip на домашнем ПК, в папку именно с названием, указанным после параметра page= пример
http://server.ru/ip.php?page=test
и Ваш друг попадает по адресу
http://ваш айпи:порт/test
Кстати если нужно могу предоставить возможность размещения кода у себя на сервере.
comments powered by Disqus