4 个稳定版本
使用旧的Rust 2015
1.1.4 | 2016年8月24日 |
---|---|
1.1.3 | 2016年8月18日 |
1.1.1 | 2016年8月12日 |
在 #public-ip 中排名第 20
92KB
2K SLoC
GDU | Generic DNS Update
一个跨平台工具,当您拥有动态公网IP地址时,用于更新DNS区域文件(如Gandi.net)。
它是DynDNS或等效的替代品,适用于多个操作系统,通过命令行参数进行配置。
对于开发者,它使用Rust编写,可以轻松扩展以添加新的DNS提供商或新的检测公网IP地址的方法。
功能
-
检测您的公网IP地址
- 通过HTTP
- 通过DNS查找
-
创建或更新您的DNS提供商区域文件,以与公网IP地址关联的A或AAAA DNS记录。
- Gandi.net
- 其他提供商
-
在多个操作系统上运行
- Linux x86_64
- Linux ARMv6及更高版本,例如所有型号的树莓派,包括PI2
- Windows 32/64位
- OS X
命令行使用
$ gdu --help
USAGE:
gdu [FLAGS] [OPTIONS]
FLAGS:
-n, --dry-run Dry run, don't really update Gandi zone file
-f, --force Force new zonefile creation even if IP address isn't modified
-h, --help Prints help information
-V, --version Prints version information
-v Verbose mode
OPTIONS:
-a, --apikey <apikey> Your API key provided by Gandi
-d, --domain <domain> The domain name whose active zonefile will be updated, e.g. "domain.com"
-i, --ip-provider <ip_provider> IP address provider to use to get your own IP address.
Available values for <ip-provider>:
opendns : OpenDNS
- : read IP address from stdin
sfrlaboxfibre : French 'SFR Labox Fibre' subscribers
-r, --record-name <record_name> Name of the A record to update or create (without domain)
安装
在Linux上:Fedora、Debian、Ubuntu、Raspbian...
GDU作为通过package.io的本地软件包(rpm/deb)为您提供。有关安装说明,请访问package.io项目页面。
然后
sudo apt-get install generic-dns-update
Linux cron配置
您可以通过cron配置GDU每小时检查您的IP地址是否已更新。
以root或sudo身份编辑文件 /etc/cron.hourly/gdu
,内容如下
#!/bin/bash
gdu -a YOUR_GANDI_KEY -d YOUR_DOMAIN -r YOUR_RECORD -i opendns >> /var/log/gdu.log 2>&1
灵感来源
依赖关系
~12MB
~209K SLoC