GhostlyDDns dla dynamicznego DNS Cloudflare
GhostlyDDns daje kontrolę nad dynamicznym DNS Cloudflare
GhostlyDDns to małe narzędzie .NET CLI działające lokalnie, aktualizujące istniejące rekordy A i AAAA w Cloudflare przy zmianie publicznego IP. Przydatne dla serwerów domowych, biur, laboratoriów i usług self-hosted, które potrzebują stabilnej domeny bez przekazywania kontroli DNS zewnętrznym SaaS.
Przegląd
Dynamiczny DNS rozwiązuje problem zmiennego IP, nie każdy problem hostingu
Wiele domowych i małych biurowych łączy internetowych zmienia publiczne IP. Dynamiczny DNS utrzymuje domenę wskazującą na aktualny adres, dzięki czemu VPN, panel, testowa strona lub aplikacja self-hosted pozostają dostępne. GhostlyDDns działa na strefach Cloudflare i aktualizuje istniejące rekordy.
Sprawdzenie dopasowania
Używaj GhostlyDDns, gdy Cloudflare jest twoim źródłem prawdy DNS
Najlepiej sprawdza się sieć, gdzie publiczny adres może się zmieniać, ale domena musi działać. Jeśli router lub hosting już obsługuje potrzebną aktualizację Cloudflare, dodatkowy agent może nie być potrzebny.
Gdzie pomaga GhostlyDDns
- Używasz DNS Cloudflare i masz już rekordy A lub AAAA, które chcesz utrzymywać.
- Twój dom, biuro, laboratorium lub sieć zapasowa ma zmienne publiczne IP.
- Chcesz przechowywać token API Cloudflare lokalnie, a nie w usłudze DDNS innej firmy.
- Potrzebujesz tej samej konfiguracji na Windows, Linux lub Linux ARM.
Gdzie inna ścieżka DDNS jest prostsza
- Twój dostawca internetu przydziela statyczne publiczne IP i DNS rzadko się zmienia.
- Twój router już bezpiecznie aktualizuje Cloudflare z ograniczonymi uprawnieniami i przydatnymi logami.
- Potrzebujesz hostowanego panelu, kontroli dostępu zespołu, alertów i wsparcia zarządzanego.
- Oczekujesz, że narzędzie utworzy rekordy Cloudflare od zera w wersji pierwszej.
Spis treści
Aktualizacje Cloudflare
GhostlyDDns aktualizuje tylko przy rzeczywistej zmianie publicznego IP
Agent sprawdza publiczne adresy IPv4 i IPv6, porównuje je z ostatnią znaną wartością i wywołuje API Cloudflare tylko, gdy rekord A lub AAAA wymaga zmiany. Dzięki temu pętla aktualizacji jest cicha i unika niepotrzebnego ruchu API.
Rekordy A wskazują na aktualny adres IPv4
Używaj rekordów A dla usług IPv4, np. domowego VPN, małego panelu, reverse proxy lub strony testowej.
Rekordy AAAA mogą śledzić IPv6, jeśli host go posiada
Włącz IPv6 tylko, gdy maszyna ma stabilną trasę IPv6. W przeciwnym razie wyłącz detektor IPv6.
Wywołania Cloudflare reagują na zmiany
GhostlyDDns najpierw porównuje wartości i aktualizuje Cloudflare tylko, gdy cel DNS się zmienia.
Prywatność i bezpieczeństwo
Lokalne uruchomienie trzyma wrażliwe dane blisko twojej sieci
GhostlyDDns nie wymaga panelu kontrolnego w chmurze. Token API Cloudflare pozostaje na maszynie z agentem, logi są lokalne, a pętla aktualizacji działa za twoją zaporą, harmonogramem lub systemd.
Używaj najmniejszego potrzebnego tokena API Cloudflare
Ogranicz token do strefy i uprawnień edycji DNS potrzebnych GhostlyDDns. Nie używaj tokena z uprawnieniami globalnymi do prostego zadania DDNS.
Chroń plik YAML jak tajemnicę
Konfiguracja może zawierać token API Cloudflare. Utrzymuj ścisłe uprawnienia pliku i unikaj wklejania go do zrzutów ekranu, zgłoszeń czy publicznych logów.
Pętla aktualizacji działa tam, gdzie ją umieścisz
GhostlyDDns nie potrzebuje zewnętrznego panelu. Harmonogram, zapora, logi i polityka ponowień pozostają w twojej kontroli.
Monitoruj błędy, nie każde poprawne uruchomienie
Oczekuje się cichego, pomyślnego działania. Obserwuj kody wyjścia różne od zera, powtarzające się błędy Cloudflare oraz niedziałające punkty detekcji.
Proces konfiguracji
Niezawodna kolejność to najpierw strefa, potem token, na końcu harmonogram
Czysta konfiguracja DDNS to głównie przygotowania. Utwórz rekord, ogranicz token Cloudflare do strefy, przetestuj w trybie suchym, a następnie ustaw agenta w harmonogramie odpowiednim dla twojego systemu.
Utwórz rekord
Najpierw dodaj rekord A lub AAAA w Cloudflare, wybierz tryb proxy i użyj tymczasowej nazwy hosta podczas testów.
Ogranicz zakres tokena
Utwórz token API Cloudflare z uprawnieniami tylko do edycji DNS w wybranej strefie.
Wykonaj test w trybie suchym
Użyj polecenia dry, by potwierdzić konfigurację, nazwy rekordów, detektory i dostęp do Cloudflare przed aktualizacją na żywo.
Zaplanuj agenta
Uruchom raz z timera lub ciągle jako usługę, potem sprawdzaj logi i kody wyjścia przy pierwszych zmianach IP.
Konfiguracja
Jeden plik YAML opisuje token, rekordy, interwał, detekcję IP i logi
Utrzymuj konfigurację prostą i przejrzystą. Przechowuj token bezpiecznie, ustaw interwał odpytywania według potrzeb, włącz IPv6 tylko przy rzeczywistej trasie, i wymień wszystkie rekordy Cloudflare śledzące publiczne IP.
Podstawowe polecenia CLI
Przeprowadzaj testy w trybie suchym przed włączeniem powtarzającego się zadania. Pokazują, co GhostlyDDns zaktualizuje, bez ryzyka ślepej zmiany produkcyjnej.
ghostly-ddns init-config --path ./config.yaml
ghostly-ddns dry --config ./config.yaml
ghostly-ddns once --config ./config.yaml
ghostly-ddns run --config ./config.yaml
ghostly-ddns --help
ghostly-ddns --versionPrzykładowa konfiguracja YAML
Dokładne wartości zależą od strefy Cloudflare i nazw rekordów, ale struktura pozostaje na tyle mała, by można ją było łatwo przeglądać.
cloudflare:
api_token: CF_API_TOKEN
update:
interval_seconds: 120
ip_detection:
detect_ipv4: true
detect_ipv6: false
v4_endpoints:
- https://api.ipify.org
- https://ipv4.icanhazip.com
v6_endpoints:
- https://api6.ipify.org
logging:
retention_days: 30
records:
- name: home.example.com
type: A
proxied: true
ttl: autoWdrożenie
Uruchom GhostlyDDns jak małą usługę infrastrukturalną
Na Linuxie systemd i timer ułatwiają restart i audyt agenta. Na Windows harmonogram zadań uruchamia polecenie w stałych odstępach. Logi powinny być łatwo dostępne, a plik konfiguracyjny chroniony przed dostępem innych.
Timer systemd na Linux
Używaj dedykowanego konta serwisowego, gdy to możliwe, i przechowuj konfigurację w chronionym katalogu.
[Unit]
Description=Run GhostlyDDns
[Service]
Type=oneshot
ExecStart=/usr/local/bin/ghostly-ddns once --config /etc/GhostlyDDns/config.yaml
[Timer]
OnBootSec=60
OnUnitActiveSec=120
Unit=ghostly-ddns.service
[Install]
WantedBy=timers.targetHarmonogram zadań Windows
Uruchamiaj to samo polecenie CLI co kilka minut i monitoruj kody wyjścia różne od zera w codziennej pracy.
schtasks /Create ^
/SC MINUTE /MO 5 ^
/TN "GhostlyDDns" ^
/TR "C:\GhostlyDDns\ghostly-ddns.exe once --config C:\GhostlyDDns\config.yaml" ^
/RL HIGHEST ^
/FEdycje
Wybierz wersję dopasowaną do miejsca działania agenta DDNS
Każda licencja obejmuje aktualizacje GhostlyDDns w wersji 1.x dla wybranej edycji. Wybierz Windows dla małego biura, Linux dla VPS lub serwera domowego, Linux ARM dla urządzeń niskiego poboru mocy działających cały dzień.
Windows
Użyj tego, gdy komputer z Windows jest stale online i ma utrzymywać aktualny rekord Cloudflare dla małej sieci.
Otwórz edycję WindowsLinux
Użyj tego na VPS, serwerze domowym, w laboratorium lub reverse proxy, które już działa bez nadzoru.
Otwórz edycję LinuxLinux ARM
Użyj tego na urządzeniach ARM64, które są zawsze włączone i mogą uruchomić małego agenta DDNS o niskim obciążeniu.
Otwórz edycję Linux ARMRozpocznij
Zacznij od jednego testowego rekordu przed automatyzacją produkcyjnego DNS
Utwórz tymczasową subdomenę, uruchom GhostlyDDns w trybie testowym, potwierdź, że token Cloudflare edytuje tylko wybraną strefę, a potem zastosuj tę konfigurację do właściwego rekordu.
Najczęściej zadawane pytania
FAQ GhostlyDDns
Krótkie odpowiedzi o rekordach Cloudflare, tokenach API, IPv6, harmonogramach, logach i kiedy DDNS dostawcy wystarczy.
Co automatyzuje GhostlyDDns?
GhostlyDDns aktualizuje istniejące rekordy A i AAAA w Cloudflare przy zmianie publicznego IPv4 lub IPv6. Nie zastępuje DNS Cloudflare ani nie tworzy platformy hostingowej.
Czy GhostlyDDns tworzy nowe rekordy Cloudflare?
Wersja pierwsza ma aktualizować istniejące rekordy. Najpierw utwórz rekordy DNS w Cloudflare, potem pozwól GhostlyDDns utrzymywać ich aktualność.
Gdzie przechowywać token API Cloudflare?
Przechowuj token na maszynie z GhostlyDDns i chroń plik YAML restrykcyjnymi uprawnieniami. Token powinien mieć dostęp tylko do edycji DNS w wybranej strefie.
Czy GhostlyDDns może aktualizować rekordy IPv6?
Tak. Włącz detekcję IPv6, gdy host ma rzeczywisty trasowany adres IPv6. GhostlyDDns może aktualizować rekordy AAAA przy zmianie wykrytego IPv6.
Kiedy wystarcza DDNS dostawcy?
DDNS dostawcy może wystarczyć, gdy router lub hosting bezpiecznie aktualizuje Cloudflare, obsługuje potrzebne rekordy i dostarcza wiarygodne logi.
Jak często agent powinien działać?
Krótki interwał, np. 2-5 minut, jest typowy dla sieci domowych i biurowych. Użyj dłuższego interwału, gdy szybkie przełączenie nie jest istotne.