An open API service indexing awesome lists of open source software.

https://github.com/bmarwell/jdyninwx

Java DynDNS updater for INWX nameservers
https://github.com/bmarwell/jdyninwx

Last synced: 7 days ago
JSON representation

Java DynDNS updater for INWX nameservers

Awesome Lists containing this project

README

        

= JDynINWX
:toc: macro

image:https://img.shields.io/github/license/apache/maven.svg?label=License["Apache License, Version 2.0, January 2004",link=https://www.apache.org/licenses/LICENSE-2.0]
image:https://codecov.io/gh/bmarwell/jdyninwx/branch/main/graph/badge.svg?token=39B9I23UF5[https://codecov.io/gh/bmarwell/jdyninwx/branch/main/graph/badge,link="https://codecov.io/gh/bmarwell/jdyninwx"]

Update your INWX nameserver entries via cron to use them as dyndns replacement with (almost) zero dependencies.

toc::[]

'''

== Compile and install

You will need Java 17 installed.
If you do not have it, get it from sdkman.io.

.Init project
[source,bash]
----
./mvnw verify
cp app/target/*unojar*.jar $HOME/.local/apps/
# execute
java -jar $HOME/.local/apps/
----

… or just get the jar from the GitHub releases.

== Configuration

Edit `$+{XDG_CONFIG_DIR}+/jdyninwx/application.properties`.
Alternative location, if `$+{XDG_CONFIG_DIR}+` is not defined: `$HOME/.config/jdyninwx/application.properties`

The file will receive the following template:

[source,properties]
----
## =====================
## === INWX settings ===
## =====================

## == credentials ==
## uncomment and enter your INWX username
# jdynsinwx.inwx.username = username
## insert your inwx password here
# jdynsinwx.inwx.password = password

## == API configuration ==
## optional custom API endpoint URL.
## The default is shown for documentation purposes.
# jdynsinwx.inwx.api.endpoint = https://api.domrobot.com/xmlrpc

## == Nameserver record configuration ==
## Use any unique integer in square brackets for ordering.
## The ttl argument is optional and defaults to 300 (seconds).
## TODO: allow setting a global value.
## IPv4 IDs.
# jdynsinwx.inwx.record.ipv4[0].id = 42
# jdynsinwx.inwx.record.ipv4[0].ttl = 300
# jdynsinwx.inwx.record.ipv4[1].id = 72
# jdynsinwx.inwx.record.ipv4[1].ttl = 600
## IPv6 IDs.
# jdynsinwx.inwx.record.ipv6[0].id = 44

## =====================
## === Pool settings ===
## =====================
## IPv4 pools. All domains will be queried via HTTP GET.
jdynsinwx.ident.pool.ipv4[0] = https://ident.me/
## IPv6 pools. All domains will be queried via HTTP GET.
jdynsinwx.ident.pool.ipv6[0] = https://ident.me/

## Connection settings for IDENT requests.
## Default values are shown below.
#jdynsinwx.ident.connection.request.timeout = 1500
#jdynsinwx.ident.connection.connect.timeout = 500
----