Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mario-campos/dyndnsd
Dynamic DNS Daemon for OpenBSD
https://github.com/mario-campos/dyndnsd
dns dynamic-dns-client openbsd
Last synced: 3 months ago
JSON representation
Dynamic DNS Daemon for OpenBSD
- Host: GitHub
- URL: https://github.com/mario-campos/dyndnsd
- Owner: mario-campos
- License: bsd-3-clause
- Created: 2017-04-08T19:13:49.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2022-08-05T01:10:03.000Z (almost 2 years ago)
- Last Synced: 2024-01-07T01:44:14.122Z (6 months ago)
- Topics: dns, dynamic-dns-client, openbsd
- Language: C
- Homepage: https://mario-campos.github.io/software/dyndnsd
- Size: 306 KB
- Stars: 18
- Watchers: 5
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Lists
- awesome-openbsd - dyndnsd - Dynamic DNS Daemon for OpenBSD (Third Party repositories / Interviews with OpenBSD developers)
- awesome-openbsd - dyndnsd - Dynamic DNS Daemon for OpenBSD (Third Party repositories / Related projects)
- awesome-openbsd - dyndnsd - Dynamic DNS Daemon for OpenBSD (Third Party repositories / Interviews with OpenBSD developers)
README
# dyndnsd [![C/C++ CI](https://github.com/mario-campos/dyndnsd/actions/workflows/c.yml/badge.svg)](https://github.com/mario-campos/dyndnsd/actions/workflows/c.yml)
dyndnsd is a Dynamic-DNS daemon for OpenBSD. It is minimal, lightweight, intuitive, and generic/extensible enough to support any Dynamic-DNS provider.## Example
First, create the configuration file, */etc/dyndnsd.conf*:
```
run "curl https://www.duckdns.org/update?domains=${DYNDNSD_FQDN}&token=sometoken&ip=${DYNDNSD_IPADDR}"interface em0 {
domain www.example.com
}interface em1 {
domain ftp.example.com
}
```Test the configuration file:
```shell
$ dyndnsd -n
$
```Then, start the daemon:
```shell
$ dyndnsd
$
```## Build
dyndnsd has no external dependencies—it's only dependency is libevent, but that's included in OpenBSD base—on so compiling dyndnsd is straightforward:
```shell
make
```## TODO
### Features
- [x] route(4)
- [x] kqueue(2)
- [x] pledge(2)
- [x] drop privilege### Code Quality
- [ ] Fuzz Testing
- [x] Valgrind
- [x] cppcheck