ฉันได้ตั้งค่าการส่งต่อพอร์ตที่ผู้ให้บริการ VPN ของฉันแล้ว เช่น:
VPN_EXT_IP:60000 --> VPN_INT_CLIENT_IP:60000
ฉันมี docker-compose ซึ่งมีลักษณะดังนี้:
รุ่น: "3.5"
เครือข่าย:
ต่อ:
ชื่อ: ต่อ
บริการ:
ลูกค้า openvpn:
รูปภาพ: ghcr.io/wfg/openvpn-client
container_name: openvpn-ไคลเอนต์
cap_add:
- NET_ADMIN
อุปกรณ์:
- /dev/net/tun
ปริมาณ:
...
เครือข่าย:
- ต่อ
รูทอร์เรนต์:
ภาพ: crazymax/rtorrent-rutorrent:3.10-0.9.8-0.13.8
container_name: rutorrent
รีสตาร์ท: "เว้นแต่หยุด"
stop_grace_period: 10ม
สิ่งแวดล้อม:
- TZ=ยุโรป/เบอร์ลิน
- PUID = 1,000
- PGID=1,000
- RT_INC_PORT=60000
- RT_DHT_PORT=60001
ขึ้นอยู่กับ:
- ลูกค้า openvpn
network_mode: "บริการ: openvpn-client"
ปริมาณ:
...
ดูเหมือนว่าพอร์ตขาเข้า 60000 จะถูกปิด
ฉันสงสัยว่าเราเตอร์ OpenWrt ของฉัน (คอนเทนเนอร์นักเทียบท่าทำงานหลัง NAT) และติดตั้ง kmod-nf-nathelper-extra แต่ก็ไม่ได้ช่วยอะไร
การเชื่อมต่อ VPN นั้นใช้งานได้ แต่การเชื่อมต่อขาเข้า (ซึ่งไม่ได้ถูกสร้างไว้) ใช้งานไม่ได้
ฉันหลงทางเล็กน้อยและความรู้ด้านเครือข่ายของฉันมีขีดจำกัด
ฉันคาดว่าทุกอย่างจะใช้งานได้เนื่องจากไคลเอนต์ VPN สร้างการเชื่อมต่อกับเซิร์ฟเวอร์ VPN บน OPENWRT_PUB_IP:NAT_PORT (NAT ดังนั้น NAT_PORT จึงเป็นแบบสุ่ม);
Openwrt ติดตามการเชื่อมต่อกับ VPN_SERVER:VPN_SERVER_PORT และทุกอย่างผ่านการเชื่อมต่อที่ติดตามนี้ได้รับอนุญาตให้ผ่านไฟร์วอลล์
แต่ดูเหมือนว่าจะใช้ได้กับการเชื่อมต่อที่สร้างจาก VPN_CLIENT (ในอุโมงค์) เท่านั้น ไม่ใช่ในทางกลับกัน