#ip-address #public-ip #dns #update #net #dynamic #cross-platform

app generic-dns-update

一个跨平台工具,当您拥有动态公网IP地址时,用于更新DNS区域文件(如Gandi.net)

4 个稳定版本

使用旧的Rust 2015

1.1.4 2016年8月24日
1.1.3 2016年8月18日
1.1.1 2016年8月12日

#public-ip 中排名第 20

MIT 许可证

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