为出站连接绑定特定接口/IP
这个问题已经被提及过几次,但我认为我应该用我的用例来更清楚地阐述,并请求对可行性的评论。用例: Win10 系统具有快速(但计量)的有线连接(LAN)和速度较慢但基本上无限的无线网络(WF),两者都位于 NAT 后面。没有端口转发/UPnP,但远程节点具有此功能,因此两者都可以直接连接。接口和网关(路由)指标是如此,默认情况下一切都发往 LAN,但我希望 ST 专门使用 WF 以节省流量。**问题 1:**将监听 IP 设置为 $WF_IP$ 确实有效,但仅适用于监听连接……全局发现/出站连接仍然通过 LAN 传输(由于操作系统路由而导致),因此所有随后的流量也如此。 (此外,还有一个问题,即发现服务器不再自动添加源 IP,但这符合 v3 协议规范) **问题 2:**即使设置出站 IP 也是可能的,但 $WF_IP$ 经常变化 - 硬编码它是无用的 所需功能: 能够为所有互联网流量选择接口和(可选)特定 IP 进行绑定(全局发现/中继/直接连接)。例如,类似 qBitTorrent 中的内容: 注意,IP 绑定很有用,因为单个接口可以具有多个 IP,因为它们是别名(在我的情况下,主 IP 是 10.1.1.10,并且存在 IP 别名 10.1.1.11,其中 'SkipAsSource=true',因此特别绑定到它的应用程序通过 VPN 路由,但其他流量只使用 10.1.1.10)。 如果没有选择这两个选项,ST 应遵循当前的默认操作系统路由。如果仅指定了接口,则应遵循该接口的系统路由行为(如果不清楚或困难,只需选择单个 IP,就像 libtorrent 那样)。在接口/IP 无法使用时选择回退策略是必要的。 除了我的用例之外,还有其他方法可以使此功能有用。例如,可以防止在间歇性连接(无线网络或蜂窝调制解调器/数据线)上反复切换,限制共享到家庭 IP,或将 ST 流量路由到 VPN 接口。
内容来源: syncthing/syncthing