强制未指定代理设置的程序使用代理(例如:Steam)


24

我的学校需要所有互联网访问的代理。如果要使用互联网,则不可能不使用代理。这对于许多似乎不允许您输入代理设置的程序来说是一个问题。

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

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

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


好问题,我希望看到一个好的代理解决方案
Ivo Flipse,2009年

只是好奇,为什么要在学校使用Steam?
09年

JIa3ep:要玩游戏吗?通常,我们的老师会与可口的Mac游戏一起组织迷你LAN“派对”。
乔什·亨特

嗨,乔希。如果您同意SU成为热门话题,可以请您投票重新提出我的另一个Steam问题?谢谢。 superuser.com/questions/121910/...
克里斯W. Rea的

1
@克里斯:我自己没有权力重新提出问题,我只能投票重新提出问题。但是,我不同意这个问题是否适合SU以便重新讨论。
乔什·亨特

Answers:


8

检出Proxifier。与SSH隧道结合使用,您应该能够通过任何代理获取大多数程序。

我的学校(以及我所在州的所有其他学校)都设置了相当详尽的网络过滤代理,该代理会阻止代理另一端的大多数端口。我设法使用Windows上上面提到的程序的组合来解决它。

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


1
您将隧道端点指向何处?
迈克尔·卡伦

2
我希望会有这样的东西用于商业用途并且免费。这些替代方案根本不起作用(在我们的VPS上)。
modiX

2
请注意,这不是免费的解决方案,因为“ Proxifier”需要付款。
Zoran Pavlovic 2014年

我尝试自己在OS X上执行此操作,但客户端无法连接。事实证明,您需要使用此答案中-tcp所述的选项启动Steam 。自2009年以来,情况似乎发生了变化。我敢打赌这也适用于Windows。
2rs2ts '16

3

我的tun2socks软件(Linux,Windows)创建了一个虚拟网络接口,该接口通过指定的代理服务器转发所有传入的TCP连接。它只能使用SOCKS代理,并且默认情况下只能转发TCP,尽管如果您能够udpgw在SOCKS后面的某个地方运行我的转发器,也可以转发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。它必须与分配给虚拟接口本身(10.0.0.1/24)的子网位于同一子网中,并且与该子网不同。在Windows上,而不是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服务器不在本地网络上,则必须添加具有较高度量的异常路由,以防止将连接路由回虚拟接口。有关更多信息,请参见顶部的链接。


我在Windows上无法正常运行,但是我相信我按照您的指示使用了正确的值,但是:i.imgur.com/Q17GOJr.png我还检查了“硬件ID”,显示了“ tap0901”的值
deed02392

@ deed02392这很奇怪。需要检查一些事情:您的设备真的是由OpenVPN驱动程序安装的TAP-Win32设备吗?您是否在使用最新的OpenVPN版本?也可以尝试将设备重命名为“ TAP”之类的缩写,但我认为这没有关系。
2013年

@ deed02392有人也为tun2socks制作了一个GUI(用谷歌搜索),您可以尝试一下,但是我不能保证它的质量。
2013年

@ deed02392如果您想调试此代码,请参见ideone.com/vSupRi
Ambroz Bizjak 2013年

有趣的是,它Local Area Connection 3在注册表中被称为。交换它的名称,它会立即起作用...
deed02392 2013年

1

据我所知,Steam使用Internet Explorer中的默认代理设置。如果使用代理脚本,则可能会遇到问题,但是它们很容易解决。只需在脚本中挖掘代理地址,然后将它们设置为您的代理,Steam就可以正常工作。

如果您仍然遇到问题,则应查看Steam论坛。Valve的Steam开发人员通常会浏览技术支持/帮助论坛,并在必要时提供帮助。

如果您在使用单个Steam游戏时遇到问题,则可能不走运,因为它们倾向于使用特定的端口。


2
它不使用系统代理设置(仅通过Wireshark进行检查)。
艾蒂安·佩罗

1

最好的选择是在控制面板的“ Internet设置”中设置代理信息,如果您的Uni使用代理配置脚本,则可以在Web浏览器中导航到该文件并查看手动设置,或者可以使用脚本运行并希望最好的。在那之后蒸汽应该起作用。我的大学最近才阻止使用非代理蒸汽,以便他们可以限制蒸汽的下载速度... :(


0

并非所有代理都不允许访问所有端口,因此实际上无法实现您所描述的内容。

如果您可以访问https:// URL并可以访问外部的计算机,则可以在外部计算机上设置VPN服务器,并在计算机上运行VPN以通过该服务器建立所有流量隧道。只要您在端口443上运行VPN并且它使用SSL进行握手,就可以访问该服务器。

我之前在Linux上使用SSH进行过此操作,但在Windows上当然可以(如果您可以找到支持上述功能的免费VPN)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.