DNS ส่วนตัวกับ VPN: แต่ละชั้นครอบคลุมอะไรจริง ๆ
ติดตามคำขอหนึ่งรายการจากหน้าจอ DNS ส่วนตัวเข้าไปในอุโมงค์: แต่ละชั้นเห็นอะไร สองสิ่งนี้แยกจากกันตรงไหน และทำไมชื่อภายในจึงเป็นจุดที่พัง
โทรศัพท์ของคุณตั้ง DNS ส่วนตัวไว้ที่ชื่อโฮสต์ของผู้ให้บริการ และมีแอป VPN ทำงานอยู่พร้อมกัน เป็นเรื่องสมเหตุสมผลที่จะคิดว่าหนึ่งในสองสิ่งนี้กำลังดูแลการค้นหาชื่อ ตามความหมายที่ประโยคนั้นสื่อ ทั้งสองไม่ได้ทำหน้าที่นั้น และวิธีที่เร็วที่สุดที่จะเห็นว่าทำไม คือติดตามคำขอหนึ่งรายการตั้งแต่จังหวะที่คุณแตะลิงก์
สองฟังก์ชันนี้อยู่คนละจุดในเส้นทางเดียวกัน DNS ส่วนตัวเข้ารหัสคำถามที่คุณส่งให้ตัวแก้ชื่อ VPN เปลี่ยนเส้นทางที่การเชื่อมต่อของคำตอบจะเดิน
ดังนั้นไล่ดูตามลำดับบนอุปกรณ์ที่เปิดทั้งสองอย่าง และบันทึกว่าแต่ละชั้นยังเห็นอะไรได้บ้าง
ขั้นแรก: การค้นหาออกจากแอป
คุณแตะลิงก์ ก่อนที่อะไรจะเชื่อมต่อ แอปต้องมีที่อยู่สำหรับชื่อโฮสต์นั้น บน Android หน้าจอที่เกี่ยวข้องคือ การตั้งค่า เครือข่ายและอินเทอร์เน็ต DNS ส่วนตัว การเลือกชื่อโฮสต์ของผู้ให้บริการจะทำให้อุปกรณ์เข้าสู่โหมดเข้มงวด โดยทำ DNS ผ่าน TLS ไปยังชื่อโฮสต์นั้นที่พอร์ต 853 และถ้าการแลกเปลี่ยนที่เข้ารหัสล้มเหลว การค้นหาก็ล้มเหลว แทนที่จะถอยกลับไปใช้ข้อความธรรมดาที่พอร์ต 53 อย่างเงียบ ๆ
นั่นคือความแตกต่างที่มีความหมายจากโหมดอัตโนมัติ ซึ่งใช้การเข้ารหัสตามโอกาสและยินดีใช้ตัวแก้ชื่อที่ไม่เข้ารหัสเมื่อเครือข่ายเข้ามารบกวน ถ้าเป้าหมายของคุณคือให้การค้นหาไม่เคยอยู่ในที่โล่งเลย โหมดเข้มงวดพร้อมชื่อโฮสต์ของผู้ให้บริการคือการตั้งค่าที่ตรงกับเป้านั้น
นี่คือสิ่งแรกที่การไล่ดูเผยให้เห็น การค้นหาได้รับการปกป้องจากเครือข่ายท้องถิ่น และตัวแก้ชื่อก็ยังรู้ชื่อนั้น การเข้ารหัสครอบคลุมแค่การกระโดดครั้งนั้น ผู้ให้บริการของตัวแก้ชื่อนั้นเห็นคำขอเพราะการตอบคำขอคือหน้าที่ของเขา
ขั้นที่สอง: การเชื่อมต่อไปอีกเส้นทาง
ตัวแก้ชื่อคืนที่อยู่มา และแอปก็เชื่อมต่อไปยังที่อยู่นั้น ขั้นนี้ไม่ได้รับผลกระทบจากการที่คำขอถูกเข้ารหัสอย่างไร ถ้าไม่มีอุโมงค์ การเชื่อมต่อจะออกจากที่อยู่สาธารณะปกติของคุณ และ IP ปลายทางกับการจับมือ TLS ก็มักทำให้ชื่อโฮสต์ยังมองเห็นได้บนเครือข่ายอยู่ดี ไม่ว่าจะมี DNS ที่เข้ารหัสหรือไม่
เปิด VPN แล้วขั้นนี้เองที่เปลี่ยนไป ทราฟฟิกที่ตรงกับนโยบายการกำหนดเส้นทางของไคลเอนต์จะผ่านอุโมงค์ เครือข่ายท้องถิ่นเห็นการเชื่อมต่อไปยังปลายทาง VPN และเว็บไซต์มักเห็นที่อยู่ขาออก การแก้ชื่อก็อาจเดินทางภายในอุโมงค์ได้ด้วย ขึ้นอยู่กับสิ่งที่ไคลเอนต์ส่งลงไป
การแยกกันนั้นคือการเปรียบเทียบทั้งหมดในประโยคเดียว การเข้ารหัส DNS ตอบว่าใครอ่านคำถามได้ VPN ตอบว่าบทสนทนาไปที่ไหน
ขั้นที่สาม: ภายในอุโมงค์ DNS กลายเป็นเรื่องนโยบาย
ตอนนี้สองฟังก์ชันทำงานร่วมกัน และเบราว์เซอร์คือแหล่งของความประหลาดใจตามเคย เบราว์เซอร์ที่มีการตั้งค่า DNS ปลอดภัยของตัวเองอาจส่งคำขอไปยังตัวแก้ชื่อที่เลือกผ่าน HTTPS แทนที่จะถามระบบปฏิบัติการ การตั้งค่า DNS ส่วนตัวของ Android ไปไม่ถึงการตัดสินใจนั้น
ใน Firefox สวิตช์อยู่ใต้ การตั้งค่า ความเป็นส่วนตัวและความปลอดภัย เปิดใช้ DNS ปลอดภัย ใน Chrome อยู่ใต้ การตั้งค่า ความเป็นส่วนตัวและความปลอดภัย ใช้ DNS ปลอดภัย ทั้งสองตั้งให้ผูกกับผู้ให้บริการรายใดรายหนึ่งได้ หรือปล่อยให้ปิดไว้ และเมื่อเปิดอยู่ การตั้งค่า DNS ของอุโมงค์จะถูกข้ามสำหรับการค้นหาเหล่านั้น แม้ทราฟฟิกของหน้าจะยังใช้อุโมงค์อยู่
ถ้า VPN ส่งตัวแก้ชื่อของตัวเองลงไป และเบราว์เซอร์ยืนกรานใช้ของตัวเอง คุณจะได้การแตกออกจากกัน ชื่อแก้ได้ หน้าเว็บโหลดได้ และการค้นหาที่ควรผ่านอุโมงค์ก็ออกไปตรง ๆ ที่อยู่ของตัวแก้ชื่อที่ต่างจากปลายทาง VPN ไม่ใช่หลักฐานการรั่วไหลในตัวเอง แต่เส้นทางการค้นหาที่ขัดกับเจตนาที่คุณประกาศไว้สมควรได้รับการแก้
ขั้นที่สี่: ชื่อภายในคือจุดที่พัง
เชื่อมต่อ VPN ของที่ทำงานและเปิดโฮสต์อินทราเน็ต ถ้า DNS ปลอดภัยของเบราว์เซอร์เปิดอยู่และชี้ไปยังตัวแก้ชื่อสาธารณะ ชื่อนั้นจะไม่มีอยู่สำหรับเบราว์เซอร์ อุโมงค์ขึ้นแล้ว ทุกอย่างอื่นทำงาน มีชื่อโฮสต์เดียวที่ล้มเหลวด้วยข้อผิดพลาดที่ดูเหมือนเว็บล่ม
ความล้มเหลวเดียวกันนี้ปรากฏในทางกลับกันบน Android DNS ส่วนตัวแบบเข้มงวดกับผู้ให้บริการสาธารณะจะไม่แก้ชื่อที่รู้เพียงตัวแก้ชื่อภายใน และโหมดเข้มงวดไม่มีทางถอย การแบ่ง DNS ของโทรศัพท์ระหว่างตัวแก้ชื่อสาธารณะที่เข้ารหัสกับตัวแก้ชื่อขององค์กรไม่ใช่การตั้งค่า แต่เป็นคำถามเรื่องนโยบายการกำหนดเส้นทางที่คนดูแล VPN ต้องตอบ
ตรวจสอบสิ่งนี้ก่อนโทษอุโมงค์ ถามชื่อภายใน แล้วถามชื่อเดิมโดยปิด DNS ปลอดภัยของเบราว์เซอร์ ถ้าแก้ได้ ปัญหาอยู่ที่การเลือกตัวแก้ชื่อ ไม่ใช่การเชื่อมต่อ
การไล่ดูบอกให้คุณเปลี่ยนอะไร
แทบทุกอย่างอยู่ในสี่หน้าจอ ดูตามลำดับนี้และบันทึกว่าแต่ละหน้าจอบอกอะไร เพราะคำตอบมักอยู่ในภาพรวม
- การตั้งค่า Android เครือข่ายและอินเทอร์เน็ต DNS ส่วนตัว อัตโนมัติ หรือชื่อโฮสต์ของผู้ให้บริการ และชื่อโฮสต์ไหน
- การตั้งค่า DNS ปลอดภัยของเบราว์เซอร์ ปิดอยู่ หรือผูกไว้กับตัวแก้ชื่อที่ระบุ
- นโยบาย DNS ของไคลเอนต์ VPN ส่งตัวแก้ชื่อลงไปหรือไม่ และอุโมงค์แบบแบ่งแยกตัดอะไรที่ยังต้องใช้ชื่อออกไปหรือเปล่า
- การทดสอบชื่อโฮสต์ภายในขณะอุโมงค์ขึ้น ทำสองครั้ง ครั้งหนึ่งเปิด DNS ของเบราว์เซอร์ อีกครั้งปิด
จากนั้นให้การแก้ตรงกับความต้องการ ไม่ใช่กลับกัน ถ้าความต้องการคือให้การค้นหาออกไปแบบเข้ารหัสและไปถึงตัวแก้ชื่อที่คุณเลือก ให้ตั้ง DNS ส่วนตัวแบบเข้มงวดและทำให้เบราว์เซอร์เห็นด้วย ถ้าความต้องการคือให้ทราฟฟิกออกที่อื่น ให้กำหนดค่าอุโมงค์และเลิกคาดหวังว่าการตั้งค่า DNS จะย้ายที่อยู่ของคุณ
และจำขีดจำกัดไว้ ทั้งสองฟังก์ชันไม่ได้ทำให้ปลายทางที่เป็นศัตรูปลอดภัย และไม่ได้ลบตัวตนที่คุณใช้ลงชื่อเข้าใช้ การเข้ารหัสเปลี่ยนว่าใครอ่านคำถามได้ อุโมงค์เปลี่ยนว่าการเชื่อมต่อไปที่ไหน ทั้งสองอย่างไม่ได้ทำให้บัญชีนิรนาม