1
0
Fork 0
mirror of https://github.com/fernwerker/ownDynDNS.git synced 2025-07-09 21:55:13 +02:00
Self-hosted dynamic DNS php script for FRITZ!Box and netcup DNS API
Find a file
Malte Hellmeier bb1b934e69
Restrict access to log file
Fixes #17
2021-08-22 15:47:45 +02:00
examples Update update-dyndns.sh 2020-08-26 22:49:36 +02:00
src * ad ability to update also wildcard record 2019-11-08 17:34:21 +01:00
.env.dist * rewrite the hole script: 2019-05-16 18:00:21 +02:00
.gitignore * rewrite the hole script: 2019-05-16 18:00:21 +02:00
.htaccess Restrict access to log file 2021-08-22 15:47:45 +02:00
LICENSE Initial commit 2018-08-06 20:44:44 +02:00
README.md updated on copyright year, and ping to see project is active but nothing to do currently 2021-03-16 10:44:41 +01:00
update.php * rewrite the hole script: 2019-05-16 18:00:21 +02:00

ownDynDNS

Self-hosted dynamic DNS php script to update netcup DNS API from Router like AVM FRITZ!Box

Authors

Usage

Installation

  • Copy all files to your webspace

  • create a copy of .env.dist as .env and configure:

    • username -> The username for your Router to authenticate (so not everyone can update your DNS)
    • password -> password for your Router
    • apiKey -> API key which is generated in netcup CCP
    • apiPassword -> API password which is generated in netcup CCP
    • customerId -> your netcup Customer ID
    • debug -> true|false enables debug mode and generates output of update.php (normal operation has no output)
  • Create each host record in your netcup CCP before using the script. The script does not create any missing records.

AVM FRITZ!Box Settings

  • Go to "Internet" -> "Freigaben" -> "DynDNS"
  • Choose "Benutzerdefiniert"
  • Update-URL: https://<url of your webspace>/update.php?user=<username>&password=<pass>&ipv4=<ipaddr>&ipv6=<ip6addr>&domain=<domain>
    • only the url needs to be adjusted, the rest is automatically filled by your AVM FRITZ!Box
    • http or https is possible if valid SSL certificate (e.g. Let's Encrypt)
  • Domainname: <host record that is supposed to be updated>
  • Username: <username as defined in .env file>
  • Password: <password as definied in .env file>

run as cronjob on a **nix based device

References

License

Published under GNU General Public License v3.0
© Felix Kretschmer, 2021