Noip.com Dynamic DNS update client built in Node.js ,support ipv6
自动查询公共 ipv6 地址,提交域名解析
自动更新的最短间隔时间为 30 秒
Public IPV6 addresses are automatically Enquiried, and
the minimum time between submission of domain name resolution and automatic updates is 30 seconds
thanks to @roccomuso
https://github.com/roccomuso/no-ip
Noip.com Dynamic DNS update client built in Node.js. It makes easy to remote access your connected devices!
The easiest way to get no-ip is with npm:
npm install @masx200/no-ip-ddns-ipv6 --save
or having it globally installed and used as a standalone tool:
npm install -g @masx200/no-ip-ddns-ipv6
var NoIP = require("@masx200/no-ip-ddns-ipv6");
var noip = new NoIP({
hostname: "hello-world.ddns.net",
user: "[email protected]",
pass: "s3cr3tz",
});
noip.on("error", function (err) {
console.log(err);
});
noip.on("success", function (isChanged, ip) {
console.log(isChanged, ip);
});
noip.update(); // Manual update, you can also provide a custom IP address
// noip.start() // start an automatic renewal every 1h by default or provide a custom ms.
// noip.stop() // stop the previously started automatic update
.on('success', callback)
: The callback accepts two params isChanged
and ip
that gives you the current IP address your domain is currently pointing to and a boolean value indicating if an update was performed.
.on('error', callback)
: Called when an error occurs.
.update([ip])
: Send an update request. Optionally you can provide a custom IP.
.start([ms])
: Start an automatic renewal every 1h by default or provide a custom ms.
.stop()
: Stop the automatic update.
.setOffline([boolean])
: Sets the current host to offline status. Offline settings are an Enhanced / No-IP Plus feature. You should call the update
method after this flag have been set.
.setIp([ip])
: Set a custom IP Address for the update requests.
If used standalone, I recommend you to start it with some process manager, like PM2.
npx @masx200/no-ip-ddns-ipv6 -h hello-world.ddns.net -u hello -p s3cr3t -s
That start automatic DNS renewal once an hour. To see supported parameters and usage examples just type:
npx @masx200/no-ip-ddns-ipv6 --help
Usage: no-ip-ddns-ipv6 -h [hostname] -u [user] -p [password] -t [interval(ms)] -i
[customIP] -s
Options:
--help, -H Show help [boolean]
--hostname, -h Your hostname [string] [required]
--username, -u Username for the noip.com DDNS account [string] [required]
--password, -p You account password [string] [required]
--ip, -i Set a custom IP Address [string]
--offline, -o Sets the current host to offline status. [boolean]
--interval, -t Renewal interval, in milliseconds. [number] [default: 3600000]
--start, -s Start automatic renewal once an hour by default [boolean]
Examples:
no-ip-ddns-ipv6 -h hello-world.ddns.net -u hello -p s3cr3t -s
Start automatic DNS renewal once an hour
no-ip-ddns-ipv6 -h hello-world.ddns.net -u hello -p s3cr3t
Send a single update request using your current IP address
no-ip-ddns-ipv6 -h hello-world.ddns.net -u hello -p s3cr3t -i 173.26.2.66
Send a single update request using a custom IP Address
no-ip-ddns-ipv6 -h hello-world.ddns.net -u hello -p s3cr3t -t 604800000 -s
Start automatic DNS renewal once a week
Rocco Musolino (@roccomuso)
MIT