Go to file
Lukas-Heiligenbrunner 8a9c39051d
Merge pull request #7 from Lukas-Heiligenbrunner/currentipparameter
added option to get current global ip
2020-05-05 15:57:16 +02:00
config cdoc and some minor renames 2020-04-30 19:37:11 +02:00
docs doxygen docu support 2019-10-27 13:41:40 +01:00
inc new option to verify syntax and parameters of config file 2020-05-01 15:33:20 +02:00
service use libconfig for a /etc/iprefresher.cfg config file 2020-04-29 20:06:27 +02:00
src added option to get current global ip 2020-05-05 15:32:07 +02:00
.gitignore readded intellij workspace files 2019-05-08 19:56:43 +02:00
.gitlab-ci.yml added gitlab build job 2020-04-30 15:15:01 +02:00
CMakeLists.txt release version 1.3.2 2020-05-02 14:59:56 +02:00
README.md Update README.md 2020-05-01 16:37:15 +02:00

DynuIPRefresher

A lightweight C++ application to setup a service for refreshing a dynamic IP to the Dynu servers. Dynu.com is a free DDns service and provides an API.

Installation

Download the latest Release at Release_Page. I'm providing executables for Debian/Ubuntu (.deb) and RHEL/Debian (.rpm). But you can still compile the code my your own (see build section).

Configuration

There is a configuration file /etc/iprefresher.cfg where you have to specify the DYNU API key (get it from their homepage), the domainid and your domain. Furthermore, you can optionally specify a Telegram API key and a Chat ID if you want to be notfied when your local ip changes.

To enable and start the service: systemctl enable iprefresher.service and systemctl start iprefresher.service

Build

Basic Build

Download source files

git clone https://github.com/Lukas-Heiligenbrunner/DynuIPRefresher.git

install build dependencies

libcurl libconfig

Debian:

apt install libcurl4-openssl-dev

Fedora:

dnf install libcurl-devel libconfig-devel

Alpine Linux:

Compiler dependencies:

apk add make cmake g++

Lib dependencies:

apk add libcurl curl-dev libconfig libconfig-dev

Packaging dependencies:

apk add dpkg rpm

dependencies for package build

dpkg --> debian/ubuntu package

rpmbuild --> Fedora/RedHat/CentOS package

cmake project

cd into downloaded files and Generate makefiles:

cmake -S . -B build

compile project

make

[root] install it to the system

make install

(optional) create Linux packages

make package

Windows cross build

TODO!