VPN 客户端如何路由流量?

VPN 客户端如何路由流量?

最有可能是新手的问题。

我的 Linux 机器位于网络 10.10.10.0/24 中,我可以通过 VPN 访问 192.168.1.0/24。VPN 客户端在同一个机器上启动。但是,当我执行时ip route show,我没有看到任何新路由。

路由是如何实现的?

答案1

与大多数其他 VPN 软件不同,Linux 上的 IPsec 客户端使用转换系统而不是隧道接口。您的 VPN 数据包仍像以前一样转到您的默认网关,但 strongSwan 会将一组转换策略加载到内核中 - 导致它在实际发送之前使用 ESP“神奇地”加密整个 IP 数据包(并将外部 IP 地址更改为您的 VPN 网关的 IP 地址)。

查看ip xfrm policy(strongSwan 提供的模板)和ip xfrm state(数据包实际使用的规则)的输出。

该系统最初用于主机到主机和站点到站点加密,当涉及基于客户端的 VPN 和“虚拟” IP 地址时,它肯定会变得有点奇怪。(实际上有一个新添加的隧道接口模式“xfrmi”,这将使基于客户端的 VPN 配置更加熟悉 - 但需要额外的 strongSwan 设置才能激活。)


其他 VPN 客户端(例如 OpenVPN、WireGuard 或 OpenConnect)会创建隧道接口,并且只需在“ip route”下添加一个条目。

相关内容