Я использую сервис динамического DNS на freedns.afraid.org для моего сервера 12.04. Я предполагал, что протоколы будут стандартизированы и что ddclient будет работать, но, очевидно, нет. Я получаю это сообщение в / var / log / syslog:
ERROR: Invalid update URL (2): unexpected status ()
Я пытался использовать обновленную версию ddclient из альтернативного PPA, описанного в этом ответе , но затем я столкнулся с этой ошибкой:
FATAL: Error loading the Perl module Digest::SHA1 needed for freedns update.
FATAL: On Debian, the package libdigest-sha1-perl must be installed.
И когда я пытаюсь установить этот пакет, я получаю это:
E: Unable to locate package libdigest-sha1-perl
Что приводит меня к этому сообщению об ошибке , которое, по-видимому, не имеет решения. Как поступить?
Ответы:
Пока ddclient не исправлен , вы можете вручную установить старый модуль, который он хочет:
Страница клиентов бесплатного DNS и
ddclient --help
предоставьте примеры конфигураций ddclient. Перезапустите ddclient, чтобы изменения вступили в силу:источник
Я смог заставить FreeDNS работать, просто отредактировав эти две строки
/usr/sbin/ddclient
:От:
Для того, чтобы:
От:
Для того, чтобы:
источник
Комментарий в сообщении об ошибке свидетельствует о том , что он «легко менять программы использовать Digest :: SHA вместо Digest :: SHA1».
Итак, полные шаги, во-первых, потому что add-apt-repository не установлен по умолчанию:
Затем, как описано в izx:
Теперь этот репозиторий содержит много пакетов, но нам нужен только ddclient. Поэтому создайте файл настроек, такой как `/etc/apt/preferences.d/nathan-prefs, и отредактируйте его так, чтобы он выглядел следующим образом:
Теперь установите ddclient:
Теперь станьте пользователем root и отредактируйте / usr / sbin / ddclient. Ищите
require Digest::SHA1
и замените его наrequire Digest::SHA
. Затем найдитеimport Digest::SHA1
несколько строк позже и замените их наimport Digest::SHA
.Наконец, откройте /etc/ddclient.conf и сделайте так, чтобы он выглядел примерно так (обратите внимание на протокол):
Главное, что меня не устраивает - это взлом файла и нарушение управления пакетами в Ubuntu. Лучшим решением было бы исправить PPA.
источник
Вы можете получить его из: libdigest-sha1-perl
Вам также может понадобиться установить libio-socket-ssl-perl . Проверьте свой системный журнал
источник