通过 VPN 隧道的选择性路由

BBK*_*BBK 5 linux vpn routing ipsec tunnel

问题:在建立IPsec VPN 隧道后,所有流量都被路由到远程端点,而我需要路由发往该内部网络的数据包,并且仍然能够在我的本地机器上访问互联网。目前,当我启用相应的 VPN 连接时 - 所有连接都会中断,这意味着无法通过我的 LAN 到达这台机器或通过它访问互联网(远程端有限制以进行进一步的 WAN 转发)。因此,在这种情况下,只有 VPN 有效。

拓扑:http : //i.imgur.com/9HEru.png

我在基于Debian的发行版上使用OpenSwan,也在NAT后面(启用遍历)。

以下是ipsec.conf的详细信息:

2.0版

配置设置
plutodebug="none"
plutoopts="--perpeerlog"
plutoopts="--interface=wlan2"
dumpdir=/var/run/pluto/
nat_traversal=yes
virtual_private=%v4:10.196.0.0/17,%v4:! 192.168.1.0/24
oe=off
protostack=netkey

康恩ž
authby =秘密
密钥有效期= 1H
PFS =是
自动=添加
phase2alg = AES128-SHA1; modp1024
keyingtries = 3
ikelifetime = 8H
类型=隧道
左= 192.168.1.76
leftsubnet = 0.0.0.0 / 0
leftprotoport = 0/0
右= YYYY
rightsubnet=0.0.0.0/0
rightprotoport=0/0

以下是ifconfig 的部分细节:

wlan0 Link encap:Ethernet HWaddr 00:13:02:46:42:8d
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX 数据包:0 错误:0 丢弃:0 溢出:0 帧:0
TX 数据包:0 错误:0 丢弃:0 溢出:0 载波:0
冲突:0 txqueuelen:1000
RX 字节:0 (0.0 B) TX 字节:0 (0.0 B)

wlan2 Link encap:Ethernet HWaddr 94:0c:6d:8d:28:0f
inet addr:192.168.1.76 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 地址:fe80::960c:6d:960c:6d4d Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packet:125221 errors:0 丢弃:0 溢出:0 帧:0
TX 数据包:89332 错误:0 丢弃:0 溢出:0 载波:0
冲突:0 txqueuelen:1000
RX字节:151498702 (151.4 MB) TX 字节:18233148 (18.2 MB)

以下是route -n的详细信息:

内核 IP 路由表
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 wlan2
169.254.0.0 0.0.0.0 255.255.0.06 .0.0.0 ..0.0.0
255.255.0.06 10.05 2.05 0.05 10.05 0.05 2 2 0 0 WLAN2

正如你所看到的-本机连接在无线网络WLAN2,这是参与VPN设置界面。那么,为了解决启用隧道后无法访问互联网的问题,您有什么建议?谢谢你。

小智 4

这就是问题:

右子网=0.0.0.0/0

通过这一行,您告诉 openswan 隧道的端点是“一切”,因此所有数据包都通过 VPN 路由。

将 0.0.0.0/0 替换为您想要到达网关后面的网络。客户端和服务器上的配置必须匹配,因此请编辑两者。