强制程序使用并通过代理

强制程序使用并通过代理

我的学校要求所有互联网访问都必须使用代理。如果你想使用互联网,就不可能不使用代理。这给许多似乎不让你输入代理设置的程序带来了问题。

当我使用代理时,如何使用 Steam?是否可以以某种方式将详细信息输入配置文件,或者强制它从 Internet Explorer 获取设置?

如果没有,是否存在用于创建“虚拟”网络适配器的软件,该适配器将x通过代理传输所有流量(或所有协议流量)?

虽然我在 Windows 7 上遇到了这个特定问题,但欢迎针对所有操作系统的解决方案。

答案1

查看代理程序。结合 SSH 隧道,您应该能够通过任何代理获取大多数程序。

我的学校(以及我所在州的所有其他学校)都设置了相当复杂的网络过滤代理,可以阻止网络上的大多数端口其他代理端。我设法在 Windows 上使用上述程序的组合来解决这个问题。

只需根据需要使用 Putty 创建 SSH 隧道,然后设置 Proxifier 以使用该隧道作为其代理。这应该会通过代理路由所有端口的流量。

答案2

我的tun2socks软件(Linux、Windows)创建一个虚拟网络接口,通过指定的代理服务器转发所有传入的 TCP 连接。它只能使用 SOCKS 代理,默认情况下只能转发 TCP,但如果您可以在udpgwSOCKS 后面的某个地方运行我的转发器,也可以转发 UDP。假设您满足这些要求,您可以按以下方式进行设置:

首先创建虚拟接口并进行配置。在 Linux 上:

openvpn --mktun --dev tun0 --user <your_user>
ifconfig tun0 10.0.0.1/24

或者,在 Windows 上,只需安装 OpenVPN 即可获取 TAP-Win32 虚拟接口,并为其分配 IP 10.0.0.1、网络掩码 255.255.255.0。

然后启动 tun2socks,它执行实际的转发:

badvpn-tun2socks --tundev tun0
  --netif-ipaddr 10.0.0.2 --netif-netmask 255.255.255.0
  --socks-server-addr <socks_server_address>:<socks_port>

这里,10.0.0.2是虚拟接口内虚拟路由器的 IP。它必须与分配给虚拟接口本身的 IP 位于同一子网中,且不同(10.0.0.1/24)。在 Windows 上,请使用以下 IP 代替tun0

--tundev "tap0901:<display_name_of_TAP-Win32_device>:10.0.0.1:10.0.0.0:255.255.255.0"

此时您应该能够 ping 虚拟路由器10.0.0.2(在这种情况下,正在运行的tun2socks程序将做出响应)。要通过代理转发连接,您只需通过虚拟设备路由它们即可。在 Linux 上:

route add default gw 10.0.0.2 metric 0

或者在 Windows 上:

route add 0.0.0.0 mask 0.0.0.0 10.0.0.2 metric 0

这里的关键部分是路由会覆盖任何现有的默认路由。此外,如果您的 SOCKS 服务器不在本地网络上,则必须添加具有更高度量的例外路由,以防止连接被路由回虚拟接口。有关更多信息,请参阅顶部的链接。

答案3

对于 Windows,有一个免费的实用程序,称为卡卡

KKCap,一款免费代理软件,支持 SOCKS5、Shadowsocks 等。Proxifier 或 SSTap 等代理软件的免费替代品。也是 VPN 的轻量级替代品。支持从 Windows XP 到 Windows 10。重定向任何互联网应用程序的连接。

您应该为想要通过代理的程序进行配置。

答案4

最好的办法是在控制面板的 Internet 设置中设置代理信息,如果您的大学使用代理配置脚本,那么您可以在 Web 浏览器中导航到该文件并查看手动设置,或者您可以运行脚本并希望获得最佳效果。之后 Steam 应该可以正常工作。我的大学最近才阻止非代理 Steam 访问,以便他们可以限制 Steam 下载速度…… :(

相关内容