วิธีทดสอบความเสถียรของ VPN โดยไม่บันทึกการท่องเว็บของคุณ
พิสูจน์ความเสถียรของอุโมงค์ด้วยโพรบคงที่ ข้อเท็จจริงที่สุ่มสี่ข้อ และบันทึกเหตุการณ์ที่มีการประทับเวลา แทนการนำการท่องเว็บประจำวันเข้าสู่การทดสอบ
คุณอยากรู้ว่าอุโมงค์ทนต่อการหลับของแล็ปท็อปได้หรือไม่ การเดินระหว่างจุดเชื่อมต่อ หรือการโทรหนึ่งชั่วโมง และคุณไม่อยากมอบบันทึกของทุกสิ่งที่คุณอ่านให้ใครระหว่างที่หาคำตอบ สามสิ่งตอบเรื่องนี้ได้: โพรบคงที่ ข้อเท็จจริงสี่ข้อเดิมที่สุ่มตามกำหนดเวลา และเหตุการณ์ที่เปลี่ยนข้อเท็จจริงเหล่านั้นซึ่งเขียนไว้ สิบนาทีของสิ่งนี้ดีกว่าหนึ่งบ่ายที่นั่งดูหน้าเว็บโหลดไม่ขึ้น บันทึกที่คุณเหลืออยู่ก็สั้นพอที่จะแนบกับตั๋วโดยไม่ต้องปิดข้อมูลครึ่งหนึ่ง
ตัดสินว่าเสถียรต้องหมายถึงอะไร
“VPN หลุด” คือความล้มเหลวสี่แบบที่ใช้คำเดียว ปีร์อาจสูญเสียแฮนด์เชก เส้นทางอาจถอยกลับไปที่เกตเวย์ท้องถิ่น การแปลงชื่ออาจไปยังเซิร์ฟเวอร์ที่ไม่เคยตอบกลับผ่านอุโมงค์ หรือทั้งหมดนั้นอาจแข็งแรงดีในขณะที่แอปพลิเคชันหนึ่งยังล้มเหลว ตัดสินว่าอันไหนตรงกับอาการของคุณก่อนเก็บข้อมูล เพราะแต่ละแบบต้องใช้โพรบต่างกัน จากนั้นเลือกช่วงเวลาที่คุณรักษาได้: หนึ่งตัวอย่างทุกสามสิบวินาทีเป็นเวลาสิบนาทีจับการโรวมิงได้โดยไม่ทำให้การทดสอบกลายเป็นภาระงาน
ถ้าข้อร้องเรียนคือการโทรที่ค้างเมื่อคุณเดินไปห้องครัว คุณสมบัติที่คุณต้องการคือคำขอใหม่จะเสร็จสมบูรณ์หลังการโรวมิงหรือไม่ สิ่งนี้ตรวจได้ในบรรทัดเดียวและไม่บันทึกการท่องเว็บเลย
กำหนดโพรบที่ไม่เป็นอันตรายหนึ่งตัว
เลือกปลายทางที่คุณได้รับอนุญาตให้สอบถามและไม่ผูกกับบัญชีของคุณ: โฮสต์เอกสาร ปลายทางสถานะภายใน หรือเกตเวย์ของอุโมงค์เอง ทำให้การดำเนินการทำซ้ำได้ ตัวอย่างเช่น curl -s -o /dev/null -w "%{http_code} %{time_total}\n" https://example.com/ ซึ่งพิมพ์หนึ่งบรรทัดต่อการพยายามหนึ่งครั้ง รักษารูปแบบผลลัพธ์นั้นให้คงที่ตลอดการรัน รหัสสถานะและระยะเวลาที่เก็บด้วยวิธีเดียวกันสองครั้งคือสิ่งที่ทำให้สองการรันเทียบกันได้
ต้านทานไซต์ที่คุณพึ่งพาจริง ๆ หน้าธนาคารหรือเว็บเมลลากตัวติดตาม การเปลี่ยนเส้นทาง และเนื้อหาส่วนตัวเข้าสู่การวัด และพิมพ์ตัวระบุเซสชันลงในทุกสิ่งที่คุณวางในตั๋วภายหลัง ใช้ปลายทางเดิมตลอดการสอบสวน และบันทึกไว้ข้างช่วงเวลา
สุ่มข้อเท็จจริงทั้งสี่
สถานะปีร์ เส้นทาง ตัวแปลงชื่อ และคำขอใหม่หนึ่งครั้งคือการสังเกตสี่อย่าง และแต่ละอย่างมีแหล่งที่มาถูก สําหรับ WireGuard นั้น wg show wg0 latest-handshakes ให้การประทับเวลาของปีร์ และ ip route get 1.1.1.1 แสดงว่าส่วนเคอร์เนลจะใช้อินเทอร์เฟซใด สําหรับ OpenVPN สถานะเดียวกันอยู่ในไฟล์สถานะที่เขียนโดย --status /run/openvpn/status 10 หรืออยู่หลัง state บนอินเทอร์เฟซการจัดการ ไคลเอนต์ Windows ยังคงอยู่ใน PowerShell ด้วย Get-NetAdapter และ Resolve-DnsName
วนซ้ำทั้งสี่ในเทอร์มินัลเดียวเพื่อให้ทุกบรรทัดมีการประทับเวลา: for i in $(seq 1 20); do date -Is; wg show wg0 latest-handshakes; ip route get 1.1.1.1; sleep 30; done ลูปนั้นครอบคลุมสามในหกฟิลด์ของบันทึก เวอร์ชันไคลเอนต์ใส่ครั้งเดียวที่ด้านบน และการประทับเวลาของเหตุการณ์จะถูกเพิ่มเมื่อเหตุการณ์เกิดขึ้น
ตัวแปลงชื่อคือข้อเท็จจริงที่ผู้คนข้ามไป และ dig +short ซ่อนมันไว้ เพราะรูปแบบนั้นพิมพ์เฉพาะคำตอบ ถามเซิร์ฟเวอร์อย่างชัดเจนด้วย dig example.com | grep SERVER: หรือใช้ nslookup example.com ในที่ที่ไม่ได้ติดตั้ง dig ซึ่งพิมพ์ที่อยู่ของเซิร์ฟเวอร์ที่คำถามไปถึง แฮนด์เชกเก่าบนอุโมงค์ที่ไม่มีการใช้งานก็ไม่ใช่ความผิดพลาดโดยอัตโนมัติเช่นกัน เพราะ WireGuard เปลี่ยนคีย์เฉพาะเมื่อมีทราฟฟิกที่ต้องปกป้อง
กระตุ้นเหตุการณ์ ไม่ใช่การรั่วไหล
ใช้เวลาห้านาทีที่เงียบสงบเป็นเส้นฐานก่อนเหตุการณ์ที่คุณสนใจ ไม่ว่าจะเป็นการปิดฝา การเดินไปยังจุดเชื่อมต่ออื่น หรือการสลับไปใช้ฮอตสปอตของโทรศัพท์ บันทึกเวลาที่คุณก่อเหตุนั้น เพื่อให้ตัวอย่างทั้งสองด้านเรียงกันได้
หากไม่มีการประทับเวลานั้น บันทึกจะแสดงช่องว่างและไม่มีใครบอกได้ว่าไคลเอนต์หรือเครือข่ายเป็นผู้ปิดมัน สองการรันที่มีเหตุการณ์อยู่ต่างตำแหน่งมีค่ามากกว่าสิบการรันที่ไม่มี ใช้ตัวควบคุมการตัดการเชื่อมต่อและการเชื่อมต่อใหม่ของไคลเอนต์เอง อย่าปิดสวิตช์ฆ่าและอย่าดันทราฟฟิกออกนอกอุโมงค์เพื่อดูว่าจะเกิดอะไรขึ้น เพราะบนแล็ปท็อปที่ถูกจัดการนั้นเป็นการละเมิดนโยบาย และบนเครื่องของคุณเองมันสร้างการเปิดเผยที่คุณกำลังทดสอบอยู่พอดี
เก็บบันทึกให้เล็กพอที่จะทำจนจบ
หกฟิลด์ต่อหนึ่งตัวอย่าง: เวลา เวอร์ชันไคลเอนต์ ปลายทาง เครือข่ายที่เชื่อมต่อ เหตุการณ์ ผลลัพธ์ ละเว้นที่อยู่เว็บ เพย์โหลด โทเคน และสิ่งใดก็ตามที่พกตัวระบุเซสชัน เพราะบันทึกคือหลักฐานเกี่ยวกับอุโมงค์และไม่มีอะไรอื่น เก็บไว้ข้างลูปเพื่อให้คนถัดไปรันซ้ำได้โดยไม่ต้องถามว่าคอลัมน์หมายถึงอะไร
หลังการเปลี่ยนแปลง ให้ทดสอบซ้ำด้วยโพรบเดิมและช่วงเวลาเดิม หากคุณสลับปลายทางและเวอร์ชันไคลเอนต์พร้อมกัน ผลลัพธ์ก็ไม่เป็นของทั้งสองอย่าง การรันที่สะอาดสิบนาทีคือหลักฐานสำหรับเงื่อนไขและปลายทางนั้น ไม่ใช่คำสัญญาเกี่ยวกับเครือข่ายโรงแรมในเดือนหน้า เก็บสคริปต์และเทมเพลตบันทึกไว้ในที่ที่คุณจะหาเจอ ข้อจำกัดที่ มีเอกสารกำกับ ของ WireGuard นั้นคุ้มค่าที่จะอ่านก่อนจะโทษโปรโตคอล