ฉันใช้งาน wireguard enpoint เป็นคอนเทนเนอร์นักเทียบท่าบนเซิร์ฟเวอร์ของฉันโดยมีไคลเอ็นต์ Roadwarrior เชื่อมต่อผ่าน LTE:
ที่อยู่เซิร์ฟเวอร์จริงคือ IP สาธารณะแบบคงที่ การกำหนดค่าไคลเอ็นต์เป็นดังนี้ (ไม่รวมส่วนที่ไม่เกี่ยวข้อง):
[อินเตอร์เฟซ]
ที่อยู่ = 10.254.99.2
[เพียร์]
Ips ที่อนุญาต = 10.254.99.1/32
จุดสิ้นสุด = 192.168.5.55
สิ่งนี้ใช้ได้ดีถ้าฉัน ping ลูกค้าจากภายในคอนเทนเนอร์นักเทียบท่า แต่เนื่องจากฉันต้องการเข้าถึงไคลเอนต์จากโฮสต์นักเทียบท่าด้วย ฉันจึงเพิ่มเส้นทางบนเซิร์ฟเวอร์:
เส้นทาง ip เพิ่ม 10.254.99.0/24 ผ่าน 172.17.0.2 dev docker0 src 192.168.5.55
ดังนั้นฉันจึงเพิ่ม src
ที่อยู่ในรายการ AllowedIps บนเซิร์ฟเวอร์:
[เพียร์]
AllowedIps = 10.254.99.1/32, 192.168.5.55/32
และด้วยสิ่งนี้หยุดทำงาน ฉันไม่สามารถ ping ลูกค้าได้ ทั้งจากเซิร์ฟเวอร์หรือจากภายในคอนเทนเนอร์อีกต่อไป หากฉันอนุญาต Ips ทั้งหมดบนไคลเอ็นต์แทน ทุกอย่างจะทำงานตามที่คาดไว้:
[เพียร์]
AllowedIps = 0.0.0.0/0
แต่ฉันไม่ต้องการกำหนดเส้นทางการจราจรทั้งหมดผ่านอุโมงค์ วิธีที่เหมาะสมในการทำเช่นนี้คืออะไร?