ฉันเพิ่งติดตั้ง OpenVPN และทำงานได้ตามที่คาดไว้ อย่างไรก็ตามตารางเส้นทางของลูกค้าทำให้ฉันสับสนไม่สิ้นสุด นี่คือตารางเส้นทาง:
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.8.0.5 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
10.8.0.1 10.8.0.5 255.255.255.255 UGH 0 0 0 tun0
54.202.18.143 10.0.2.2 255.255.255.255 UGH 0 0 0 eth0
10.0.2.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0
0.0.0.0 10.8.0.5 128.0.0.0 UG 0 0 0 tun0
128.0.0.0 10.8.0.5 128.0.0.0 UG 0 0 0 tun0
0.0.0.0 10.0.2.2 0.0.0.0 UG 0 0 0 eth0
ดังนั้นให้ตัดมันทีละบรรทัด
- แพ็กเก็ตใด ๆ ที่ถูกกำหนดให้
10.8.0.5
ไม่มีเกตเวย์และจะใช้tun0
- แพ็กเก็ตใด ๆ ที่ถูกกำหนด
10.8.0.1
จะใช้10.8.0.5
เป็นเกตเวย์ผ่านtun0
- แพ็กเก็ตใด ๆ ที่ถูกกำหนด
54.202.18.143
จะใช้10.0.2.2
เป็นเกตเวย์ผ่านeth0
- แพ็กเก็ตปลายทางที่
10.0.2.0/24
ไม่มีเกตเวย์และจะใช้eth0
- ให้ละเว้นส่วน 169.254.0.0
- แพ็คเก็ตอื่น ๆ ทั้งหมด (ลิขิต
0.0.0.0
) จะให้เราเป็นค่าเริ่มต้นเกตเวย์ผ่าน10.8.0.5
ดังนั้นนี่คือเกตเวย์เริ่มต้นใช่ไหมtun0
- แพ็กเก็ตที่กำหนดไว้
128.0.0.0/7
จะใช้10.8.0.5
เป็นเกตเวย์เริ่มต้นผ่านtun0
- แพ็กเก็ตอื่นทั้งหมด (
0.0.0.0
) จะใช้10.0.2.2
เป็นเกตเวย์เริ่มต้นผ่านeth0
คำถาม:
- ฉันมีเกตเวย์เริ่มต้น 2 แห่งหรือไม่หากเราพิจารณาจุดที่ 6 และ 8 (อาจมีเกตเวย์เริ่มต้นเพียง 1 ตัวเท่านั้นดังนั้นฉันรู้ว่าฉันผิด แต่ไม่สามารถปรับได้) ( อาจตอบให้ดูด้านล่าง )
- เมื่อพิจารณาถึงจุดที่ 1 และ 2 สิ่งที่เกิดขึ้น
10.8.0.1
ไม่ได้ใช้เกตเวย์ผ่าน tun0 จริงๆ ถูกต้องหรือไม่ - พิจารณาจุดที่ 3 และ 4 อะไรจะให้
54.202.18.143
ไม่ได้จริงๆโดยใช้ประตูใด ๆeth0
ผ่านทาง ถูกต้องหรือไม่
UPDATE ...
หลังจากอ่านบทความนี้ฉันพบข้อมูลเพิ่มเติม บรรทัดด้านล่างทำให้ฉันรู้สึกอย่างมากตอนนี้:
0.0.0.0 10.8.0.5 128.0.0.0 UG 0 0 0 tun0
128.0.0.0 10.8.0.5 128.0.0.0 UG 0 0 0 tun0
ดังนั้น 1 เส้นจะกำหนดและครั้งที่สองหนึ่งคือการกำหนด0.0.0.0/128.0.0.0
128.0.0.0/128.0.0.0
เป็นหลัก:
0.0.0.0/128.0.0.0 = 0.0.0.0/1 = 0.0.0.0 TO 127.255.255.255
128.0.0.0/128.0.0.0 = 128.0.0.0/1 = 128.0.0.0 TO 255.255.255.255
ดังนั้นมากกว่า 2 [0.0.0.0 TO 255.255.255.255]
เส้นทางจะครอบคลุมทั้งช่วงที่อยู่ มันเป็นวิธีที่ฉลาดของ OpenVPN tun0
เพื่อเพิ่มเส้นทางเริ่มต้นโดยไม่ต้องเปลี่ยนเส้นทางเริ่มต้นเดิมและเส้นทางเริ่มต้นนี้จะถูกส่งผ่านทาง
ดังนั้นฉันคิดว่าฉันมีคำตอบสำหรับคำถามแรกของฉัน:
ฉันมีเกตเวย์เริ่มต้น 2 แห่งหรือไม่หากเราพิจารณาจุดที่ 6 และ 8
ไม่มีเกตเวย์เริ่มต้นเดียวเท่านั้นและนั่นคือ:
0.0.0.0 10.0.2.2 0.0.0.0 UG 0 0 0 eth0
0.0.0.0
เส้นทางแรกมี Genmask128.0.0.0
ซึ่งอาจไม่ทำให้เป็นเส้นทางเริ่มต้น ฉันต้องบอกว่าฉันไม่มีความคิดแม้แต่น้อยว่าหน้ากากนี้หมายถึงอะไรและมีเส้นทางอะไรสำหรับ: /