我一直在按照本指南在我的 pi 上设置 VPN。部分步骤是设置和配置动态 dns 服务。我在多个平台上创建了多个帐户。没有 Ip 和 dynamicdns 是两个来命名的。下面是我的 ddclient.conf 文件的输出,它在两个动态 dns 站点上都可以正常连接。
daemon=60 # check every 60 seconds
syslog=yes # log update msgs to syslog
mail=root # mail all msgs to root
mail-failure=root # mail failed update msgs to root
pid=/var/run/ddclient.pid # record PID in file.
ssl=yes # use ssl-support. Works with
# ssl-library
use=web, web=myip.dnsdynamic.com # get ip from server.
server=www.dnsdynamic.org # default server
login=YOURUSERNAME # default login
password=YOURPASSWORD # default password
server=www.dnsdynamic.org, \
protocol=dyndns2 …Run Code Online (Sandbox Code Playgroud) 我真的很难ddclient(用我当前的 IP 地址更新OpenDNS)工作。我将它作为守护程序运行,但它从未成功更新我的 IP 地址openDNS.
为了排除故障,我ddclient从命令行运行,如下所示。
(在这些示例中,出于安全原因,方括号 [] 中的值是实际值的替代值)
我的/etc/ddclient.conf包含:
use=web, web=checkip.dyndns.org/, web-skip='IP Address'
server=updates.opendns.com
protocol=dyndns2
login=[my login]
password=[my password]
Home
Run Code Online (Sandbox Code Playgroud)
当我运行时:
sudo ddclient -daemon=0 -debug -verbose -noquiet
Run Code Online (Sandbox Code Playgroud)
我得到:
WARNING: file /var/cache/ddclient/ddclient.cache, line 3: Invalid Value for keyword 'ip' = ''
...
WARNING: skipping update of Home from <nothing> to [my real ip].
WARNING: last updated <never> but last attempt on Tue Oct 4 08:38:32 2011 failed.
Run Code Online (Sandbox Code Playgroud)
如果我rm缓存文件, …
回到 Windows,我有一个 DynDNS 更新程序,它在任务栏中显示一个小图标......这是一个启动后忘记的小应用程序。我想知道 Ubuntu 中是否有类似的东西。
具体来说,我想要某种显示状态的通知小程序,即 IP 当前是否更新。
有这样的吗?还是我应该坚持使用仅限命令行的应用程序?
当我在没有 sudo 的情况下运行 ddclient (DynamicDns Updator) 时,我得到
WARNING: file /etc/ddclient.conf: Cannot open file '/etc/ddclient.conf'. (Permission denied)
stat() on closed filehandle FD at /usr/sbin/ddclient line 934.
Use of uninitialized value $mode in bitwise and (&) at /usr/sbin/ddclient line 935.
readline() on closed filehandle FD at /usr/sbin/ddclient line 947.
WARNING: file /etc/ddclient.conf: Cannot open file '/etc/ddclient.conf'. (Permission denied)
stat() on closed filehandle FD at /usr/sbin/ddclient line 934.
Use of uninitialized value $mode in bitwise and (&) at /usr/sbin/ddclient line 935.
readline() on …Run Code Online (Sandbox Code Playgroud) 我已经寻找了几个可能导致我的问题没有运气的原因。这个问题似乎非常特别:我运行 LTS 10.04 的服务器没有正确运行与互联网使用相关的脚本。我正在尝试从我的服务器更新动态 dns,以便我的域将始终指向我的服务器。我通过 ssh 连接到我的服务器进行更改并且它始终在运行。
我在两个地方放置了 cron 脚本:
1) 使用 crontab -e 为当前用户添加一个 crontab
2)在/etc/cron.d/下添加一个文件(也是两个不同的文件)
我确保它们归 root 所有并且拥有所有者的访问位。
排除以下几点:
1) 所有 cron 脚本在我的笔记本电脑上运行完美,我的笔记本电脑也是 10.04 LTS
2) 从命令行运行时,这两个脚本都运行良好。
3)在服务器上,如果我每分钟使用 cron 将“hello”连接到一个文件,它实际上可以工作
要运行的两个脚本中较简单的一个具有如下配置:
* * * * * root /usr/bin/wget "-q --read-timeout=0.0 --waitretry=5 --tries=10 --background http://freedns.afraid.org/dynamic/update.php?...........
Run Code Online (Sandbox Code Playgroud)
我隐藏更新密钥的地方,后面跟着一个新行。
我觉得这一定是我错过的特定于 cron 的东西。
我在 /var 或 /var/log 中也没有 cron 日志文件
如果有我忘记提及的信息,请告诉我。
dyndns ×5
ddclient ×3
dns ×2
networking ×2
automation ×1
chmod ×1
cron ×1
openvpn ×1
ssl ×1
sudo ×1