dynamicdns: Use only IPv4 for GnuDIP protocol

  • The following messages was seen on the ddns.freedombox.org server: "Unserviceable IP address from <ipv6_address>: user .fbx.one - IP: <ipv6_address>". This is due to code that checks for validity of incoming IP address and fails. The current configuration only handles IPv4 address. Even if this restriction is lifted, GnuDIP code does not contain code to add/remove AAAA records.

  • Fix this by forcing GnuDIP HTTP update requests to go on IPv4.

Tests:

  • Copy the code for _request_get_ipv4() into a python3 console and run _request_get_ipv4('https://ddns.freedombox.org/ip'). Do this on a dual stack machine with both public IPv4 and IPv6 addresses. Only IPv4 address returned. Changing the AF to AF_INET6 returns only the IPv6 address.

  • Take a test DDNS account offline. Configure it in FreedomBox stable VM. The IP address is properly updated.

Signed-off-by: Sunil Mohan Adapa sunil@medhas.org

Merge request reports

Loading