คุณเปิดไดเรกทอรี เรียงตามความเร็ว เลือกโหนดที่ทำเครื่องหมายว่าออนไลน์ แล้วไคลเอนต์ก็ยอมแพ้ก่อนจะเชื่อมต่อเสร็จ รายการไม่ได้โกหกเสียทีเดียว มันรายงานผลการตรวจสอบของคนอื่น จากเครือข่ายอื่น ในช่วงเวลาก่อนหน้า กับบริการที่อาสาสมัครปิดได้ทุกเมื่อ การเข้าใจช่องว่างนั้นเปลี่ยนการไล่ล่าที่น่าหงุดหงิดให้เป็นชุดการตรวจสอบสั้น ๆ ที่คุณรันกับผู้สมัครรายใดก็ได้

สิ่งที่รายการวัดจริง ๆ

ไดเรกทอรีสาธารณะเก็บฟิลด์ เช่น เวลาตรวจสอบล่าสุด ค่าที่วัดได้ของเวลาตอบสนอง จำนวนเซสชัน และบางครั้งรายการโปรโตคอล แต่ละอย่างอธิบายการสังเกตที่สำเร็จครั้งล่าสุดจากมุมมองของโครงการเอง ไม่ใช่สถานะของโหนดเมื่อแพ็กเก็ตของคุณมาถึง

ความสดใหม่สำคัญกว่าตัวเลข โหนดที่ตรวจสอบเมื่อสี่นาทีก่อนและโหนดที่ตรวจสอบเมื่อสี่ชั่วโมงก่อนอาจแสดงเครื่องหมายสีเขียวเดียวกัน และมีเพียงโหนดเดียวที่ยังคล้ายสถานะที่บันทึกไว้ มองหาการประทับเวลา ไม่ใช่สี

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

ดูขั้นตอนของไคลเอนต์ ไม่ใช่ตัวหมุน

ไคลเอนต์ VPN ทุกตัวผ่านลำดับกว้างเดียวกัน: แก้ชื่อ เปิดการเชื่อมต่อขนส่ง เจรจาความปลอดภัย ยืนยันตัวตน แล้วกำหนดค่าอุโมงค์และส่งข้อมูล ความล้มเหลวในแต่ละขั้นทิ้งหลักฐานต่างกัน และตัวหมุนไม่แสดงสิ่งใดเลย

เริ่มจากการแก้ชื่อ หากชื่อโฮสต์แก้ไม่ได้ ยังไม่ได้ทดสอบอะไรเกี่ยวกับความพร้อมใช้งานของโหนด เพราะการเชื่อมต่อไม่เคยออกจากเครื่องของคุณ ต่อไปคือการขนส่ง: การแลกเปลี่ยน TCP หรือ UDP ที่ถูกปฏิเสธหรือหมดเวลาบอกคุณว่าปลายทางไม่ตอบสนองที่พอร์ตนั้น ซึ่งเป็นการค้นพบจริงเกี่ยวกับโหนด จากนั้นการเจรจาและการยืนยันตัวตน ซึ่งใบรับรองผิด โปรไฟล์หมดอายุ หรือการเข้ารหัสที่ไม่ตรงกันล้มเหลว ขณะที่โหนดสมบูรณ์ดี หลังตั้งค่าอุโมงค์แล้วเท่านั้นที่ความผิดพลาดด้านเส้นทางหรือ DNS จะอธิบายขั้นสุดท้ายได้

อ่านบันทึกของไคลเอนต์ด้วยระดับรายละเอียดสูงสุดที่ยังพอดีหน้าจอ และจดบรรทัดสุดท้ายที่สำเร็จ บรรทัดนั้นคือจุดเริ่มต้นของการวินิจฉัย และมักให้ข้อมูลมากกว่าสิ่งใดที่ไดเรกทอรีแสดง

หนึ่งตัวแปรต่อการลองหนึ่งครั้ง

เปรียบเทียบผู้สมัครด้วยไคลเอนต์เดียวกัน เครือข่ายเข้าถึงเดียวกัน และรูปแบบโปรไฟล์เดียวกัน เปลี่ยนเฉพาะปลายทาง มิฉะนั้นความล้มเหลวอาจเป็นของคุณและคุณจะโทษโหนด

สองครั้งก็เพียงพอที่จะเห็นรูปแบบ และครั้งที่สามยืนยัน ถ้าโหนด A ล้มเหลวในขั้นขนส่งและโหนด B ล้มเหลวในการยืนยันตัวตน คุณมีปัญหาสองอย่างที่ไม่เกี่ยวข้องกัน ไม่ใช่รายการเก่ารายการเดียว

เมื่อทุกโหนดล้มเหลวเหมือนกัน

ความล้มเหลวทั่วไปในขั้นแรกชี้มาที่ฝั่งของคุณ: ตัวแก้ชื่อที่ตอบไม่ได้ ไฟร์วอลล์ภายในที่บล็อกโปรโตคอล หรือเครือข่ายที่อนุญาตเฉพาะทราฟฟิกเว็บ ไดเรกทอรีรายงานสิ่งนั้นไม่ได้ เพราะการตรวจสอบไม่ได้รันจากที่นั่งของคุณ

ทดสอบกรณีเครือข่ายที่ถูกจำกัดอย่างตั้งใจ เครือข่ายเข้าถึงบางแห่งอนุญาต HTTPS ไปยังเว็บและทิ้งโปรโตคอลอื่น ทำให้ผู้สมัครทุกรายดูเหมือนตายทั้งที่รายการถูกต้อง การเทียบการโหลดหน้าเว็บในเบราว์เซอร์กับการลองเชื่อมต่อดิบแยกสองสถานการณ์นั้นได้ในเวลาไม่ถึงหนึ่งนาที

อ่านความล้มเหลวในขั้นที่มันเกิดขึ้น

ทำซ้ำการลองจากเทอร์มินัลเพื่อให้เห็นขั้นตอน สามคำสั่งด้านล่างแก้ชื่อ ทดสอบว่าพอร์ตตอบหรือไม่ และพิมพ์บรรทัดการเจรจาจากโปรไฟล์ OpenVPN:

dig +short node.example.net
curl -s --max-time 5 telnet://node.example.net:443
openvpn --config node.ovpn --verb 4 2>&1 | grep -iE "TLS|AUTH|PUSH"

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

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