ทำไมการเปลี่ยน DNS จึงตั้งค่าพร็อกซี SOCKS ไม่ได้
อธิบายว่าทำไมการชี้ชื่อโฮสต์ของเว็บไซต์ไปยังเซิร์ฟเวอร์ SOCKS จึงไม่ทำให้เบราว์เซอร์ที่ยังไม่ได้กำหนดค่าใช้พร็อกซี
การเปลี่ยนคำตอบ DNS เปลี่ยนเพียงที่อยู่ที่เบราว์เซอร์เชื่อมต่อด้วย ไม่ได้เปลี่ยนโปรโตคอลที่เบราว์เซอร์พูดเมื่อไปถึงที่นั่น
เมื่อเปิด URL แบบ HTTP ทั่วไป เบราว์เซอร์จะส่ง HTTP เมื่อเปิด URL แบบ HTTPS จะเริ่ม TLS สำหรับเว็บไซต์นั้น แต่เซิร์ฟเวอร์ SOCKS5 จะรอการเจรจาของตัวเองก่อน ได้แก่ การเลือกวิธี การยืนยันตัวตนถ้ามี และคำขอที่ระบุปลายทาง เบราว์เซอร์ที่ยังไม่ได้กำหนดค่าจะไม่ส่งสิ่งเหล่านี้เลย
นี่จึงอธิบายว่าทำไมตัวรับฟัง Dante ที่เข้าถึงได้อาจปิดการเชื่อมต่อทันทีหลังการเปลี่ยน DNS บริการอาจยังปกติ แต่ไบต์ที่เข้ามาเป็นของโปรโตคอลผิด การย้ายตัวรับฟังไปที่พอร์ต 80 หรือ 443 ไม่ได้ทำให้ไบต์เหล่านั้นเป็น SOCKS
กำหนดค่าอินเทอร์เฟซ SOCKS ของเบราว์เซอร์ เช่น การตั้งค่า SOCKS ของ Firefox หรือการตั้งค่าพร็อกซีเฉพาะแอปพลิเคชัน เพื่อให้ทำแฮนด์เชกและขอให้พร็อกซีเชื่อมต่อไปข้างหน้า ไฟล์ PAC สามารถเลือกเส้นทางพร็อกซีที่รองรับสำหรับแอปพลิเคชันที่ใช้ไฟล์นั้นได้ แต่ก็ยังเป็นการกำหนดค่าพร็อกซีแยกต่างหาก ไม่ใช่คุณสมบัติของเรกคอร์ด A หรือ AAAA
HTTPS เพิ่มอุปสรรคอีกอย่างให้แนวคิด DNS อย่างเดียว เบราว์เซอร์ยังคงคาดหวังตัวตนของเว็บไซต์ใน URL ใบรับรองสำหรับโฮสต์พร็อกซีไม่อาจตอบสนองความคาดหวังนั้นได้เพียงเพราะ DNS ส่งการเชื่อมต่อไปที่นั่น
การดักจับเครือข่ายแบบโปร่งใสเป็นการออกแบบอีกแบบที่เกี่ยวข้องกับการกำหนดเส้นทางและซอฟต์แวร์ดักจับที่เข้ากันได้ ไม่สามารถได้มาโดยการคืนที่อยู่ของเซิร์ฟเวอร์ SOCKS จาก DNS