เครือข่ายของฉัน:
|localhost| tun1--> VPN <--tun0 |work station| wlan0--> |router| --> (10.128.0.0/16)
localhost: Arch Linux x86-64
สถานีงาน: CentOS 6 x86-64
ฉันต้องการเชื่อมต่อโดยตรงจาก localhost กับเครือข่าย 10.128.0.0/16 โดยไม่มีการส่งต่อพอร์ต SSH และเช่นนั้น สถานีงานมีการเข้าถึงเครือข่ายนี้ นอกจากนี้สถานีงานมี IP แบบคงที่ 10.255.255.252 ใน VPN
tracepath จากสถานีงานไปยังโฮสต์ใน 10.128.0.0/16:
$ tracepath 10.128.29.59
1?: [LOCALHOST] pmtu 1500
1: 192.168.225.1 (192.168.225.1) 15.293ms
1: 192.168.225.1 (192.168.225.1) 2.119ms
2: 192.168.225.1 (192.168.225.1) 2.085ms pmtu 1409
2: no reply
3: 10.128.29.59 (10.128.29.59) 15.655ms reached
Resume: pmtu 1409 hops 3 back 3
192.168.255.1 เป็นเกตเวย์เริ่มต้นสำหรับสถานีงาน:
$ ip route | grep default
default via 192.168.225.1 dev wlan0
ฉันพยายามเพิ่มเส้นทางบน localhost ของฉัน แต่ไม่สำเร็จ:
# ip route add 10.128.0.0/16 via 10.255.255.252
RTNETLINK answers: Network is unreachable
ฉันคิดว่ามันไร้เดียงสาสวยที่จะเพิ่มเส้นทางไปยังเครือข่ายระยะไกลด้วยวิธีนี้ ฉันจะทำอย่างถูกต้องได้อย่างไร บางทีฉันควรแบ่งปันตารางเส้นทางใน 10.255.255.252 อย่างใด?
แก้ไข 1:
ฉันลองใช้ข้อเสนอแนะของ Marius
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
แต่มันไม่เปลี่ยนแปลงอะไรเลย iptables ตอนนี้ตาราง NAT แสดงสิ่งนี้บนเวิร์กสเตชัน:
# iptables -t nat -L
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
แก้ไข 2:
ฉันสามารถเชื่อมต่อกับพอร์ตในเครือข่าย 10.128.0.0/16 โดยใช้พอร์ต SSH
ssh -L 5432:10.128.29.59:5432 user@10.255.255.252
หลังจากการส่งต่อนี้ฉันสามารถเชื่อมต่อกับ 10.128.29.59:5432 ผ่าน localhost: 5432 ดังนั้นสิ่งที่ฉันต้องการคือตัวเลือกในการเชื่อมต่อโดยตรงกับ 10.128.29.59:5432
แก้ไข 3:
ฉันใช้ openvpn เพื่อเชื่อมต่อกับ VPN
เส้นทาง ip บน localhost:
$ ip route
default via 192.168.1.1 dev wlp2s0 src 192.168.1.253 metric 302
10.0.0.0/16 via 192.168.193.29 dev tun1
10.255.0.0/16 via 192.168.193.29 dev tun1
192.168.1.0/24 dev wlp2s0 proto kernel scope link src 192.168.1.253 metric 302
192.168.193.0/24 via 192.168.193.29 dev tun1
192.168.193.29 dev tun1 proto kernel scope link src 192.168.193.30
193.26.135.101 via 192.168.193.29 dev tun1
213.24.160.78 via 192.168.193.29 dev tun1
เส้นทาง ip บนเวิร์กสเตชัน:
$ ip route
193.26.135.101 via 10.255.255.251 dev tun0
213.24.160.78 via 10.255.255.251 dev tun0
10.255.255.251 dev tun0 proto kernel scope link src 10.255.255.252
192.168.193.0/24 via 10.255.255.251 dev tun0
192.168.225.0/24 dev wlan0 proto kernel scope link src 192.168.225.165
10.0.0.0/16 via 10.255.255.251 dev tun0
10.255.0.0/16 via 10.255.255.251 dev tun0
default via 192.168.225.1 dev wlan0
nmap เป็นหนึ่งในพอร์ตที่สนใจใน 10.128.0.0/16 จาก localhost:
$ nmap -p5432 10.128.29.59/32
Starting Nmap 7.31 ( https://nmap.org ) at 2016-11-02 11:40 MSK
Note: Host seems down. If it is really up, but blocking our ping probes, try -Pn
Nmap done: 1 IP address (0 hosts up) scanned in 3.11 seconds
จากเวิร์กสเตชัน:
$ nmap -p5432 10.128.29.59/32
Starting Nmap 5.51 ( http://nmap.org ) at 2016-11-02 11:42 MSK
Nmap scan report for 10.128.29.59
Host is up (0.034s latency).
PORT STATE SERVICE
5432/tcp open postgresql
Nmap done: 1 IP address (1 host up) scanned in 0.16 seconds
192.168.193.29
- เพียงเพียร์โดยตรงของคุณในการเชื่อมต่อ OpenVPN นั่นคืออะไร? เซิร์ฟเวอร์ VPN ของคุณ?
192.168.193.29
เป็นเซิร์ฟเวอร์ VPN ที่ฉันกำลังเชื่อมต่อและมันไม่รู้10.128.0.0/16
เครือข่ายที่ฉันต้องการ มีเพียงเวิร์กสเตชันเท่านั้นที่10.255.255.252
รู้เรื่องนี้ ฉันคิดว่าควรมีวิธีจัดการเส้นทางโดยใช้10.255.255.252
ไหม?
p2p
/ ไปnet30
subnet
ip route
เมื่อเชื่อมต่อกับ VPN นอกจากนี้คุณใช้ซอฟต์แวร์ VPN อะไร