Closed wnpllrzodiac closed 4 months ago
你需要在android这边添加路由规则,将目标流量导向openvpn的虚拟网络接口(最终流量将前往openvpn服务器,即ss-tproxy所在主机)
你可能还需要设置android上的dns,将dns指向openvpn服务端的ip(192.168.8.1),避免dns污染等问题。
完成该步骤后,应该不需要做其他额外工作/配置,因为其原理与 常规局域网内使用ss-tproxy作为代理网关(局域网主机将网关和dns指向ss-tproxy主机) 是一样的。
我现在连接上 vpn server以后,可以访问192.168.1.x 网段的机器,以及百度。只是访问某些网站有问题,不能做到像 linux机器上访问自由 你的意思,在 android设备上访问网页的流量并没有进过 openvpn从serve访问,而是从手机端直接出外网?感觉和 vpn 设计思路不符合啊
你这个现象应该是dns没设置好,被污染了,把dns指向ss-tproxy主机(vpn网卡的的那个ip,192.168.8.1)应该就OK了
vpn就是将多个位于不同网络的主机连起来,就像是真实的局域网那样连接起来,没什么特别之处。
说白了,一个主机连上vpn后,不过就是在这台主机上多了一个 网络接口(网卡)。该主机传出的流量要发往谁(哪个网络接口),都是通过路由规则决定的。
dns也是一样的,主机配置的dns是什么ip,就会根据路由规则,将其发往正确的目的地。在我们这里,ss-tproxy主机就是正确的目的地,因为它有防污染的dns服务(chinadns-ng)。
你要理解一个正常的网络访问是什么流程,才知道如何实现你的目的:
你这个现象应该是dns没设置好,被污染了,把dns指向ss-tproxy主机(vpn网卡的的那个ip,192.168.8.1)应该就OK了
你的意思手机连上VPN以后, 用dig google.com 返回的是错误的ip,所以即使通过192.16.8.x 的网段出口访问网络也不行了?
4g 下,未连 vpn: ping google.com 46.82.174.69
4g+vpn: ping google.com 46.82.174.69
这个IP看起来是不对的,是个德国ip
是的,你这个dns没有走ss-tproxy的chinadns-ng,所以解析拿到的ip不对
设置了下参数,dns似乎对了。手机上不好调试。感觉我要用台linux当客户端测试。 不知道别人有没有这样用的。
有类似用法的,手机上确实不好调试,如果能运行 Termux 的话,可能调试起来好一些。
可以了。iptables 需要配置下
for example: I use OpenVPN app to connect my android device with a linux server at home.
android -> 4g/5g network ->(openvpn protocol) -> linux server(installed ss-tproxy) -> internet
run command
curl some.blocked.com
on linux server will be good.My question is: Can android device access google.com via openvpn(I meant I want to use ss-tproxy as a proxy to access some network resources)
linux server ip addr is 192.168.1.5 (router is 192.168.1.1) and VPN gateway is 192.168.8.1 so my android device VPN ip addr is 192.168.8.5 (for example)