通过 VPN 隧道进行选择性路由

通过 VPN 隧道进行选择性路由

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

拓扑:https://i.stack.imgur.com/6cTDr.png

我在用着开放的SwanDebian-基于发行版并且也落后NAT(已启用遍历)。

以下是ipsec配置文件

版本 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

conn z
authby = secret
keylife = 1h
pfs = yes
auto = add
phase2alg = aes128-sha1; modp1024
keyingtries = 3
ikelifetime = 8h
type = tunnel
left = 192.168.1.76
leftsubnet = 0.0.0.0/0
leftprotoport = 0/0
right = yyyy
rightsubnet = 0.0.0.0/0
rightprotoport = 0/0

以下是是否配置

wlan0 链路封装:以太网 HWaddr 00:13:02:46:42:8d
上行广播多播 MTU:1500 度量: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 链路封装:以太网 HWaddr 94:0c:6d:8d:28:0f
inet addr:192.168.1.76 Bcast:192.168.1.255 掩码:255.255.255.0
inet6 addr:fe80::960c:6dff:fe8d:280f/64 范围:链路
UP 广播运行多播 MTU:1500 度量:1
RX 数据包:125221 错误:0 丢弃:0 超限:0 帧:0
TX 数据包:89332 错误:0 丢弃:0 超限:0 载波:0
冲突:0 txqueuelen:1000
RX 字节:151498702(151.4 MB) TX 字节:18233148(18.2 MB)

以下是路线-n

内核 IP 路由表
目标网关 Genmask 标志 度量标准 引用 使用 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.0 U 1000 0 0 wlan2 192.168.1.0 0.0.0.0
255.255.255.0 U 2 0 0 wlan2

正如你所看到的 - 机器已连接到无线上网无线网络2这是参与 VPN 设置的接口。那么,您建议怎么做才能解决启用隧道后无法访问互联网的问题?谢谢。

答案1

这就是问题:

右子网=0.0.0.0/0

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

将 0.0.0.0/0 替换为您想要通过网关访问的网络。客户端和服务器上的配置必须匹配,因此请同时编辑两者。

相关内容