萬盛學電腦網

 萬盛學電腦網 >> 服務器教程 >> 在Linux下使用網絡加速器netpas

在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中,下載,安裝。

  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

copyright © 萬盛學電腦網 all rights reserved