ฉันมีเซิร์ฟเวอร์ ส
, ลูกค้า ก
และลูกค้า ข
. ทั้งหมดเป็นกล่อง Ubuntu และทั้งหมดอยู่ในเมืองต่างๆ (Seattle, Albuquerque และ Boston)
ส
มีการติดตั้ง wireguard และทั้งสองอย่าง ก
และ ข
สร้างการเชื่อมต่อกับ wireguard และสิ้นสุดใน VPN เดียวกัน ก
และ ข
เจอกันและสามารถ ping กันได้
ฉันสามารถรับปริมาณการใช้อินเทอร์เน็ตทั้งหมดจาก ก
ถูกส่งผ่าน ส
. ดังนั้น ก
IP ของจะแสดงเป็น Seattle
ตอนนี้ฉันต้องการกำหนดเส้นทางการรับส่งข้อมูลผ่าน ข
- ดังนั้น ก
IP ของแสดงเป็น Boston - แต่ฉันหาวิธีกำหนดค่านี้อย่างถูกต้องไม่ได้
iptables ของฉันเปิดอยู่ ส
ได้รับการกำหนดค่าเป็น:
# iptables -S
-P อินพุตยอมรับ
-P ยอมรับไปข้างหน้า
-P เอาต์พุตยอมรับ
-A INPUT -i ext-card -p udp -m udp --dport 51820 -j ยอมรับ
-A อินพุต -i wg0 -j ยอมรับ
-A FORWARD -i wg0 -o ext-card -j ยอมรับ
-A FORWARD -i ext-card -o wg0 -j ยอมรับ
-A FORWARD -i ext-card -o wg0 -m state --state ที่เกี่ยวข้อง,ESTABLISHED -j ยอมรับ
-A FORWARD -i wg0 -o ext-card -j ยอมรับ
-A ไปข้างหน้า -i wg0 -j ยอมรับ
# iptables -S -t แนท
-P PREROUTING ยอมรับ
-P อินพุตยอมรับ
-P เอาต์พุตยอมรับ
-P หลังยอมรับ
-A POSTROUTING -s <LAN-IP> -o ext-card -j MASQUERADE
-A POSTROUTING -o การ์ดภายนอก -j MASQUERADE
ถ้าฉันตั้งค่าตาราง ip เดียวกันบน ข
และบน ก
เพิ่มเส้นทาง เพิ่มเส้นทางเริ่มต้น B-private-ip
- มันใช้งานไม่ได้
ฉันต้องการข้อมูลบางอย่างเกี่ยวกับ:
- จะตรวจสอบได้อย่างไรว่าตารางเส้นทางและ ip ของฉันทำงานถูกต้องหรือไม่
- การกำหนดค่าควรมีลักษณะอย่างไร
ก
, ข
และ ส
เพื่อให้บรรลุสิ่งที่ฉันต้องการ?