![网络服务器上的 dyndns 导致路由器断开连接](https://linux22.com/image/108652/%E7%BD%91%E7%BB%9C%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84%20dyndns%20%E5%AF%BC%E8%87%B4%E8%B7%AF%E7%94%B1%E5%99%A8%E6%96%AD%E5%BC%80%E8%BF%9E%E6%8E%A5.png)
我在 Raspberry Pi(Debian、Jessie)上配置了一个小型网络服务器。除了 Apache、MySQL、PHP 等服务之外,还有一个动态 DNS 客户端“ddclient”作为守护进程运行,每 5 分钟检查我的域的公共 IP。
该服务工作正常,但有令人讨厌的副作用,导致我的路由器(FritzBox Fon WLAN 7360)每隔几分钟就与互联网断开连接。
我很确定 ddclient 是中断的原因,因为这个问题是在服务运行时出现的。
我能做什么来解决这个问题?从技术上来说,ddclient有可能是罪魁祸首吗? ddclient 是否配置错误?我的路由器坏了吗?
如果我将 ddclient 服务设置为 会怎样run_ipup="true"
?我的树莓派会在 IP 地址发生变化时自动更新吗?
这是我的路由器日志的摘录。
31.03.17 11:45:38 Internet connection was successfully established. IP-Address:
xx.xx.xxx.xxx, DNS-server: xxx.x.xxx.xxx and xxx.x.xx.xx, Gateway xx.xxx.xx.xxx,
Broadband-PoP: ewetel.dsl-e320-02-Bremen
31.03.17 11:45:34 DSL is available (DSL-synchronization exists with 11102/1040 kbit/s).
31.03.17 11:44:50 Timeout with PPP-negotiation
31.03.17 11:44:49 Internet connection was disconnected
31.03.17 11:44:45 DSL does not respond (no DNS-synchronization)
这只是其中数十条消息的摘录。请注意,每次路由器重新连接到互联网时,IP 地址都会发生变化。
请帮忙。谢谢!!
编辑:关于Eamonns 的回答,我已经使用curl 和crond 设置了动态dns 服务。谢谢Eamonns,你帮了我很多!
答案1
如果您使用 Strato,请阅读此内容博客
这里描述了您需要的一切。我自己尝试过,所以我知道它有效。实施起来相对简单。只是一个小的bash脚本,其基础是curl
$IP=$(curl --silent 'https://api.ipify.org')
echo $IP
所以你需要安装curl。
sudo apt-get install curl
然后,此 $IP 变量将传递到您的用户凭据所在的 Strato。整个脚本看起来像这样。
#!/bin/bash
IP=$(curl --silent 'https://api.ipify.org')
HOSTS="ownCloud.travers-berlin.de dokuWiki.travers-berlin.de"
USER="XXXXXXXXXXXX"
PASS="XXXXXXXXXXXX"
URL="https://dyndns.strato.com/nic/update/nic/update"
for HOST in ${HOSTS}
do
QUERY="?system=dyndns&hostname=${HOST}&myip=${IP}"
curl --ssl --user ${USER}:${PASS} ${URL}${QUERY}
done
使用 crond 每 5 分钟运行一次,您将不会再遇到任何问题。
希望这有帮助。