Statik IP adreslerinin genellikle ek bir masraf olduğu bir dünyada, dinamik IP adresleri, etki alanlarının yönetimini zorlaştırabilir. İSS’niz size dinamik bir IP adresi atarsa alan adınızı güncel tutmak zor olabilir. Bu eğitim, IP’niz değiştiğinde alan adınızın DNS kaydını güncellemek için Cloudflare API’sini kullanan basit ama etkili bir Bash betiği oluşturma konusunda size yol gösterecektir. Bu komut dosyasıyla alan adınızın, statik bir IP olmasa bile her zaman mevcut dinamik IP adresinize işaret etmesini sağlayabilirsiniz.
Alan Adınızı Dinamik IP ile Eşlemek İçin Adım Adım Kılavuz
IP’niz değiştiğinde Cloudflare DNS kaydınızı otomatik olarak güncelleyen bir Bash betiği oluşturmak için aşağıdaki adımları izleyin. Bu komut dosyası, ev sunucuları, uzak masaüstleri veya dinamik bir IP adresinin tutarlı bir şekilde DNS’ye yansıtılmasının gerekli olduğu herhangi bir durum için idealdir.
- Cloudflare API Token Alın: Cloudflare’in API’si ile etkileşimde bulunmak için DNS kayıtlarını düzenleme izinlerine sahip bir API token ihtiyacınız vardır.
- Cloudflare’e giriş yapın: Cloudflare kontrol panelini ziyaret edin ve hesap bilgilerinizle giriş yapın.
- API Tokens’a gidin: Profilim’e gidin ve API Token seçin.
- Yeni Bir Token Oluşturun: Token Oluştur’a tıklayın ve Bölge DNS şablonunu düzenle’yi seçin.
- Tokenı Özelleştir: Token yönetmesini istediğiniz etki alanını belirtin ve Token Oluştur’a tıklayın.
- token kopyala: Oluşturulan API token betiğinizde kullanmak üzere kopyalayın.
Oluşturulan jetonu kopyalayın. Bu, Cloudflare ile kimlik doğrulaması yapmak için komut dosyanızda kullanılacaktır.
- Bölge Kimliğinizi ve DNS Kayıt Kimliğinizi Bulun: Daha sonra alan adınızın Bölge Kimliğine ve güncellemek istediğiniz DNS kaydının kimliğine ihtiyacınız vardır.
$ curl -X GET "https://api.cloudflare.com/client/v4/zones?name=example.com" \ -H "Authorization: Bearer YOUR_CLOUDFLARE_API_TOKEN" \ -H "Content-Type: application/json"
Bu komut example.com için Bölge Kimliğini döndürecektir. example.com’u gerçek alan adınızla değiştirin. Bölge Kimliğiniz olan kimlik alanını not edin.
Bölge Kimliğinizi ve DNS Kayıt Kimliğinizi Bulun DNS_RECORD_ID’yi almak için şunu kullanın:
$ curl -X GET "https://api.cloudflare.com/client/v4/zones/YOUR_ZONE_ID/dns_records?name=example.com" \ -H "Authorization: Bearer YOUR_CLOUDFLARE_API_TOKEN" \ -H "Content-Type: application/json"
İstediğiniz DNS kaydının altındaki kimlik alanını arayın. Bu sizin DNS_RECORD_ID’nizdir.
Bu komut size DNS_RECORD_ID değerini verecektir - DNS Kaydını Güncellemek için Temel Bash Komut Dosyası Oluşturun: Gerekli kimlikler ve belirteçlerle, DNS kaydını mevcut IP’nizle güncellemek için basit bir Bash betiği oluşturabilirsiniz.
- Bu komut dosyası, DNS kaydını mevcut genel IP’nizle günceller. Yer tutucuları gerçek değerlerinizle değiştirin.
DNS Kaydını Güncellemek için Bash Komut Dosyası - Komut Dosyasını Yalnızca Gerektiğinde Güncellenecek Şekilde Geliştirin: Gereksiz güncellemeleri önlemek için, güncellemeden önce IP adresinin değişip değişmediğini kontrol etmek için komut dosyasını geliştirin. Ayrıca komut dosyasındaki herhangi bir komutun tam yollarını güncelleyin, böylece cron ile çalışabilir.
#!/bin/bash
- Komut dosyasının bu sürümü, geçerli IP’nin DNS kaydındaki IP’den farklı olup olmadığını kontrol eder. DNS kaydını yalnızca IP değiştiğinde günceller.
DNS kaydını Yalnızca Gerektiğinde Güncellemek için Geliştirilmiş Komut Dosyası - Komut Dosyasını Cron Kullanarak Zamanlama: DNS kaydınızı otomatik olarak güncel tutmak için komut dosyasını cron kullanarak düzenli aralıklarla çalışacak şekilde planlayın.
$ crontab -e # Add the following line to run the script every 5 minutes: */5 * * * * /path/to/update_dns.sh
Bu, betiği her 5 dakikada bir çalıştırarak dinamik IP’nizdeki herhangi bir değişikliğin anında DNS kayıtlarınıza yansımasını sağlar.
Yazının orijinalini buradan okuyabilirsiniz.

Kariyerime 26 yıl önce başladım. Windows ve Linux sistemlerinin kurulumu, yapılandırılması, yönetimi ve bakımı dahil olmak üzere birden fazla sistem üzerinde uzmanlaştım.
Açık kaynak dünyasındaki en son gelişmelerden haberdar olmaktan ve Linux hakkındaki en son araçları, özellikleri ve hizmetleri denemekten hoşlanıyorum.
Son 6 yıldır sistem ve ağ yöneticisi olarak görev yapıyorum ayrıca Pardus Dönüşüm Projesini yönetiyorum ve Pardus İşletim Sisteminin yaygınlaşması adına uğraş gösteriyorum.
Boş zamanlarımda açık kaynaklı uygulamaların Türkçe çevirisine katılıyorum ve The Document Foundation üyesiyim.