Страница 1 из 1
Самопальный DDNS
Добавлено: 24 июл 2018, 10:12
di_mok
Джентльмены, ищу если не реализацию, то идеи. Активно использую сервисы ddns (static IP не предлагать, т.к. по ряду причин это не возможно). Впринципе, жить можно, но у них вечно то зерновые не завезли, то зима.
Тут кольнуло: а что если всё это воспроизвести собственноручно. В наличии есть VDS, теоретически можно же сделать так, что-бы маршрутизатор отправлял IP полученный от провайдера на VDS через заданные промежутки времени, и при обращению к хосту тот перенаправлял куда нужно
Самопальный DDNS
Добавлено: 24 июл 2018, 10:35
Chocobo
Видится навскидку три варианта.
- Изменение на клиентах. На вдс просто хранить строчку в текстовом файлике с отдачей по http, вида
1.2.3.4 your.some.domain
, которую клиенты (планово или по запросу) стащат и обновят себе запись прям в /etc/hosts
- мини-зона ДНС на вдске. на хосте куда будет отправляться запрос стоит днс сервер, с локальной зоной под этот домен, на который смотрят клиенты. bind например. А дальше по приходу информации обновить А-запись и релоаднуть сервис
- Проксирование с вебсерва. на вдске вебсервер (nginx/apache) с проксированием. для nginx можно закинуть и обновлять в переменной (или в апстриме):
Код: Выделить всё
set $dynamic_ip "1.2.3.4"
server {
listen 8080 default_server;
location / {
proxy_pass http://$dynamic_ip/;
}
}
И обновлять айпишник в этом поле переменной, чтоб при обращении по адресу http://vds-ip-or-domain:8080/ - запрос перенаправлялся на известный ему ip.
Последний вариант можно наверн даже автоматизировать чутка, через cgi, завести локейшн вроде /ip-renew и по факту обращения считать адрес этого клиента в конфиг скриптом. Тогда стороне с динамикой останется просто слать GET-запрос на вдску к этому "api")
Самопальный DDNS
Добавлено: 24 июл 2018, 10:43
di_mok
Второй вариант наверное не очень, т.к. А-запись долго обновляется. А вот в сторону первого и третьего подумаю.
Самопальный DDNS
Добавлено: 24 июл 2018, 10:53
Chocobo
di_mok, Это если через белую днс зону гнать изменения - то да, пока они расползутся овер интернет)
А если будет у тебя клиентам прописан праймари днсом именно bind с vdsки - то пройдет шустро, т.к. он будет напрямую свои записи отдавать
Самопальный DDNS
Добавлено: 24 июл 2018, 11:02
di_mok
Понял, спасибо. Кстати, наткнулся на рецептик у соседей
http://help.ubuntu.ru/wiki/%D0%B4%D0%B8 ... 0%BC%D0%B8
Самопальный DDNS
Добавлено: 24 июл 2018, 11:17
Chocobo
di_mok, Да, ка кобычно кто-то уже алгоритмизировал до нас, можно велосипедить по чужим стопам)
А суть та же почти получается, примерно - http+dns

Вот про
nsupdate
я был не в курсе, теперь найду где его применить у себя
Самопальный DDNS
Добавлено: 07 сен 2018, 10:49
di_mok
Решил пойти другим путём, но завяз. Может кто поможет с iptables?
Вводные данные:
Есть VDS c привязанным доменом
На VDS установлен OpenVPN сервер
На домашнем сервачке OpenVPN клиент
Как при обращении к домену с указанием порта пробросить на домашний сервак, на такой же порт по VPN?
VDS:
Код: Выделить всё
ens3 Link encap:Ethernet HWaddr
inet addr:XXX.XXX.XXX.XXX Bcast:194.67.223.255 Mask:255.255.240.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1077 errors:0 dropped:0 overruns:0 frame:0
TX packets:817 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:123083 (123.0 KB) TX bytes:98920 (98.9 KB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:183 errors:0 dropped:0 overruns:0 frame:0
TX packets:183 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:15077 (15.0 KB) TX bytes:15077 (15.0 KB)
tap0 Link encap:Ethernet HWaddr
inet addr:10.8.1.1 Bcast:10.8.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:87 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:18357 (18.3 KB) TX bytes:648 (648.0 B)
Домашний сервак
Код: Выделить всё
enp2s0 Link encap:Ethernet HWaddr d0:27:88:b1:c3:9c
inet addr:192.168.1.99 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1362318025 errors:0 dropped:10093 overruns:0 frame:0
TX packets:2223685453 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:410216418487 (410.2 GB) TX bytes:3013692400335 (3.0 TB)
lo Link encap:Локальная петля (Loopback)
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:64089652 errors:0 dropped:0 overruns:0 frame:0
TX packets:64089652 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:9809005757 (9.8 GB) TX bytes:9809005757 (9.8 GB)
tap0 Link encap:Ethernet HWaddr fa:8f:5b:01:d7:ff
inet addr:10.8.1.2 Bcast:10.8.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:116572 errors:0 dropped:0 overruns:0 frame:0
TX packets:328867 errors:0 dropped:879 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:21418614 (21.4 MB) TX bytes:199717454 (199.7 MB)
Самопальный DDNS
Добавлено: 11 сен 2018, 23:55
WWolf
di_mok, настройки впн сервака ковырять? Вроде бы ж внешние соединения по дефолту блочаться в клиент