-
-
Notifications
You must be signed in to change notification settings - Fork 156
Provider ipv64.net: it's not possible to use the default check-server set for [email protected] to get an update of the A record. #497
Description
The code in that the retrieves the ip
Line 139 in da1d1af
| DO(http_init(client, "Checking for IP# change", strstr(provider->system->name, "ipv6") ? TCP_FORCE_IPV6 : TCP_FORCE_IPV4)); |
ifconfig.me defined in Line 53 in da1d1af
| .checkip_name = "ifconfig.me", |
ipv6 is enforced, due to the name ipv64.net containing ipv6.
This leads to an issue, that a definition like the following one:
provider [email protected] {
username = <REDACTED>
password = none
hostname = <REDACTED>
}
tries to update the ipv4 record using the retrieved ipv6 address.
I'm currently using the following workaround:
provider [email protected] {
...
checkip-command = "/usr/bin/curl -s -4 https://ifconfig.me/ip"
}
There are more constructs like the mentioned above.
inadyn/plugins/core-networks.c
Line 55 in da1d1af
| if (strstr(info->system->name, "ipv6")) |
Line 228 in da1d1af
| CHECK(http_init(&client, "Json query",strstr(info->system->name, "ipv6") ? TCP_FORCE_IPV6 : TCP_FORCE_IPV4)); |
Line 252 in da1d1af
| CHECK(http_init(&client, "Json query",strstr(info->system->name, "ipv6") ? TCP_FORCE_IPV6 : TCP_FORCE_IPV4)); |
Line 72 in da1d1af
| rc = http_init(&client, "Fetching account API key",strstr(info->system->name, "ipv6") ? TCP_FORCE_IPV6 : TCP_FORCE_IPV4); |
Line 103 in da1d1af
| rc = http_init(&client, "Sending record list query",strstr(info->system->name, "ipv6") ? TCP_FORCE_IPV6 : TCP_FORCE_IPV4); |
Line 172 in da1d1af
| if (strstr(info->system->name, "ipv6")) |
Line 76 in da1d1af
| return snprintf(ctx->request_buf, ctx->request_buflen, |
Line 621 in da1d1af
| rc = http_init(client, "Sending IP# update to DDNS server", strstr(info->system->name, "ipv6") ? TCP_FORCE_IPV6 : TCP_FORCE_IPV4); |
Edit: make links to code permalinks