______ __ ____ _ __
/ ____/ ____ ____/ / / __ \ / | / / _____
/ / __ / __ \ / __ / / / / / / |/ / / ___/
/ /_/ / / /_/ // /_/ / / /_/ / / /| / (__ )
\____/ \____/ \__,_/ /_____/ /_/ |_/ /____/
.___ .___
____ ____ __| _/__| _/____ ______
/ ___\ / _ \ ___ / __ |/ __ |/ \ / ___/
/ /_/ > <_> ) --- / /_/ / /_/ | | \\___ \
\___ / \____/ \____ \____ |___| /____ |
/_____/ \/ \/ \/ \/
a DDNS tool written in go
generate a default config file
GodDns generate
use ip set in config
GodDns run
use ip address of interface set in config
GodDns run auto
get ip address from api
GodDns run --api=ipify/identMe/others
through proxy
GodDns run --proxy=http://127.0.0.1:10809
GodDns run --proxy=enable
GodDns run --proxy=disable
parallel executing
GodDns run --parallel
USAGE:
GodDns [global options] command [command options] [arguments...]
GodDns run - run the DDNS service
GodDns run auto - run ddns, use ip address of interface set in Device Section automatically
GodDns run auto override - run ddns, override the ip address of interface set in each service Section
GodDns generate - generate a default configuration file
GodDns show-config service/section - show the configuration of a service/section *case insensitive*
GodDns show-config ls - list all available services/sections
COMMANDS:
run, r, R run the DDNS service
[--api ApiName, -i ApiName, -I ApiName get ip address from provided ApiName, eg: ipify/identMe]
auto, a, A run ddns, use ip address of interface set in Device Section automatically
override, o, O run ddns, override the ip address of interface set in each service Section
COMMANDS:
generate, g, G generate a default configuration file
help, h Shows a list of commands or help for one command
show-config, sc, SC show the configuration of a service/section *case insensitive*
show-config ls list all available services/sections
help, h Shows a list of commands or help for one command
OPTIONS:
--all, -a, -A show all available services/sections configuration (default: false)
CONFIG
--config file, -c file, -C file, --Config file set configuration file
OUTPUT
--log level, -l level, -L level, --Log level level: Trace/Debug/Info/Warn/Error (default: Info)
--no-output, -s, -S, --silent no message output (default: false)
--print-in-markdown, --md, --markdown, --pim print result in markdown (default: disabled)
--print-in-table, --pt, --table, --pit print result in table (default: disabled)
PERFORMANCE
--cpu-profile, --cpuprofile, --cpu, --cp enable cpu profiling (default: disabled)
--mem-profile, --memprofile, --mem, --mp enable memory profiling (default: disabled)
RUN
--api ApiName, -i ApiName, -I ApiName get ip address from provided ApiName, eg: ipify/identMe
--parallel, --Parallel run ddns parallel (default: false)
--proxy url, -p url, -P url, --Proxy url set proxy url
--retry times retry times (default: 3)
TIMES
--times-limitation n, --tl n, --TL n run ddns per time(seconds) up to n times (default: infinity)
TRIGGER
--on-change, --oc, --OC run ddns automatically when ip changed (default: false)
--time seconds, -t seconds, -T seconds run ddns per time(seconds) (default: disabled)
GLOBAL OPTIONS:
--help, -h, -H show help
--version, -v, -V print the version info
download in release
build binary
git clone https://github.com/Equationzhao/GodDns.git
cd GodDns
make build
install to $GOPATH/bin
git clone https://github.com/Equationzhao/GodDns.git
cd GodDns
make install
git clone https://aur.archlinux.org/goddns.git
cd goddns
makepkg -si
or through aur helper
yay -S goddns
- add more service
- new feature support multi-device for each service(like Device does)