صاحب الموضوع
#1
dig ile çıktı formatını düzenleme
Hook / Giriş
dig komutu DNS sorgularını görülebilir ve otomatikleştirilebilir bir şekilde çalıştırmanın temel aracı. Ancak varsayılan çıktı çoğu durumda işlevsiz olabilir ya da loglama/monitoring için uygun olmayabilir. Burada adım adım çıktı biçimini nasıl sadeleştirebileceğinizi, hangi filtreleri ve alanları kullanabileceğinizi, hem günlük kullanımda hem de betikler içinde güvenli ve okunabilir biçimde ele alıyorum.
1) Field ve satır bazlı çıktı ile özelleştirme
2) Zamanlama ve kaynak gösterimi
3) Port ve arkaplan güvenliği
4) Çıktı biçimini otomatikleştirme örnekleri
5) Örnek senaryo ve pratik ipuçları
Kapanış
Çıktı formatını sadeleştirmek, otomatik raporlama ve hata ayıklama süreçlerini doğrudan hızlandırır. Belirli bir senaryo veya hedef çıktı formatı varsa, o bağlamda optimize edilmiş komut dizilimini paylaşabiliriz.
Hook / Giriş
dig komutu DNS sorgularını görülebilir ve otomatikleştirilebilir bir şekilde çalıştırmanın temel aracı. Ancak varsayılan çıktı çoğu durumda işlevsiz olabilir ya da loglama/monitoring için uygun olmayabilir. Burada adım adım çıktı biçimini nasıl sadeleştirebileceğinizi, hangi filtreleri ve alanları kullanabileceğinizi, hem günlük kullanımda hem de betikler içinde güvenli ve okunabilir biçimde ele alıyorum.
1) Field ve satır bazlı çıktı ile özelleştirme
- dig +short: Sadece yanıtın değerini döndürür; çok sayıda kayıt tipinde en temel alanları verir. Örneğin: dig Aexample.com +short -> 93.184.216.34
- dig +norecurse +short: yetkisiz sorgularda güvenli basit çıktı elde etmek için kullanışlıdır.
- dig +answer +nocomments: yanıt bölümünü sadeleştirir, açıklamaları kaldırır.
- dig +noauthority +noadditional: yetkili ve ek açıklamaları devre dışı bırakır.
2) Zamanlama ve kaynak gösterimi
- dig +time=2 +tries=3: zaman sınırı ve yeniden deneme sayısını ayarlayarak çıktı değişmeden performans izleme için kullanılır.
- dig +stats: sorgu istatistiklerini üretir; hangi kaynaktan cevap geldiği veya süreler gibi meta bilgileri görmek için yararlıdır.
3) Port ve arkaplan güvenliği
- dig @nameserver:port domain sorgusu: örn. dig @8.8.8.8 example.com A
- iptables veya firewall loglarınızla entegre çalışacak biçimde kısa çıktı, IP ve zaman damgası ile çıktı almak için +short ile birlikte sistem günlüklerine yönlendirmek güvenli bir pratiktir.
4) Çıktı biçimini otomatikleştirme örnekleri
- SSH ile çalışan betiklerde: dig @dns.example.com domain.tld MX +short | tr -d '\t' | tr -s ' '
- YAML/JSON rotası için parse etmek: dig +short example.com. | awk '{print "{\"ip\":\""$1"\"}"}' kullanılabilir; daha güvenli ve yapısal çıktı için kendi parser’ınızla düzenlemek gerekir.
5) Örnek senaryo ve pratik ipuçları
- Sizin için hangi kayıt tipini takip ettiğinizi belirleyin (A, AAAA, MX, NS vb.). Sadece ilgili alanları çıkarmak için +short ve +norecurse kombinasyonlarını kullanın.
- Raporlama için tek bir satır, zaman damgası ve hedef sorgusu ile loglayın: date +"%F %T" && dig @dns.example.com example.com A +short
Kapanış
Çıktı formatını sadeleştirmek, otomatik raporlama ve hata ayıklama süreçlerini doğrudan hızlandırır. Belirli bir senaryo veya hedef çıktı formatı varsa, o bağlamda optimize edilmiş komut dizilimini paylaşabiliriz.
