Обновление ddclient на локальный IP вместо публичного IP
Я пытаюсь настроить ddclient на моем сервере Ubuntu для обновления DNS-записей в zoneedit, когда мой публичный IP-адрес изменяется.
Он обновляется нормально, проблема в том, что он дает zoneedit мой локальный IP вместо моего публичного.
SUCCESS: updating mydomain.com: IP address set to 192.168.0.17 (200: Update succeeded.)
Мой файл конфигурации ddclient выглядит так:
protocol=zoneedit1
use=if, if=eth0
server=dynamic.zoneedit.com
login='user'
password='password'
mydomain.com
Почему он обновляется до моего локального IP вместо моего публичного?
Обновление: это может быть потому, что я за роутером? Если да, то как мне настроить ddclient для получения публичного IP?
4 ответа
Да, проблема в том, что вы находитесь за маршрутизатором. Лучшим решением было бы посмотреть, сможете ли вы установить клиент ddns на сам маршрутизатор. В противном случае существуют инструменты обновления ddns, которые проверяют удаленный сервер и определяют ваш IP по тому, что это дает.
Это можно сделать, заменив:
use=if, if=eth0
С этим:
use=web, web=checkip.dyndns.org/
Что, по-видимому, является конфигурацией по умолчанию, созданной debconf
в системах Debian.
мне пришлось использоватьweb=dynamicdns.park-your-domain.com/getip
чтобы это заработало
# Configuration file for ddclient generated by debconf
#
# /etc/ddclient.conf
use=if, if=eth0
use=web, web=dynamicdns.park-your-domain.com/getip
ssl=yes
protocol=googledomains
login=myLoginCredentials
password='myPwdContent'
myGoogleDomain.com
Мой провайдер DDNS no-ip.com не требует второго параметра (web=..). Просто заменив строку наuse=if
сuse=web
работал у меня.