DNS Leak คืออะไร? DNS Leak เปิดเผยพฤติกรรมการท่องเว็บของคุณอย่างไร
คุณเชื่อมต่อ VPN เพื่อความเป็นส่วนตัว แต่ DNS query อาจยังถูกส่งไปยัง ISP แบบไม่เข้ารหัส ทำให้เห็นได้ว่าคุณเปิดเว็บไซต์อะไร นี่คือ DNS leak หนึ่งในสาเหตุที่ทำให้ความเป็นส่วนตัวของ VPN ล้มเหลวแบบเงียบ ๆ
สารบัญ
DNS Leak คืออะไร?
DNS leak เกิดขึ้นเมื่อ DNS query ของคุณถูกส่งออกไปนอก VPN tunnel โดยมักไปยัง DNS server ของ ISP แทนที่จะวิ่งผ่านการเชื่อมต่อที่เข้ารหัสของ VPN ผลคือ ISP หรือผู้ที่มองเห็นเครือข่ายสามารถรู้ชื่อโดเมนที่คุณค้นหาได้ แม้ traffic หลักจะถูก VPN เข้ารหัสแล้วก็ตาม
Expected:
You -> encrypted VPN tunnel -> VPN DNS -> Internet
ISP sees only encrypted traffic
DNS leak:
You -> encrypted VPN tunnel -> Internet
You -> plain DNS query -> ISP DNS server
ISP sees every domain lookupทำไมเรื่องนี้สำคัญ
DNS query เป็นเหมือนประวัติย่อของเว็บไซต์ที่คุณเปิด ใครที่เห็น query สามารถสร้างภาพรวมได้ว่าคุณเข้าเว็บอะไร เมื่อไร และบ่อยแค่ไหน แม้จะไม่เห็นเนื้อหาที่ส่งผ่าน HTTPS ก็ตาม
DNS Resolution ทำงานอย่างไร
เมื่อคุณพิมพ์โดเมน เช่น example.com อุปกรณ์ต้องแปลงชื่อโดเมนเป็น IP address ก่อนเชื่อมต่อ ขั้นตอนนี้ทำผ่าน DNS หรือ Domain Name System
1. Device checks local DNS cache
2. If not found, query goes to DNS resolver
3. Resolver asks root, TLD, and authoritative servers
4. Resolver returns IP address
5. Browser connects to that IPปัญหาคือ DNS แบบดั้งเดิมใช้ UDP port 53 และส่งเป็น plain text ผู้ให้บริการ Wi-Fi, ISP หรือผู้ดูแลเครือข่ายจึงมองเห็นชื่อโดเมนที่คุณถามได้
VPN ควรจัดการ DNS อย่างไร
VPN ที่ตั้งค่าถูกต้องควร override DNS ของระบบให้ใช้ DNS ของ VPN, route DNS query ทั้งหมดผ่าน tunnel, block DNS traffic ที่ออกนอก tunnel และจัดการทั้ง IPv4 กับ IPv6
- VPN ใช้ DNS server ของตัวเองภายในเครือข่าย VPN
- VPN route DNS ผ่าน tunnel ไปยัง public resolver เช่น 1.1.1.1 หรือ 9.9.9.9
- VPN ใช้ DoH/DoT ภายใน tunnel เพื่อเพิ่มชั้นการเข้ารหัส
- VPN มี kill switch หรือ firewall rules เพื่อ block DNS ที่ไม่ผ่าน tunnel
DNS Leak เปิดเผยอะไรบ้าง
| ชื่อโดเมนที่ค้นหา | เว็บไซต์และบริการที่คุณเปิด เช่น ธนาคาร streaming หรือเว็บสุขภาพ |
| เวลาที่ query | รูปแบบการใช้งาน เวลาทำงาน เวลาพัก และกิจวัตรประจำวัน |
| ความถี่ในการ query | เว็บไซต์ที่ใช้ทุกวันเทียบกับเว็บที่เข้าเป็นครั้งคราว |
| IP จริงของคุณ | หาก query ออกนอก VPN จะผูกกับตำแหน่งจริงและ ISP ของคุณ |
| บริการจากแอปพื้นหลัง | update server, API endpoint และบริการที่แอปเรียกใช้โดยไม่เปิดเว็บ |
สาเหตุของ DNS Leak
| Windows Smart Multi-Homed Name Resolution | Windows | ส่ง DNS query ไปหลาย network adapter พร้อมกัน รวมถึงเส้นทางนอก VPN |
| IPv6 DNS queries | ทุกแพลตฟอร์ม | VPN บางตัว tunnel เฉพาะ IPv4 ทำให้ IPv6 query หลุดออกนอก tunnel |
| ตั้งค่า VPN ไม่ครบ | ทุกแพลตฟอร์ม | VPN ไม่ override DNS หรือไม่ได้ block DNS traffic นอก tunnel |
| VPN หลุดชั่วคราว | ทุกแพลตฟอร์ม | ระหว่าง reconnect ระบบอาจกลับไปใช้ DNS ของ ISP ถ้าไม่มี kill switch |
| Split tunneling | ทุกแพลตฟอร์ม | บาง traffic ถูกออกแบบให้ไม่ผ่าน VPN และอาจรวม DNS query ด้วย |
| Browser DoH แยกจากระบบ | Browser | เบราว์เซอร์อาจใช้ DNS provider ของตัวเอง ทำให้ผลไม่ตรงกับ DNS ของ VPN |
วิธีทดสอบ DNS Leak
- เชื่อมต่อ VPN แล้วเปิดเครื่องมือ DNS leak test
- ตรวจว่ารายชื่อ DNS server เป็นของ VPN หรือ resolver ที่คุณตั้งใจใช้ ไม่ใช่ ISP จริงของคุณ
- ทดสอบซ้ำหลัง reconnect VPN เปลี่ยน Wi-Fi หรือปลุกเครื่องจาก sleep
- ทดสอบทั้ง IPv4, IPv6 และ WebRTC leak ถ้าเครื่องมือรองรับ
อย่าทดสอบแค่ครั้งเดียว
บาง leak เกิดเฉพาะช่วง VPN กำลังเชื่อมต่อ หลุด หรือเปลี่ยนเครือข่าย การทดสอบซ้ำช่วยจับปัญหา intermittent leak ได้ดีกว่า
วิธีแก้ DNS Leak
- เปิด DNS leak protection ใน VPN client
- เปิด kill switch เพื่อ block traffic ทั้งหมดเมื่อ VPN หลุด
- ใช้ VPN ที่มี DNS server ของตัวเองและรองรับ IPv6 หรือ block IPv6 อย่างถูกต้อง
- ตั้ง DNS เป็น resolver ที่เชื่อถือได้ เช่น 1.1.1.1, 9.9.9.9 หรือ DNS ของ VPN
- ปิด split tunneling ถ้าไม่จำเป็น หรือเข้าใจว่า traffic ใดจะไม่ผ่าน VPN
- บน Windows ให้พิจารณาปิด Smart Multi-Homed Name Resolution หากยัง leak
Encrypted DNS: DoH, DoT และ DoQ
Encrypted DNS เข้ารหัส DNS traffic เพื่อไม่ให้ผู้ที่อยู่ระหว่างทางอ่าน query ได้ง่าย แต่ผู้ให้บริการ DNS resolver ยังเห็น query อยู่ จึงต้องเลือก resolver ที่ไว้ใจได้
| Traditional DNS | 53 | UDP plain text | ไม่มีการเข้ารหัส ผู้ดูแลเครือข่ายหรือ ISP เห็น query ได้ |
| DNS-over-HTTPS (DoH) | 443 | HTTPS encrypted | ส่ง DNS ผ่าน HTTPS ดูคล้าย traffic เว็บทั่วไปและบล็อกแยกได้ยาก |
| DNS-over-TLS (DoT) | 853 | TLS encrypted | ช่องทางเข้ารหัสเฉพาะ DNS ระบุได้ง่ายกว่าและอาจถูก firewall บล็อก |
| DNS-over-QUIC (DoQ) | 853 | QUIC encrypted | รุ่นใหม่ latency ต่ำกว่า แต่ยังอยู่ระหว่างการใช้งานแพร่หลาย |
IPv6 Leak และ WebRTC Leak
DNS leak ไม่ใช่ทางเดียวที่ตัวตนจริงอาจหลุดเมื่อใช้ VPN หาก VPN ไม่ tunnel IPv6 เว็บไซต์ dual-stack อาจเห็น IPv6 จริงของคุณได้ ส่วน WebRTC ในเบราว์เซอร์อาจใช้ STUN server เพื่อค้นหา public IP และถูกสคริปต์บนเว็บเรียกดูได้
- ใช้ VPN ที่รองรับ IPv6 tunneling หรือ block IPv6 เมื่อไม่รองรับ
- ทดสอบ IPv6 leak หลังเชื่อมต่อ VPN ทุกครั้งที่เปลี่ยนเครือข่าย
- ปิด WebRTC หรือใช้ browser/VPN ที่มี WebRTC leak protection
ใครเห็น DNS Query ของคุณได้บ้าง
| ผู้ให้บริการ Wi-Fi | เห็นได้ถ้าเป็น plain DNS | ร้านกาแฟ โรงแรม สนามบิน หรือเครือข่ายสาธารณะ |
| ISP ของคุณ | เห็นได้ถ้าใช้ DNS ของ ISP หรือ port 53 ไม่เข้ารหัส | อาจเก็บ log หรือวิเคราะห์พฤติกรรมการใช้งาน |
| DNS resolver | เห็นเสมอ | Google, Cloudflare, Quad9 หรือ DNS ของ VPN เป็นผู้ตอบ query |
| VPN provider | เห็นได้ถ้าเป็นผู้ให้ DNS | ต้องเชื่อถือ policy และการตั้งค่า no-log |
| ผู้ดูแลเครือข่ายองค์กร/โรงเรียน | เห็นได้บนเครือข่ายของเขา | มักบันทึก DNS query เพื่อควบคุมความปลอดภัยและนโยบาย |
แนวทางปกป้อง DNS Privacy
- เปิด DNS leak protection และ kill switch ใน VPN
- เลือก VPN ที่มี DNS server ของตัวเองและมีนโยบาย no-log ชัดเจน
- ปิด IPv6 ถ้า VPN ไม่รองรับ หรือใช้ VPN ที่ tunnel IPv6 ได้จริง
- เปิด DoH/DoT ใน browser หรือระบบปฏิบัติการเมื่อเหมาะสม
- ใช้ resolver ที่ไว้ใจได้ เช่น Cloudflare, Quad9 หรือ DNS ของ VPN
- ทดสอบ DNS leak เป็นประจำ โดยเฉพาะหลังเปลี่ยน VPN server หรือเครือข่าย
ไม่มีวิธีเดียวที่สมบูรณ์แบบ
VPN ซ่อน DNS จาก ISP แต่คุณต้องเชื่อ VPN provider ส่วน DoH/DoT ซ่อน DNS จากเครือข่ายท้องถิ่นแต่ DNS resolver ยังเห็น query อยู่ เป้าหมายคือจำกัดจำนวนฝ่ายที่มองเห็นข้อมูลนี้ให้น้อยที่สุด
ทดสอบ DNS Leak ของการเชื่อมต่อคุณ
ใช้ DNS Leak Test ฟรีเพื่อตรวจว่า DNS query ของคุณหลุดออกนอก VPN หรือไม่ ดูว่า DNS server ใดกำลังตอบคำขอ และตรวจสอบว่าความเป็นส่วนตัวของคุณยังได้รับการปกป้องอยู่
เปิด DNS Leak Test →แหล่งอ้างอิง
- Hoffman, P. & McManus, P. (2018). RFC 8484: DNS Queries over HTTPS.
- Hu, Z. et al. (2016). RFC 7858: DNS over Transport Layer Security.
- Huitema, C. et al. (2022). RFC 9250: DNS over Dedicated QUIC Connections.
- Cloudflare. What is a DNS leak?.
- IETF. DNS Privacy Considerations (RFC 7626).