در اندروید P از پروتکل «DNS بر روی TLS» پشتیبانی می‌شود

 

اولین کاری که در ارتباطات اینترنتی انجام می شود ارسال پرس و جوی DNS است. یک کلاینت مانند یک دستگاه تلفن همراه معمولا از یک سرور DNS که توسط وای فای یا سلول ارائه شده استفاده می کند. کلاینت از سرور DNS درخواست می کند تا یک نام دامنه مانند www.google.com را به آدرس IP مانند ۲۶۰۷:f8b0:4006:80e::2004 تبدیل کند. وقتی کلاینت آدرس IP را بدست آورد، می تواند با مقصد مورد نظر خود ارتباط برقرار کند.


وقتی پروتکل DNS در دهه‌ی ۱۹۸۰ طراحی شد، اینترنت بسیار کوچک‌تر و ساده‌تر از حالت فعلی بود. در چند سال گذشته، کارگروه مهندسی اینترنت بسیار تلاش کرده تا پروتکل جدیدی را برای DNS طراحی و از امنیت و حریم خصوصی کاربران بیشتر محافظت کند. این پروتکل DNS بر روی TLS نام‌گذاری شده و در RFC 7858 مستندسازی شده است.


مانند HTTPS در پروتکل DNS بر روی TLS نیز از پروتکل TLS برای برقراری ارتباط امن با سرور استفاده می‌شود. پس از ایجاد این کانال ارتباطی امن، کسی به‌جز دو طرف ارتباط نمی‌توانند پرس‌وجوها و پاسخ‌های DNS را خوانده و یا ویرایش کنند. 


در نسخه‌ی اندروید P که در مرحله‌ی بازبینی توسعه‌دهندگان قرار دارد، به‌طور پیش‌فرض از DNS بر روی TLS پشتیبانی می‌شود. در این نسخه از اندروید، در تنظیمات شبکه و اینترنت حالت DNS خصوصی نیز در نظر گرفته شده است. اگر سرور DNS که دستگاه‌های تلفن همراه از آن استفاده می‌کنند، از DNS بر روی TLS پشتیبانی کند، این پروتکل به‌طور خودکار بر روی دستگاه‌ها به‌روزرسانی می‌شود. ولی کاربرانی که به هر دلیلی نمی‌خواهند از این پروتکل جدید استفاده کنند، می‌توانند آن را غیرفعال کنند.


کاربرانی که می‌خواهند از یک ارائه‌دهنده‌ی DNS خصوصی استفاده کنند می‌توانند نام میزبان را وارد کنند. در ادامه اندروید تمامی پرس‌وجوهای DNS را به سمت این سرور مورد نظر ارسال می‌کند و اگر سرور در دسترس نباشد، پیام اینترنت در دسترس نیست نمایش داده می‌شود. 


پروتکل DNS بر روی TLS به‌طور خودکار پرس‌وجوهای DNS را در برابر هرگونه برنامه‌های کاربردی مخرب محافظت می‌کند. هرچند برنامه‌های کاربردی که از سیستم واسط برنامه‌نویسی DNS استفاده نکرده و جداگانه پرس‌وجوهای DNS را ارسال می‌کنند باید به امنیت این ارتباطات توجه داشته باشند. برنامه‌های کاربردی می‌توانند برای دریافت جزئیات بیشتر به واسط‌های برنامه‌نویسی LinkProperties.isPrivateDnsActive() مراجعه کنند. امیدواریم در آینده تمامی سیستم عامل‌ها برای برقرار ارتباطات DNS از این پروتکل امن و جدید بهره ببرند.
 

منبع

پست‌های مشابه

Leave a Comment