代码之家  ›  专栏  ›  技术社区  ›  Andrei

有没有办法通过本机或库向Android VPN添加自定义路由规则?

  •  0
  • Andrei  · 技术社区  · 7 年前

    我正在尝试使用VPN内的自定义IP路由来路由我的流量。我已经遇到了一个类似的windows VPN客户端问题,我可以编写一个在启动客户端时运行的批处理文件,它只运行route add命令。

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

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

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

    1 回复  |  直到 7 年前
        1
  •  1
  •   Mukyuu    6 年前

    我也有类似的问题。

    Android SDK具有 addRoute 通过VPN添加路由策略的API。

    但公共文档中没有删除路由API。

    Here 是addRoute文档:

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