mirror of
https://github.com/fernwerker/ownDynDNS.git
synced 2025-07-10 06:05:13 +02:00
* rewrite the hole script:
** use .env file for config so we can retrieve updates ** add config and payload DTO with validators ** allow registrable domains as DynDNS ** update IPv4/6 only if changed (or really forced) ** remove obsolete failed_logins counter ** save logs with timestamp ** save only the newest 100 log entries for each domain
This commit is contained in:
parent
0c58ee7009
commit
05e326abe6
9 changed files with 528 additions and 149 deletions
29
README.md
29
README.md
|
@ -1,32 +1,37 @@
|
|||
# ownDynDNS
|
||||
Self-hosted dynamic DNS php script for FRITZ!Box and netcup DNS API
|
||||
Self-hosted dynamic DNS php script to update netcup DNS API from Router like AVM FRITZ!Box
|
||||
|
||||
## Authors
|
||||
* Felix Kretschmer [@fernwerker](https://github.com/fernwerker)
|
||||
* Philipp Tempel [@philipptempel](https://github.com/philipptempel)
|
||||
* Branko Wilhelm [@b2un0](https://github.com/b2un0)
|
||||
|
||||
## Usage
|
||||
### Installation
|
||||
* Copy all files to your webspace
|
||||
* Edit the first lines of update.php
|
||||
* username -> The username for your FRITZ!Box to authenticate (so not everyone can update your DNS)
|
||||
* password -> password for your FRITZ!Box
|
||||
* debug -> enables debug mode and generates output of update.php (normal operation has no output)
|
||||
* apiKey -> API key which is generated in netcup CCP
|
||||
* apiPassword -> API password which is generated in netcup CCP
|
||||
* 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 non-existent records.
|
||||
* Create each host record in your netcup CCP before using the script. The script does not create any missing records.
|
||||
|
||||
### FRITZ!Box Settings
|
||||
* Go to "Internet" -> "DynDNS"
|
||||
* Choose "custom"
|
||||
### 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 the FRITZ!Box
|
||||
* 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 update.php>`
|
||||
* Password: `<password as definied in update.php>`
|
||||
|
||||
# run as cronjob on a **nix based device
|
||||
* see [examples](./examples)
|
||||
|
||||
## References
|
||||
* DNS API Documentation: https://ccp.netcup.net/run/webservice/servers/endpoint.php
|
||||
* Source of dnsapi.php: https://ccp.netcup.net/run/webservice/servers/endpoint.php?PHPSOAPCLIENT
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue