تغییرات فرمت دادهها در API JSON سرویس DNS ۱.۱.۱.۱ کلودفلر
شرکت کلودفلر بهتازگی تغییرات قابل توجهی را در فرمت دادههای API JSON مربوط به سرویس DNS خود با آدرس ۱.۱.۱.۱ DoH (DNS over HTTPS) اعمال کرده است. این بهروزرسانیها که در قالب تغییرات فرمت دادهها در فیلدهای پاسخدهی API صورت گرفته، میتواند تاثیرات مهمی بر توسعهدهندگان و کاربران این سرویس داشته باشد. در این گزارش به بررسی جزئیات این تغییرات، دلایل آنها و پیامدهای احتمالی برای کاربران و توسعهدهندگان میپردازیم.
سرویس DNS ۱.۱.۱.۱ کلودفلر یکی از محبوبترین و پرسرعتترین سرویسهای DNS عمومی است که از پروتکل DNS over HTTPS (DoH) برای افزایش امنیت و حفظ حریم خصوصی کاربران بهره میبرد. API JSON این سرویس که با فرمت application/dns-json ارائه میشود، امکان دریافت پاسخهای DNS به صورت ساختار یافته و قابل پردازش توسط برنامهها را فراهم میکند. با این حال، این API تاکنون فاقد یک استاندارد رسمی RFC بوده و فرمت آن به صورت رسمی تثبیت نشده است. به همین دلیل، کلودفلر در این بهروزرسانی اعلام کرده که ممکن است فرمت پاسخها در حین فرآیند بهروزرسانی به صورت متناوب از فرمت قدیمی به فرمت جدید تغییر کند.
یکی از مهمترین تغییرات اعمال شده، نحوه نمایش دادههای مربوط به انواع رکوردهای DNS است که پیشتر به صورت کدگذاری هگزادسیمال عمومی (RFC ۳۵۹۷) ارائه میشد. در فرمت جدید، این دادهها به شکل قابل خواندن و استاندارد نمایش داده میشوند. برای مثال، رکوردهای CAA، NAPTR، RP، IPSECKEY، SVCB، HTTPS، TLSA، SSHFP و OPENPGPKEY اکنون به صورت رشتههای متنی و ساختارمند ارائه میشوند که فهم و پردازش آنها را برای توسعهدهندگان آسانتر میکند.
همچنین در حوزه رکوردهای مرتبط با DNSSEC، کلودفلر تغییرات مهمی در نحوه نمایش شناسههای الگوریتمهای رمزنگاری اعمال کرده است. به جای استفاده از نامهای اختصاری الگوریتمها مانند RSASHA256 یا ECDSAP256SHA256، اکنون شناسههای عددی مطابق با RFC ۴۰۳۴ استفاده میشوند. این تغییر شامل رکوردهای RRSIG، DS، CDS، DNSKEY و CDNSKEY میشود. برای نمونه، الگوریتم RSASHA256 با شناسه عددی ۸، ECDSAP256SHA256 با شناسه ۱۳ و ED25519 با شناسه ۱۵ جایگزین شدهاند. همچنین نوع هش در رکورد DS نیز از نام SHA-۲۵۶ به عدد ۲ تغییر یافته است.
از دیگر تغییرات فرمت میتوان به نحوه نمایش رشتههای کاراکتری در رکورد HINFO اشاره کرد که اکنون هر رشته به صورت جداگانه با علامت نقل قول احاطه شده است تا از ابهامات ناشی از وجود فاصله در مقادیر جلوگیری شود. به عنوان مثال، رشته “Intel Xeon Linux” در فرمت جدید به صورت “”Intel Xeon” “Linux”” نمایش داده میشود.
کلودفلر در اطلاعیه خود به توسعهدهندگان توصیه کرده است که در صورت نیاز به فرمت پایدار و بدون تغییر، بهتر است از فرمت سیمی (wireformat) پروتکل DoH استفاده کنند، چرا که فرمت JSON این API به دلیل نداشتن استاندارد رسمی، ممکن است در آینده نیز دچار تغییراتی شود.
این تغییرات در حالی اعمال شدهاند که سرویسهای DNS و بهویژه سرویسهای مبتنی بر DoH به دلیل اهمیت بالای امنیت و سرعت در اینترنت، روز به روز مورد توجه بیشتری قرار میگیرند. بهبود خوانایی و استانداردسازی فرمت دادهها میتواند به توسعهدهندگان کمک کند تا به شکل بهتری از این سرویسها بهرهمند شوند و قابلیتهای جدید را در برنامههای خود پیادهسازی کنند.
در نهایت، این بهروزرسانیها نشاندهنده تلاش کلودفلر برای بهبود کیفیت و قابلیت اطمینان سرویس DNS ۱.۱.۱.۱ است، هرچند که توسعهدهندگان باید آمادگی مواجهه با تغییرات احتمالی در فرمت دادهها را داشته باشند. همچنین این موضوع اهمیت وجود استانداردهای رسمی و مستندات دقیق در حوزه پروتکلهای اینترنتی را بیش از پیش نمایان میسازد تا از بروز مشکلات ناسازگاری و پیچیدگیهای غیرضروری جلوگیری شود.