我现在正在为我的大学自己的 L2TP/IPSec VPN 网络设置一个 VPN 客户端,使用 openswan、libreswan 和 Strongswan(针对不同的发行版)。
问题是这样的:
远程站点(VPN 服务器)是一个具有多个 IP 地址(例如 123.123.123.100-123.123.123.103)的域名(例如 xxx.com)。
这种情况下,conn部分应该如何设置呢?
我尝试过类似的事情:
conn university
...
left=%defaultroute
right=xxx.com
...
auto=route
这似乎不起作用,因为当 *swan 启动时,它会解析 xxx.com 并通过 DNS 请求返回的 IP(例如 123.123.123.100)设置路由。然后,当我连接到xxx.com时,它可能会再次解析域并获得不同的IP(例如123.123.123.101),并且连接不会通过*swan。
我也尝试过该rightsubnet
选项,但我不知道应该选择什么right
。如果我只使用%any
, *swan 会给出一些错误No route to destination
(类似的东西,不记得了)并拒绝添加 conn。
现在我的解决方法是:
conn university0
right=123.123.123.100
also=university
auto=route
conn university1
right=123.123.123.101
also=university
auto=route
conn university2
right=123.123.123.102
also=university
auto=route
conn university3
right=123.123.123.103
also=university
auto=route
conn university4
right=123.123.123.104
also=university
auto=route
conn university
left=%defaultroute
...
...这有效,但看起来丑陋且不可扩展。
以前我使用racoon的时候,可以setkey
直接用命令修改SPD,这样就可以直接对对应的IP设置策略了。
我认为这种情况很常见,*swan 中会有针对这种情况设计的解决方案。有人可以帮忙吗?