Files
hassio-addons/inadyn/README.md
copilot-swe-agent[bot] 8a0f15413c Add My Home Assistant repository button to all addon READMEs
Add the "Add repository to my Home Assistant" blue button to all
addon README files that were missing it. This makes it easier for
new HA users to add the repository with a single click.

Updated 59 addon READMEs:
- 51 with standard Installation section format
- 8 with non-standard or missing Installation sections

Co-authored-by: alexbelgium <44178713+alexbelgium@users.noreply.github.com>
2026-02-23 09:02:12 +00:00

204 lines
8.3 KiB
Markdown

# Home assistant add-on: Inadyn
I maintain this and other Home Assistant add-ons in my free time: keeping up with upstream changes, HA changes, and testing on real hardware takes a lot of time (and some money). I use around 5-10 of my >110 addons so regularly I install test machines (and purchase some test services such as vpn) that I don't use myself to troubleshoot and improve the addons
If this add-on saves you time or makes your setup easier, I would be very grateful for your support!
[![Buy me a coffee][donation-badge]](https://www.buymeacoffee.com/alexbelgium)
[![Donate via PayPal][paypal-badge]](https://www.paypal.com/donate/?hosted_button_id=DZFULJZTP3UQA)
## Addon informations
![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Finadyn%2Fconfig.yaml)
![Ingress](https://img.shields.io/badge/dynamic/yaml?label=Ingress&query=%24.ingress&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Finadyn%2Fconfig.yaml)
![Arch](https://img.shields.io/badge/dynamic/yaml?color=success&label=Arch&query=%24.arch&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Finadyn%2Fconfig.yaml)
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/9c6cf10bdbba45ecb202d7f579b5be0e)](https://www.codacy.com/gh/alexbelgium/hassio-addons/dashboard?utm_source=github.com&utm_medium=referral&utm_content=alexbelgium/hassio-addons&utm_campaign=Badge_Grade)
[![GitHub Super-Linter](https://img.shields.io/github/actions/workflow/status/alexbelgium/hassio-addons/weekly-supelinter.yaml?label=Lint%20code%20base)](https://github.com/alexbelgium/hassio-addons/actions/workflows/weekly-supelinter.yaml)
[![Builder](https://img.shields.io/github/actions/workflow/status/alexbelgium/hassio-addons/onpush_builder.yaml?label=Builder)](https://github.com/alexbelgium/hassio-addons/actions/workflows/onpush_builder.yaml)
[donation-badge]: https://img.shields.io/badge/Buy%20me%20a%20coffee-%23d32f2f?logo=buy-me-a-coffee&style=flat&logoColor=white
[paypal-badge]: https://img.shields.io/badge/Donate%20via%20PayPal-0070BA?logo=paypal&style=flat&logoColor=white
_Thanks to everyone having starred my repo! To star it click on the image below, then it will be on top right. Thanks!_
[![Stargazers repo roster for @alexbelgium/hassio-addons](https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.github/stars2.svg)](https://github.com/alexbelgium/hassio-addons/stargazers)
![downloads evolution](https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/inadyn/stats.png)
## About
[Inadyn](https://github.com/troglobit/inadyn), or In-a-Dyn, is a small and simple Dynamic DNS, DDNS, client with HTTPS support. Commonly available in many GNU/Linux distributions, used in off the shelf routers and Internet gateways to automate the task of keeping your Internet name in sync with your public¹ IP address. It can also be used in installations with redundant (backup) connections to the Internet.
Based on https://hub.docker.com/r/troglobit/inadyn
Project house : https://github.com/troglobit/inadyn
Some code borrowed from https://github.com/nalipaz/hassio-addons
## Installation
The installation of this add-on is pretty straightforward and not different in
comparison to installing any other Hass.io add-on.
1. Add my add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
[![Open your Home Assistant instance and show the add add-on repository dialog with a specific repository URL pre-filled.](https://my.home-assistant.io/badges/supervisor_add_addon_repository.svg)](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
1. Install this add-on.
1. Click the `Save` button to store your configuration.
1. Start the add-on.
1. Check the logs of the add-on to see if everything went well.
1. Carefully configure the add-on to your preferences, see the official documentation for for that.
## Configuration
Use the add-on `env_vars` option to pass extra environment variables (uppercase or lowercase names). See https://github.com/alexbelgium/hassio-addons/wiki/Add-Environment-variables-to-your-Addon-2 for details.
This addon has no web interface - all configuration is done through addon options.
For detailed configuration information, see the [official documentation](https://github.com/troglobit/inadyn).
### Options
| Option | Type | Default | Description |
|--------|------|---------|-------------|
| `verify_address` | bool | | Verify the IP address with check IP service |
| `fake_address` | bool | | Use fake address for testing |
| `allow_ipv6` | bool | | Enable IPv6 support |
| `iface` | str | | Network interface to use (e.g., `eth0`) |
| `iterations` | int | | Number of iterations (0 = infinite) |
| `period` | int | `300` | Update period in seconds |
| `forced_update` | int | | Forced update interval in seconds |
| `secure_ssl` | bool | | Enable secure SSL verification |
| `providers` | list | | List of DDNS provider configurations |
### Provider Configuration
Each provider in the `providers` list supports these options:
| Option | Type | Description |
|--------|------|-------------|
| `provider` | str | Provider name or custom identifier |
| `custom_provider` | bool | Whether this is a custom provider |
| `username` | str | Username or token for authentication |
| `password` | str | Password or API key |
| `hostname` | str | Domain/hostname to update |
| `ssl` | bool | Use SSL for updates |
| `ddns_server` | str | Custom DDNS server |
| `ddns_path` | str | Custom update path |
| `checkip_server` | str | Custom IP check server |
| `checkip_path` | str | Custom IP check path |
| `checkip_ssl` | bool | Use SSL for IP checking |
| `append_myip` | bool | Append IP to request |
### Example Configurations
```json
{
"verify_address": false,
"fake_address": false,
"allow_ipv6": true,
"iface": "eth0",
"iterations": 0,
"period": 300,
"forced_update": 300,
"secure_ssl": true,
"providers": [
{
"provider": "providerslug",
"custom_provider": false,
"username": "yourusername",
"password": "yourpassword_or_token",
"ssl": true,
"hostname": "dynamic-subdomain.example.com",
"checkip_ssl": false,
"checkip_server": "api.example.com",
"checkip_command": "/sbin/ifconfig eth0 | grep 'inet6 addr'",
"checkip_path": "/",
"user_agent": "Mozilla/5.0",
"ddns_server": "ddns.example.com",
"ddns_path": "",
"append_myip": false
}
]
}
```
You should not fill in all of these, only use what is necessary. A typical example would look like:
```json
{
{
"provider": "duckdns",
"username": "your-token",
"hostname": "sub.duckdns.org"
}
}
```
or:
```json
{
"providers": [
{
"provider": "someprovider",
"username": "username",
"password": "password",
"hostname": "your.domain.com"
}
]
}
```
for a custom provider that is not supported by inadyn you can do:
```json
{
"providers": [
{
"provider": "arbitraryname",
"username": "username",
"password": "password",
"hostname": "your.domain.com",
"ddns_server": "api.cp.easydns.com",
"ddns_path": "/somescript.php?hostname=%h&myip=%i",
"custom_provider": true
}
]
}
```
the tokens in ddns_path are outlined in the `inadyn.conf(5)` man page.
### Multiple subdomains with same provider
Related to https://github.com/troglobit/inadyn#example
If you want use this add-on with several subdomains with the same provider, you have to enumerate domains like:
```json
{
"providers": [
{
"hostname": "first.mydomain.dev",
"provider": "domains.google.com:1",
"username": "xxxxxxxxxxxxxxxx",
"password": "xxxxxxxxxxxxxxxx"
},
{
"hostname": "second.mydomain.dev",
"provider": "domains.google.com:2",
"username": "xxxxxxxxxxxxxxxx",
"password": "xxxxxxxxxxxxxxxx"
},
{
"hostname": "another.mydomain.dev",
"provider": "domains.google.com:3",
"username": "xxxxxxxxxxxxxxxx",
"password": "xxxxxxxxxxxxxxxx"
}
]
}
```
[repository]: https://github.com/alexbelgium/hassio-addons