【发布时间】:2021-04-01 11:39:50
【问题描述】:
Android VPNService 允许您创建 tun 设备,我们可以访问路由到 tun 的数据包到我们的程序。
我正在使用 C/NDK 访问这些数据包。
假设我编写了专有协议来从远程 vpn 客户端获取数据包并发布到 tun,我是否可以期望这些数据包在 Android 中被路由并可能在接口上被 nat 并访问 Internet?
例如,我在 Android 中(通过 vpn 服务)为 10.0.0.0/24 创建了一条路由到 tun。 我发布源 IP 为 10.0.0.5 的数据包以调整它们是否会穿过内核并通过 Internet 到达目的地。 (或者这些数据包只是简单地返回接口,因为 tun 是默认网关!) 如果他们在正确 nat 后访问 Internet,我可以期待回复 (dst ip 10.0.0.5) 到达 tun 接口吗?
还是我应该检查一下?
欢迎任何想法/建议。
提前致谢。
【问题讨论】: