arduino / Arduino

Arduino IDE 1.x
https://www.arduino.cc/en/software
Other
14.1k stars 7k forks source link

[Library Manager] Please add DDNS_Generic Library #10752

Closed khoih-prog closed 3 years ago

khoih-prog commented 3 years ago

Please add DDNS_Generic library to Library Manager. Thanks and Regards.


Why do we need this DDNS_Generic library

Many of us are using Dynamic DNS service because Dynamic IP addresses is much cheaper than the expensive static IP address.

Dynamic IP addresses present a problem if we wants to provide a service to other users on the Internet, such as a web service, Blynk Local Server, etc. As the IP address may change frequently (due to power outtage/surge, power on/off, DSL/Fiber issues, etc.), the corresponding domain names must be quickly re-mapped in the DNS, to maintain accessibility using a well-known URL.

Many providers offer commercial or free Dynamic DNS service for this scenario. The automatic reconfiguration is generally implemented in the user's router or computer, which runs software to update the DDNS service. The communication between the user's equipment and the provider is not standardized, although a few standard web-based methods of updating have emerged over time.

This Library is created to automatically update your DDNS Domains with the latest dynamic IP address, using one of the many avaiable boards / shields. See Supported board.

The time between checks to update the DDNS Service is configurable to match your use case, and is set in the examples at 10 minutes.

The DDNS_Generic code is very short, can be immersed in your Projects and to be called in the loop() code.

It currently supports DuckDNS, No-ip, DynDNS, Dynu, enom, all-inkl, selfhost.de, dyndns.it, strato, freemyip, afraid.org. Expansion to support more DDNS sevice providers is very easy and can be done by yourself.

This DDNS_Generic library is based on and modified from Ayush Sharma's EasyDDNS Library to add support to many boards and shields besides ESP32 and ESP8266.


Releases v1.0.0

  1. Initial coding for Generic boards using many different WiFi/Ethernet modules/shields.
  2. Add more examples

Currently Supported Boards

Currently Supported WiFi Modules/Shields

Currently Supported Ethernet Modules/Shields

cmaglie commented 3 years ago

Done.