ไคลเอนต์ผ่านการรับรองความถูกต้องและอนุญาต UDP association แล้ว การตอบกลับยังคงล้มเหลว ใน Dante ให้ตรวจสอบทิศทางของกฎที่จัดการทราฟฟิกขากลับ

Dante แยกคำสั่งที่เริ่มต้นออกจากการจัดการการตอบกลับ:

คำสั่งของกฎfromto
connect, bind, udpassociateไคลเอนต์ภายในปลายทางภายนอก
bindreply, udpreplyโฮสต์ภายนอกไคลเอนต์ภายใน

การคัดลอกข้อจำกัดซับเน็ตของไคลเอนต์โดยไม่เปลี่ยนแปลงไปยังทั้งสองทิศทางจึงอาจจับคู่ผิดด้านในกฎการตอบกลับ ตรวจสอบผู้ส่งภายนอกและผู้รับภายในที่ตั้งใจ ไม่ใช่เพียงว่ามีคำว่า UDP ในกฎ pass หรือไม่

การรับรองความถูกต้องมีขอบเขตที่เกี่ยวข้อง บริการภายนอกที่ตอบกลับดาต้าแกรม UDP ไม่ใช่ไคลเอนต์ SOCKS ที่สามารถแลกเปลี่ยนชื่อผู้ใช้/รหัสผ่านของคุณได้ เอกสารของ Dante อธิบายว่าการดำเนินการตอบกลับเกิดจาก BIND หรือ UDP association ก่อนหน้าของไคลเอนต์ ให้รับรองความถูกต้องของการดำเนินการเริ่มต้นนั้นและใช้นโยบายการตอบกลับที่เกี่ยวข้องอย่างเหมาะสม

สิ่งนี้ไม่ได้ให้เหตุผลสำหรับทราฟฟิกขาเข้าที่ไม่ได้ร้องขอและไม่จำกัด UDP association, นโยบายปลายทาง, ที่อยู่รีเลย์ และเส้นทางไฟร์วอลล์ยังคงสำคัญ การเปิด bindreply ก็ไม่ได้ทำให้ UDP association กลายเป็นบริการส่งต่อพอร์ตสาธารณะเอนกประสงค์

แยกการแลกเปลี่ยน SOCKS ฝั่งไคลเอนต์และเส้นทางกลับ UDP จริงให้มองเห็นแยกกัน การเข้าสู่ระบบ TCP ที่สำเร็จไม่ได้ตรวจสอบทั้งทิศทางที่อยู่ของ ACL การตอบกลับและความสามารถในการเข้าถึงของ UDP relay endpoint

บทความที่เกี่ยวข้อง