
宿主机开了 vpn ,可以访问 google
测试类
import java.io.IOException; import java.io.InputStream; import java.net.URL; import java.net.URLConnection; public class Test { public static void main(String[] args) throws IOException { URL url = new URL("https://www.google.com"); URLConnection cOnnection= url.openConnection(); connection.connect(); InputStream inputStream = connection.getInputStream(); byte[] bytes = new byte[1024]; while (inputStream.read(bytes) >= 0) { System.out.println(new String(bytes)); } } } 编译后执行
java Test 结果是能正常访问到 google ,但是在 shell 中 ping google 是没法通的
明明查资料,要给程序设置代理才能访问 google ,也就是下面这样才能访问到
java -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=7890 -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=7890 Test java 程序是默认就会走本机的代理吗,不需要额外设置?
1 AoEiuV020CN Dec 23, 2021 没有复现,你的 vpn 如果是数据链路层的 vpn 的话是不需要配置代理的, |
2 Kasumi20 Dec 23, 2021 VPN 代理 ICMP 流量吗? |
3 wangyu17455 Dec 23, 2021 java 不默认走本地代理,vpn 和 http/socks 代理不能一概而论,你宿主机的 vpn 主动接管了流量所以你访问 google 是通的。 |
4 zhongpingjing OP @Kasumi20 看了只代理了 http 跟 sock |
5 zhongpingjing OP @wangyu17455 en ,是 http/sock 代理 |
6 C02TobNClov1Dz56 Dec 24, 2021 就这么说吧, 和很多 steam 游戏一样, 默认不走 sock 和 http 代理. 如果你的 vpn 有虚拟网卡, 那么就是全局代理了. 可以用 SSTap-beta-setup-1.0.9.7(就用这个版本, 更新的版本就别用了)  sstap 规则 https://cleanery.lanzoup.com/i8Qznxxaxrg 密码:77ge |
7 zhongpingjing OP @chengyiqun 感谢回复,不过我不是要玩游戏哈 |