Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/andcool-systems/ddns-over-cloudflare

Реализация системы динамических доменных имён через API CloudFlare
https://github.com/andcool-systems/ddns-over-cloudflare

cloudflare ddns ddns-updater

Last synced: 13 days ago
JSON representation

Реализация системы динамических доменных имён через API CloudFlare

Awesome Lists containing this project

README

        

# DDNS over CloudFlare
Реализация системы динамических доменных имён через API CloudFlare.
DDNS получает ваш ip адрес через [www.cloudflare.com/cdn-cgi/trace](https://www.cloudflare.com/cdn-cgi/trace)

## Начало работы
Запустите собранный .jar файл через команду `java -jar file.jar`.
1. При первом запуске процесс завершится с кодом `-1`, сгенерировав файл [`config.json`](https://github.com/Andcool-Systems/DDNS_over_CloudFlare#config.json).
2. После настройки всех параметров запустите проект снова.

## config.json
```json
{
"zone_id": "",
"hostname": "example.com",
"period": 30,
"proxied": true,
"token": ""
}
```
`zone_id` – id зоны CloudFlare
`hostname` – Имя DNS записи, которая будет создана и обновляться
`period` – Период в секундах, с которым будет проверяться текущий ip адрес
`proxied` – Определяет, будут ли реквесты на hostname проксироваться через CloudFlare
`token` – Bearer [токен CloudFlare](https://dash.cloudflare.com/profile/api-tokens). Должен иметь права на чтение и изменение DNS записей

## Принцип работы
При запуске код проверяет наличие DNS записи в CloudFlare по переданным в `config.json` параметрам.
Если запись не найдена, то создает новую с текущим ip адресом. После этого входит в бесконечный цикл, где каждые `period` секунд
проверяет текущий ip адрес, и если он изменился – обновляет его в CloudFlare.

## Важные замечания
**Внимание! Не рассматривайте этот проект всерьёз и используйте в продакшене на свой страх и риск!**
- Распространение DNS записей может занимать значительный промежуток времени. Так как обновление записей на опережение невозможно,
будьте готовы к отставанию актуальности данных DNS на ~10 минут.
- Для корректной работы, ваш провайдер интернет услуг (ISP) должен поддерживать NAT через динамические ip адреса, в противном случае,
динамический DNS не будет иметь смысла.

---
by AndcoolSystems, June 21, 2024.