我正在运行带有 DD WRT 的 WRT54GL,并将我的域名托管在 zoneedit 上。出于某种原因,自动动态 DNS 客户端似乎不起作用 - 它们获取我认为是代理服务器的 ipaddress。所以我想编写一个脚本。简而言之,我需要从 ifconfig vlan1 的输出中删除 ipaddress(因为 vlan1 是连接到我的调制解调器的适配器(grep 让我完成了一半)并将其放入类似于“ wget -O - --http-user=username --http-passwd=password 'http://dynamic.zoneedit.com/auth/dynamic.html?host=mail.myzone.com&dnsto=myipaddress
”的 URL 中
其中 myipaddress 被我从 ifconfig vlan1 获得的 ipaddress 替换。您对命令应该是什么有什么想法吗?DDWRT 使用 busybox,所以我使用的任何东西都需要从那里获取
答案1
这应该会提取你的 IP 地址:
ifconfig vlan1 | grep“inet addr”| cut -d:-f2 | cut -d“”-f1
如果你想将其保存到变量中:
ip = $(ifconfig vlan1 | grep“inet addr”| cut -d:-f2 | cut -d“”-f1)
然后将其放入你的命令中:
wget -O - --http-user=用户名 --http-passwd=密码 "http://dynamic.zoneedit.com/auth/dynamic.html?host=mail.myzone.com&dnsto=$ip"
BusyBox 上提供 ifconfig、grep 和 cut。