外国服务器的游戏用netpas和直连的差别大么

要看你本身是什么网络,我家里以前装的是铁通,玩国内游戏效果不好,但是玩外服游戏非常流畅,根本不需要使用代理。

建议还是用代理吧,我现在用的27代理的ip加速器效果非常好,而且是免费的,玩国服游戏还提供网吧奖励。netpas要收费,使用起来还不稳定。

netpas加速器(Linux下设置可使用netpas网络加速器的方法与步骤介绍)

哪个游戏加速器能试用一天

免费试用的就很多(其实也就是免费的,不妨去试一下):

奥智加速器(3天VIP,可重复申请)

NETPAS网络加速器(免费5小时,可重复申请)

天宇加速器(试用7天,可重复申请)

优路加速器

netpas加速器(Linux下设置可使用netpas网络加速器的方法与步骤介绍)

55DNS网络加速器

黑鹰网络加速器(3天试用)网际速递网络加速器(3天试用)

非凡网络加速器

极速通网络加速器(1天免费)

大迅网络加速器(2天免费,可重复申请)

统一加速器(可试用3天,不可重复申请)

飞狐网络加速器(免费24小时,可重复申请)

Linux下设置可使用netpas网络加速器的方法与步骤介绍

对于在教育网内的同学来说,最大的痛苦就是教育网不能出国和访问公网速度慢了(有钱买流量的不用看本文),所以通常有些需求的就必须购买像教育网直通车之类的加速服务,当然还有另一种选择那就是花钱买专门的VPN。但这里都有一个问题,那就是所有的网络加速服务都只有windows下的客户端,在 linux就都没有官方的使用方法了。对有些加速服务,有人想出了一些非官方的办法,比如在知道服务器地址的前提下,教育网直通车可以用PPPoE来连。据说,BrigeWan也可以用类似的方法,但上次在一个论坛里看到因为官网对协议作了点小修改,结果就是必须修改原来写好的连接脚本,而这又要听包,调试等。另外,有人还想用netpas吧,这个是我看到的最便宜的,费用标准也最灵活,除了p2p限制的厉害(会被卡在20KB/S下,而且几乎不浏览网页)外,一般速度还是不错的。现在我用的就是这个。但是因为netpas用的协议比较特殊,PPPoE的方法就不能用了,网上也没有查到有用的资料,唯一搭得上边的也就是linuxdic上的这篇文章了(估计不是原出处),但那是2007年的了,老得几乎没有参考价值。可见,在linux下使用加速器,要么缺乏官方支持不稳定,要么是没有比较新的指导。所以写这篇文章很重要。

好了,废话不说了,下面介绍方法,可能有点长,但内容很丰富;)

2准备工作

2.1好点的机器配置。

既然是用虚拟机跑代理,当然机子内存要大,这点最重要。512M估计是会卡的,1G应该就行,2G以上就很理想了,再小的话可能就要采用些非常手段了,下面也会稍微提到下。

2.2安装VirtualBox

至少3.0以上吧,最好是3.1以上的。VirtualBox这几年开发进度很快,很多特性都加了进去,合理运用能有效减少工作量。Ubuntu下是有的,其它的Linux发行版的源里一般也都有,而且既然你都用Linux了,那么就至少现在能装软件,不知道的话,搜下吧。我用的是Arch64(Archlinux 64位)。

2.3安装winxp虚拟机。

VirtualBox怎么用就不说了,VirtualBox本身的文档很详细,网上这方面的介绍也很多。这里提下,windows可以用98的,如果你机器内存小的话,但可能会遇到一些小问题。最好是winxp了,最好不要用一些网上流传的镜像和 Deepin啥的,这些都是修改版,难保后面配置时没问题。重新安装个新的,winxp professional的,不会用太多时间。最后记得安装VirtualBox Addition,这个副加包可以提高虚拟机的运行效率,另外还提供不少好用的额外功能。

2.4虚拟机windows中,下载,安装nat32e。

NAT32是一个我目前看到的最先进的NAT类软件(一般也叫共享网络连接),我也试过许多其它的,但是要么是没办法满足要求,要么就是不稳定少功能。这个软件是免安装的,但是要安装一个驱动,这个可以手动作。图省事的,就直接点setup就好了。软件是共享的,功能不设限,程序每次只能连续运行 2小时,但可以无限制地重新运行,所以这不是个问题,后面有个简单的脚本,能让这个软件几乎总是在运行(无需人为干预)。

2.5可选:虚拟机windows中,下载3proxy

3proxy是一个非常非常小的proxy软件,功能很全也很强大,windows和linux下都可以使用。配置的时候是直接修改配置文件的,典型的unix风格。有人喜欢用ccproxy的话,就自己到网上搜下如何使用吧。 3proxydownloadsection中有各个版本(包括windows64位的)下载。

3配置与使用 3.1设置虚拟机

你这时候应该已经安装好了netpas,并且在linux主机联网的情况下,netpas能联上,然后在虚拟机中能正常上外网。

3.1.1设置网卡

主要是安装完windows后,设置虚拟机的网卡。默认是只有一个NAT网卡,地址是10.0.*.*(*表示任意,当然具体只能是确定的)。这个是VirtualBox自己配置的,后面也要用,但无需额外配置。在网卡配置里启动第二个网卡,选择Host-only(中文应该是主机网络吧?),底下有个连接网线的选项,选中。你还可以把虚拟机中别的不用的设备选项都关掉。图形里的2D图形加速可以选上。启动虚拟机,这时候可以看到,有两个网络连接,找到那个 192.168.56.101(大致类似这个的),记下它现在的IP信息,然后修改IP属性,把DHCP改为?态地址,并把刚才记下的都填上,没多填。这步之所以重要是因为,这个网络连接,过会儿会作为linux主机的网关,所以我不希望它的地址有任何变化,这点尤为重要如果你像我一样经常用到两个虚拟机同时运行的话,这时候DHCP分配的地址会根据虚拟机启动顺序不同而不同。

注:不少学校的网络比较无聊,linux下没有对应的联网客户端,好像有个叫锐捷的网络登录系统就是这样。这时候,推荐你到网上搜一下,有人作过一个linux下的锐捷认证软件,如果还是不行,那么这里你可以用虚拟机联网,不过虚拟机要用一个网桥连接的网卡。这方面网上也有不少资料,这里就不多说了。

3.2虚拟机windows下

3.2.1获取netpas的路由表

必须先启动netpas。开始菜单-运行-输入“cmd”-命令行窗口-输入“route PRINT”这时候可以看到,屏幕上输出在netpas启动后的路由表。把这个输出复制到文本文件中,编辑删除所有目标地址为保留地址(0.*.*.*, 192.*.*.*, 10.*.*.*等)的行,删除那些注释用行,最后文件中每一行都是路由表中的一项,保存并传到linux主机中(用网络传,或是用共享文件夹,这个推荐吧,方便)。

3.2.2配置nat32e

注:因为后面用到了NAT的功能,据说在windows 2003 server版中有相应的工具进行设置,比较方便可靠。但一来是虚拟机里跑,资源比较紧;二来也懒得再去整另一个系统了,有知道的欢迎留言。另外,我知道有个netsh的命令可以用来配置NAT,但整了挺长时间,没办法找到netpas虚拟网卡的名称(netsh中需要这个),也不想浪费时间去学windows里这个怪怪的命令(用过你就知道了,留着时间学linux吧:),所以放弃了。知道的也欢迎留言。

如果配置过共享上网的机器,在每一个网络联接属性的高级选项里都有一个共享该连接的选项,这其实就是初等的NAT了。但因为netpas的连接比较特殊,这种简单高效的方法不能用了。这里用nat32e来解决这个问题。

先连接上netpas吧,便于后面配置。安装好net32e后,桌面上会有几个图标,第一次用需要用NAT32CFG这个功能进行配置。配置过程本身很简单,基本上都是下一个(next/continue)。只有一个页面需要介入,就是选择内网和外网时。(人懒,就不截图了,相信用linux的都至少有一定的英文基础吧,不过有需要的可以留言,我再作个截图重新说下,这里简单讲)页面上,方框里有一些网卡供选择,一般有三个,每选中一个其下有IP地址,名称等说明。选择框右而有几个单选按钮,Private(内网),Internet(外网)。选上名称为Unknown Name Netpas Adapter的网卡,然后选上Internet按钮,这时候网卡前标记为I,然后选另一个网卡,地址是192的那个,再选上Private按钮。那个网卡前出现个P。好了,下一步直到完成。

配置完成后,以后每次运行时只要点桌面上的NET32RUN就可以了。现在你还不可以通过NAT上网,需要在linux下作一些配置。

3.2.3可选,配置3proxy

注:这个是可选的,就是对那些更喜欢用代理的人来说,或是那些想省事的人,设置代理可要简单得多,而NAT还有不少配置要做,但坚持到最后的人是会有回报的:)

3proxy的功能是非常强大的,有兴趣的或需求可以花时间读一下文档,这里给一个比较通用的配置文件。================================================================================3proxy.cfg Starts==============================

#!/usr/local/bin/3proxy

# Yes, 3proxy.cfg can be executable, in this case you should place

# something like

#config/usr/local/3proxy/3proxy.cfg

# to show which configuration 3proxy should re-read on realod.

system"echo 3proxy is running...!"

# you may use system to execute some external command if proxy starts

# We can configure nservers to avoid unsafe gethostbyname() usage

####! maybe useful, but dont understand

#nserver 10.1.2.1

#nserver 10.2.2.2

# nscache is good to save speed, traffic and bandwidth

nscache 65536

# in log file we want to have underscores instead of spaces

logformat"-+_L%t.%. %N.%p%E%U%C:%c%R:%r%O%I%h%T"

rotate 30

# We will keep last 30 log files

internal 192.168.56.101

# internal is address of interface proxy will listen for incoming requests

# 127.0.0.1 means only localhost will be able to use this proxy. This is

# address you should specify for clients as proxy IP.

# You MAY use 0.0.0.0 but you shouldn't, because it's a chance for you to

# have open proxy in your network in this case.

auth none

# no authentication is requires

####! maybe useful in some occassions

# dnspr

# dnsproxy listens on UDP/53 to answer client's DNS requests. It requires

# nserver/nscache configuration.

#external$./external.ip

#internal$./internal.ip

# this is just an alternative form fo giving external and internal address

# allows you to read this addresses from files

auth none

# We want to protect internal interface

deny** 127.0.0.1,192.168.56.101

# and llow HTTP and HTTPS traffic.

allow*** 80-88,8080-8088 HTTP

allow*** 443,8443 HTTPS

proxy-n-p8090

auth none

flush

socks-p9080

===============3proxy.cfg End================================================================================================

这是根据3proxy给的样例加以改造的,把它复制到文件中,并保存为 3proxy.cfg,然后放入3proxy的bin目录下,双击3proxy.exe运行就可以了。这个配置使3proxy开启了两个代理,一个是http代理,在8090端口;一个是 socks5代理,在9080端口。接下来你只要在需要设置代理的程序中设置如下即可: Http: 192.168.56.101:8090 socks5: 192.168.56.101:9080这就是配置3proxy的全部过程,现在你应该可以在firefox里上国外网了推荐使用foxproxy等firefox插件,这些使设置代理变得非常方便。

补充:NAT与proxy的区别

网上介绍的大部分是用代理来共享的,这是因为代理简单,适用范围广。但是,如果能够用NAT的话,最好还是用NAT。原因很简单,要求使用代理的程序必须得支持代理,而且代理一般只支持特定协议如常见的http代理。当然现在有很多socks代理,实际上可以支持任何协议,但首先程序必须能够支持socks代理。这一点其实通常没有满足,这也是为什么像wincaps这样的程序非常的流行,它们可以使原来不支socks代理的程序使用socks代理,但问题依然存在:对每一个你需要用代理的程序,你要单独进行设置,另外可能也有性能上的降低(这个不是很清楚)。另外,似乎linux下没有特别好用这类软件(知道的,欢迎留言),tsocks的开发都停止很多年了。

而NAT虽然并非在所有场合都能用,但一旦使用,你获得的就是从网络底层到高层统一一致的服务,从ping到http,无需再做设置就可直接使用所有网络资源,而且结合使用路由表,灵活性不比proxy差。而在性能上一般也较好。对于在linux中,你可能有IM,需要联网的桌面应用如桌面天气,桌面 RSS等,新闻下载客户端Miro,或是开源的联网小游戏teeworlds等。这些中许多没有内置代理支持,而其使用的协议也各式各样。但在NAT下都能直接使用。

3.3 linux下配置路由表

这部分应该说是最难的,而且因为大家上网的方式不一致,所以路由表的内容和配置也不同,可能配置上会有些差异(??)

3.3.1导入从windows下获得的netpas路由表(依前修改后)

这个路由表的特点是,所有表中的目标地址的访问netpas都设为不通过 netpas加速,这其中包括所处教育网,netpas的服务器地址等等netpas认为不应或不需通过其加速的地址段。把这些都导入到linux下的路由表,其中网关一项全部改为你直接在linux上网时用的默认网关,具体步骤如下:

打开一个终端,以root身份执行命令(su,然后输入root的密码)。命令“route-n”,会输出目前系统的路由表,记住开头为default的一项后的 IP地址,此即当前的默认网关。

用命令“route add-net 1 netmask 2 gw 3”或“route add-host 4 gw 5”导入新的路由表项。其中1为目标网段,4为目标地址,即netpas路由表中的第一列,结尾为0的是目标网段,其它为目标地址。而2为网址掩码,也就是 netpas路由表的第二列。4,5都是上一步得到的当前默认网关。不要一个一个输入这些命令执行,先把这些命令写入一个shell脚本,然后再一起执行。脚本应该是类似这样的:

================

#/bin/sh echo"NEED root authentication"

echo"The following is from Netpas in w32…"

route add-net 58.154.0.0 netmask 255.254.0.0 gw-.-.-.-

route add-net 58.192.0.0 netmask 255.240.0.0 gw-.-.-.-

route add-net 59.64.0.0 netmask 255.240.0.0 gw-.-.-.-

route add-net 121.48.0.0 netmask 255.254.0.0 gw-.-.-.-

route add-net 121.192.0.0 netmask 255.252.0.0 gw-.-.-.-

================================================================

即一条命令接着一条,网关gw,“-.-.-.-”要填上你的网关。至少如何执行,具体自己去搜吧,命令是“chmod u+x脚本文件名”,“./脚本文件名”。

3.3.2进一步设置路由表

完成上面的导入,现在就是切换路由路线的时候了。正如前面所说,netpas路由表的表项都是不通过netpas加速的,所以上面都设置为直接通过你现在的网卡连接。而对于其它的地址,我们需要设置其通过netpas。三步:

执行,“route add default gw 192.168.56.101",即增加一个默认网关,这个网关就是虚拟机。这一步必须在虚拟机启动后执行才有效,否则。

执行,“add-net 10.0.0.0 netmask 255.0.0.0 dev eth0”,即让所有通过netpas加速的包都直接发送到外网端口。这里eth0应换成是你在 linux下用来上网的网卡名称。这一步很重要,否则需要加速的包就出不去了。这一步可以在任何时候执行

执行,“route del default gw-.-.-.-”。即从路由表中删除你当前的默网关。这样,需要加速的包就必须从虚拟机这个网关通过。

好了,如果虚拟机里netpas和nat32都连上打开了,你现在应该可以上外网了,无需在相应程序中设置:)

4更好的代理

4.1打破2小时的限制

前面说到nat32有连续2小时的限制,然后必须重启nat32.大家都不喜欢限制,要么为什么要用Linux呢?:)那么我们去找破解吧!我去找过,网上的破解大多不能用了,就算能用(没找到,实际上,搜索结果挺多的)吧,也很老了,nat32这个软件1.8版本在 2005年就推出了,现在还是1.8版但却是在今年二三月份推出的,我对比了下,差别很大,同是1.8界面功能都不太一样。所以,没有现成的破解。那么我们去写一个破解吧!好吧,我承认,我太菜,这个任务我不能完成,就留给聪明的读者和强大的黑客吧。不过,俺觉得有这个时间,不如写更好的linux程序,这才是长久之道。看多了“破解-补丁-破解-补丁-破解……”的恶性循环。当然有第三种选择,就是写个脚本来自动重新启动nat32,如下:================================================================================ repeat_start.bat START===================

@echo off

echo Simple script to keep a program running all the time

set program_path=C:/NAT32/nat32.exe 2

set program_name=NAT32

set count=0

set wait_seconds=30

:LOOP

set/A count=%count%+1

echo"start%program_name% for%count% time(s)"

rem- wait it terminates

start/wait%program_path%

echo"ooooops, it stops..."

echo"wait for about%wait_seconds% seconds, then restart..."

rem- wait for several seconds

@ping 127.0.0.1-n%wait_seconds%-w 1000 nul

@ping 127.0.0.1-n%1%-w 1000 nul

echo...

echo================================================================

rem- to restart an infinite loop

rem- of course, you can use a for loop to make it run limited times

goto LOOP

================ repeat_start.bat END======================================================================================

其中,set program_path=C:/NAT32/nat32.exe 2这一行,=后面的参数可以通过看“NAT32RUN”这个桌面快捷方式找到,复制粘贴就行,一般若安装的 NAT32就是这个参数。这里这个脚本,其实可以用来维持任意会中断的程序的运行,原理很简单,就是启动程序后,等待其终止,一旦中止就再启动。一般,为了避免一些因为程序刚关闭时的一些问题,最好等一会儿再启动。对nat32而言,因为它用到了驱动,所以感觉最好等久些,我设成了30秒。至于其中等待用ping来实现,则是从网上复制来(人懒,没花时间去研究)的高人前辈的“暗黑系魔法”。2003 server里有个sleep的程序,而xp pro里没有。。。以后,每次就不再运行NAT32RUN,而是直接用这个脚本。

4.2更好的路由

其实,netpas路由表是很有限的。现在教育网访问公网,对有的地址其实是很快的,像baidu,youku之类的,应该是相应的网站针对教育网进行了优化。所以,这些也通过netpas加速的效果反而更差。所以,你可以找到这些地址,然后用“route”来设置为直接访问。这里其实有个不好的地方,就是这里说的设置路由的方法总是要用到root权限。当然,其实路由表是相对稳定了。不知道有没有更好的方法。

4.3不再用了

不用NAT了,要回到正常联网,只需执行下面两个命令:“route del default gw 192.168.56.101".“route add default gw-.-.-.-”。其实就是,上面设置路由表最后两步的逆过程,其它都不用改。

4.4 Some geek stuff:

对于像我一样,觉得命令行,文本更好,并且觉得应该尽量减少windows在 linux中的出现的。介绍两个命令,VBoxManage, VBoxHeadless。 VBoxManage,是VirtualBox的命令行,像“ VBoxManage startvm xpnet”这个命令,可以用来从命令行启动虚拟机,xpnet是虚拟机的名称。这样就不用每次都打开VirtualBox的图形窗口了:)当然,你会觉得这还不够,为什么要一个windows虚拟机的窗口始终在我的桌面上呢,为什么我只是想用它来联网而它始终要一个显示窗口呢?好吧,让它消失吧~ VBoxHeadless,原本的目的是为了在远程服务器上启动虚拟机用的,因为是在远程服务器上,所以服务器上是不应有图形窗口的(没人在那看),所以由它启动的虚拟机是没有窗口的。为了控制由此启动的虚拟机,它支持一个 VRDP的协议,相当于VirtualBox的远程桌面。当然,这里我们不用它这个功能,因为开启这个功能会在主机上启动这项服务,可能会导致有人可以从网上联到你的虚拟机。开启winxp pro的远程桌面,用“VBoxHeadless-startvm=xpnet-vrdp=off”启动虚拟机,用“rdesktop-a 16 192.168.56.101”来连接,如果需要手动调整配置什么的。如果觉得每次输入密码麻烦,用下面这个命令 rdesktop-a 16-p passwd 192.168.56.101-p后面填上密码明文,不用担心,你的虚拟机在内网里,外面联不进来的。

文章有些长,但我觉得方法还是很好的,尤其是NAT的使用,使虚拟机整个构成了一个支持所有协议的透明网关。另外,值得注意的是,这个方法适用于几乎所有的加速器,因为整个设置通过虚拟机实现了对加速器是透明的。所以,希望有所帮助。有指导,有问题的欢迎留言。