หากคุณติดตามเรื่องความปลอดภัยและความเป็นส่วนตัวบนโลกออนไลน์ คุณน่าจะคุ้นเคยกับชื่อของ DoH (DNS over HTTPS) หรือ DoT (DNS over TLS) ซึ่งเป็นโปรโตคอลการแปลงชื่อโดเมน (DNS) แบบเข้ารหัสที่นิยมใช้กันในปัจจุบัน
แต่ล่าสุด มีโปรโตคอลใหม่ที่ก้าวหน้าขึ้นไปอีกขั้นชื่อว่า DoQ (DNS over QUIC) ซึ่งถูกมองว่าจะเป็นตัวเปลี่ยนเกมด้านความปลอดภัยและความเร็ว แต่ในปัจจุบันกลับแทบยังไม่มีใครเริ่มใช้งานอย่างแพร่หลาย
ปูพื้นฐาน: คุณอาจกำลังใช้ QUIC อยู่แล้วโดยไม่รู้ตัว
ก่อนจะเข้าใจ DoQ ต้องเข้าใจโปรโตคอล QUIC เสียก่อน QUIC ได้รับการพัฒนาขึ้นโดย Google และถูกรับรองเป็นมาตรฐาน IETF (RFC 9000) มาตั้งแต่ปี 2021 ปัจจุบันมันคือโครงสร้างหลักของมาตรฐานเว็บยุคใหม่อย่าง HTTP/3
ความต่างระหว่าง TCP แบบดั้งเดิม กับ QUIC มีดังนี้:
- การเข้ารหัส (Encryption): TCP ต้องมาครอบชั้น TLS เสริมในภายหลัง แต่ QUIC บังคับเข้ารหัสในตัวตั้งแต่ขั้นตอน Handshake
- ปัญหา Head-of-line Blocking: ใน TCP หากแพ็กเก็ตข้อมูลหล่นหายเพียงตัวเดียว จะทำให้การเชื่อมต่อทั้งหมดสะดุด แต่ QUIC แยกการส่งข้อมูลเป็นสตรีมอิสระ หล่นหายสตรีมไหน สตรีมอื่นก็ยังทำงานต่อได้
- การเชื่อมต่อใหม่ (Handshake): TCP ต้องใช้เวลาไป-กลับหลายรอบ (Round-trips) เพื่อสร้างการเชื่อมต่อและทำ TLS แต่ QUIC รวมกระบวนการนี้เหลือเพียงรอบเดียว
- การเชื่อมต่อซ้ำ (Reconnection): QUIC รองรับฟังก์ชัน 0-RTT ทำให้กลับมาเชื่อมต่อได้ทันทีโดยใช้แคชคีย์เดิม
QUIC รันอยู่บนโปรโตคอล UDP แต่มันไม่ใช่แค่ “UDP ที่เข้ารหัส” ทว่ามันมาพร้อมการจัดการลำดับข้อมูล การควบคุมความคับคั่งของเครือข่าย (Congestion Control) และความปลอดภัยระดับ TLS 1.3 ในตัว
DoQ คืออะไร และเข้ามาแก้ปัญหาตรงไหน?
ปัจจุบัน การใช้งาน DNS หลักๆ แบ่งออกเป็น 3 แบบ
- Plaintext DNS (แบบเดิม): ส่งข้อมูลธรรมดา ไม่มีการเข้ารหัส ใครก็ดักดูได้ว่าเราเข้าเว็บอะไร
- DNS over TLS (DoT): เข้ารหัสข้อมูลด้วย TLS แต่ยังรันบน TCP ทำให้เจอปัญหาความหน่วงและ Head-of-line Blocking เช่นเดิม
- DNS over HTTPS (DoH): นำ DNS ไปวิ่งผ่านทราฟฟิก HTTP/2 หรือ HTTP/3 ซึ่งปลอดภัย แต่มีส่วนของภาระข้อมูล (Overhead) เพิ่มขึ้นมาโดยไม่จำเป็น
DNS over QUIC (DoQ) จึงเข้ามาแก้ปัญหาเหล่านี้ โดยการนำคำขอ DNS ไปวิ่งบนโปรโตคอล QUIC โดยตรง
- ไม่ต้องพึ่งพาขั้นตอน TLS บน TCP แบบเก่าที่ช้า
- ไม่ต้องมีส่วนหุ้ม (Wrapper) ของ HTTP มาคอยถ่วงให้หนัก
- ได้ความเร็ว ความหน่วงต่ำ และการแยกสตรีมข้อมูลของ QUIC ไปเต็ม ๆ
DoH3 กับ DoQ ต่างกันอย่างไร ในเมื่อใช้ QUIC เหมือนกัน?
หลายคนอาจสงสัยว่า ในเมื่อ DoH บน HTTP/3 (เรียกว่า DoH3) ก็ใช้ QUIC อยู่แล้ว ทำไมเรายังต้องมี DoQ อีก?
คำตอบอยู่ที่ “จำนวน Layer ของโปรโตคอล”:
- DoH3: ทำงานแบบ
DNS → HTTP → QUIC → UDP - DoQ: ทำงานแบบ
DNS → QUIC → UDP
DoQ ตัด Layer ของ HTTP ที่ไม่จำเป็นสำหรับ DNS ออกไป ทำให้เป็นโปรโตคอลที่เบากว่า คล่องตัวกว่า และถูกออกแบบมาเพื่อระบบโครงสร้าง DNS โดยเฉพาะ
ทำไมเราถึงยังใช้งาน DoQ ทั่วไปไม่ได้ในตอนนี้?
แม้ DoQ จะมีประสิทธิภาพสูงมาก แต่ปัญหาใหญ่คือ ระบบปฏิบัติการและเบราว์เซอร์ส่วนใหญ่ยังไม่รองรับโดยตรง
- Windows, macOS, Linux, iOS และ Android ยังไม่มีการตั้งค่า DoQ ให้เปิดใช้งานได้ในระดับระบบปฏิบัติการ
- เบราว์เซอร์อย่าง Chrome หรือ Firefox แม้จะมีตัวเลือก Secure DNS แต่ก็ยังไม่มีตัวเลือกให้ต่อผ่าน DoQ Resolver
ใครที่สามารถใช้ DoQ ได้ในตอนนี้? กลุ่มเดียวที่ใช้งานได้ในปัจจุบันคือ ผู้ที่ตั้ง Home DNS Server ใช้เองภายในบ้าน ผ่านเครื่องมืออย่าง AdGuard Home, Technitium หรือ dnsproxy ซึ่งโปรแกรมเหล่านี้รองรับการตั้งค่า Upstream ไปยัง DNS ภายนอกด้วยโปรโตคอล DoQ ได้แล้ว (เช่น AdGuard DNS ซึ่งเป็นเจ้าแรกๆ ที่เปิดรับ DoQ)
อนาคตของ DoQ จะแพร่หลายเมื่อไหร่?
DoQ เป็นเทคโนโลยีที่พร้อมใช้งานแล้ว แต่สิ่งที่ยังขาดคือ “การผลักดันจากผู้ให้บริการรายใหญ่” หากผู้ให้บริการ Public DNS ระดับโลกอย่าง Cloudflare (1.1.1.1) หรือ Google Public DNS ประกาศรองรับ DoQ อย่างเป็นทางการ หรือหาก Google Chrome นำ DoQ ไปใส่เป็นตัวเลือกในเมนู Secure DNS การเปลี่ยนผ่านครั้งใหญ่ของระบบ DNS ทั่วโลกก็จะเกิดขึ้นอย่างรวดเร็วแน่นอน