ISS'in konumunu DNS ile öğrenmek
(shkspr.mobi)- DNS LOC kaydı kullanılarak Uluslararası Uzay İstasyonu'nun (ISS) gerçek zamanlı konum bilgisi sorgulanabiliyor
- LOC kaydı enlem, boylam ve irtifa bilgilerini saklıyor; uyduların konum takibi için uygun bir işlev sunuyor
- Örnek alan adında (
where-is-the-iss.dedyn.io) DNS sorgusu yapıldığında ISS'in güncel konumu döndürülüyor - Konum verisi N2YO API ile alınıyor ve LOC kaydı her 15 dakikada bir otomatik olarak güncelleniyor
- deSEC gibi API destekli alan adı hizmetleri üzerinden LOC bilgilerinin verimli biçimde güncellenmesi mümkün
Genel Bakış
- DNS'in alışılmadık ama ilginç özelliklerine duyulan merakla, DNS LOC kaydı kullanılarak gerçek fiziksel konum bilgileri dünya geneline dağıtılabiliyor
- Normalde alan adları sunucuların fiziksel konumuyla ilişkilendirilir; ancak LOC kaydı sayesinde yalnızca sunucuların değil, sıra dışı cihazların konumları da kaydedilebiliyor
DNS LOC kaydı nedir?
- RFC 1876'da tanımlanan deneysel bir standart olup, sunucuların enlem, boylam ve irtifa bilgilerinin DNS'e yazılmasını sağlıyor
- Minimum irtifa -100.000 m (sığınak gibi yer altı konumlarını gösterebilir), maksimum irtifa 42.849.672 m (jeosenkron yörüngedeki uydulara kadar ifade edebilir)
- Uydular dahil çeşitli ekipmanların konum bilgilerini DNS üzerinden iletme imkanı sunuyor
Uluslararası Uzay İstasyonu (ISS) konum sorgu hizmetinin uygulanması
-
where-is-the-iss.dedyn.ioalan adı oluşturulmuş; ayrı bir web sitesi, ping ya da genel etkileşim olmadan yalnızca DNS sorgusuyla çalışıyor -
Linux ve Mac'te ISS konum bilgisi aşağıdaki komutla sorgulanabiliyor
dig where-is-the-iss.dedyn.io LOC -
Dönen örnek: enlem/boylam/irtifa bilgisi LOC biçiminde veriliyor
where-is-the-iss.dedyn.io. 1066 IN LOC 47 24 53.500 N 66 12 12.070 W 430520m 10000m 10000m 10000m -
Her 15 dakikada bir güncel konum bilgisiyle yenileniyor (best-effort yaklaşımıyla)
Konum verisinin alınması ve dönüştürülmesi
-
N2YO web sitesi ve API'si üzerinden çeşitli yörüngesel nesneler takip edilebiliyor; ayrıca ücretsiz katmanda API erişimi sunuluyor
-
Örnek API çağrısıyla uydunun güncel konumu (enlem, boylam, irtifa vb.) JSON biçiminde alınabiliyor
https://api.n2yo.com/rest/v1/…=_____ -
Dönen enlem/boylam değerleri ondalıklı biçimde, irtifa ise km cinsinden geliyor → LOC kaydına dönüştürürken derece-dakika-saniye (DMS) ve metre (m) birimlerine çevirmek gerekiyor
LOC kaydının güncellenmesinin otomasyonu
- deSEC (Berlin merkezli bir kâr amacı gütmeyen kuruluş) API üzerinden LOC kaydının ilk oluşturulmasını ve güncellenmesini destekliyor
- LOC kaydının ilk eklenmesine örnek
curl https://desec.io/api/v1/domains/where-is-the-iss.dedyn.io/rrsets/ ... --data '{"type": "LOC", "records": ["..."], "ttl": 900}' - Güncelleme için HTTP PATCH kullanılarak yalnızca değişen bilgi gönderiliyor
- TTL (900 saniye, 15 dakika) olarak ayarlanıyor; böylece kod her 15 dakikada bir otomatik güncelleme yapıyor
- API kullanım limitlerine uyarken güncel veriyi verimli şekilde sunuyor
- Ek olarak, TXT kaydı gibi yöntemlerle güncelleme zamanı tutmak gibi çeşitli genişletmeler de yapılabiliyor
Sonuç
- Bu deneme, DNS'in sıra dışı kullanım olanaklarını gösteren teknik bir gösterim niteliğinde
- Gelecekte Mars Rover gibi daha çeşitli uzay nesnelerinin konumlarının da DNS LOC kaydıyla ifade edilebileceğini ortaya koyuyor
- DNS kullanan yenilikçi bir uygulama örneği olarak, altyapı/BT işlerinin otomasyonu ve konum bilgisi yönetimi gibi alanlara da genişletilebilirlik sunuyor
1 yorum
Hacker News yorumu
http://open-notify.org/
https://www.ckdhr.com/dns-loc/