有没有办法将自定义路由规则添加到 Android 本地 VPN 或使用库?

Is there a way to add custom routing rules to an Android VPN natively or with a library?

我正在尝试使用 VPN 中的自定义 IP 路由来路由我的流量。我在 windows VPN 客户端上已经遇到了类似的问题,我能够在启动客户端时编写一个 运行s 的批处理文件,它只是 运行s 路由添加命令。

问题是 Android 似乎无法做到这一点。我知道有 adb 方法,但它在尝试自定义添加路由时给了我权限错误。经过进一步研究,似乎为了更改 IP 表的路由规则,我必须对我的设备进行 root,这在我的情况下不是一个选项。

我查看了 Android 开发者页面上的 VPN 服务,但我没有看到任何开始向 VPN 添加自定义路由的方法。我还看到没有现成可用的库提供额外路由流量的方法。也许我错过了一块拼图。

我仍在学习 Android 开发,这是一个我想就此发表意见的问题,因为如果不添加,我将无法通过默认 VPN 运行 我的应用程序我的自定义规则,目前我无法更改周围的 VPN 子网来解决此问题。

我遇到了类似的问题。

AndroidSDK有addRouteAPI通过VPN添加路由策略

但是public文档中没有删除路由API。

Here是addRoute文件:

添加到 VPN 接口的网络路由。支持 IPv4 和 IPv6 路由。添加路由隐式允许来自该地址系列(即 IPv4 或 IPv6)的流量通过 VPN 路由。