人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統 > 網絡技術教程 > 詳細頁面

硬件平臺我使用的路由器是WNDR37003700vv2設置

硬件平臺我使用的路由器是WNDR37003700vv2設置

更新時間:2023-08-17 文章作者:未知 信息來源:網絡 閱讀次數:

網絡故障(network failure)是指由于硬件的問題、軟件的漏洞、病毒的侵入等引起網絡無法提供正常服務或降低服務質量的狀態。

通過這個日志的介紹,你可以了解到:

考慮到路由器性能、連接穩定性以及配置更新的方便性,我們只在透明代理中添加了少量的Google IP,其他網站還是交給AutoProxy等插件來完成,目前支持的服務包括(但不限于):

好了,廢話不多說,下面來介紹一下如何配置。

硬件平臺

我使用的路由器是WNDR3700v2,參數如下:

這款機型目前在淘寶上的售價僅為150元左右,非常劃算。除了性能強勁之外,這款機型還支持Serial和JTAG調試,真是不可多得的好機子。 CeroWRT項目的實驗平臺使用的是這款WNDR3700v2。

軟件平臺

我使用 OpenWRT 12.09(姿態調整)。 Backfire 10.03.1 內置的openssl庫好像和-libev不兼容,可能需要手動編譯解決相關問題。另外,最新版本的OpenWRT 14.07(Barrier Breaker)已于2014年7月31日發布,但我還沒有在新系統上進行測試。

準備工作

OpenWRT的官方源碼在國內不穩定,所以運行opkg命令很可能會卡死。為了避免這個問題,可以先用迅雷下載相關的庫文件。下載地址是外鏈網址被屏蔽了,用瀏覽器打開這個網址,然后根據路由器型號選擇對應的平臺(比如我的是ar71xx),然后進入generic/packages目錄,下載以下文件:

然后我們需要從SourceForge下載-libev和chinadns-c。對于ar71xx平臺,下載以下兩個文件:

然后我們需要能夠將這些文件傳輸到 OpenWRT 路由器。在Windows下,我們可以使用putty包中提供的pscp工具。下載地址是外鏈網址被屏蔽了。

接下來,您需要準備一個可用的 帳戶。顯然,如果沒有遠程主機的幫助,您將無法繼續。你可以在網上找到很多免費和付費的代理服務,你甚至可以搭建自己的服務器。如果成功找到代理服務,請記下密碼、服務器端口號和加密方式。另外,使用ping工具獲取服務器的IP地址并記下來,后面會用到。

最后,記下您的 ISP 提供的 DNS 服務器地址。 chinadns 運行時,還需要一個國內的(受污染的)DNS。后面會介紹原理。

開始配置

以上準備工作完成后,就可以正式開始配置了。首先準備一個干凈的剛剛安裝好的OpenWRT路由器(用過沒有關系,一般情況下不會有沖突),將6個軟件包復制到pscp目錄下,打開命令行,輸入以下命令:

pscp -scp kmod-ipt-nat-extra_3.3.8-1_ar71xx.ipk root@192.168.1.1:/tmp
pscp -scp iptables-mod-nat-extra_1.4.10-4_ar71xx.ipk root@192.168.1.1:/tmp
pscp -scp zlib_1.2.7-1_ar71xx.ipk root@192.168.1.1:/tmp
pscp -scp libopenssl_1.0.1h-1_ar71xx.ipk root@192.168.1.1:/tmp
pscp -scp -libev_1.6.1-1_ar71xx.ipk root@192.168.1.1:/tmp
pscp -scp ChinaDNS-C_1.1.8-1_ar71xx.ipk root@192.168.1.1:/tmp

完成后,將軟件包上傳到路由器的/tmp目錄。然后用putty打開路由器地址192.168.1.1,運行如下命令:

cd /tmp
opkg install kmod-ipt-nat-extra_3.3.8-1_ar71xx.ipk
opkg install iptables-mod-nat-extra_1.4.10-4_ar71xx.ipk
opkg install zlib_1.2.7-1_ar71xx.ipk
opkg install libopenssl_1.0.1h-1_ar71xx.ipk
opkg install -libev_1.6.1-1_ar71xx.ipk
opkg install ChinaDNS-C_1.1.8-1_ar71xx.ipk

建議嚴格執行以上命令,以免出現軟件包依賴問題。然后執行以下命令編輯防火墻規則(也可以在LuCI Web界面的網絡-防火墻-自定義規則下設置):

vi /etc/firewall.user

一般情況下,#開頭的注釋應該只有3行。在評論下方添加以下內容

iptables -t nat -N 
iptables -t nat -F 
# server
iptables -t nat -A  -d x.x.x.x -j RETURN
# reserved networks
iptables -t nat -A  -d 10.0.0.0/8 -j RETURN
iptables -t nat -A  -d 127.0.0.0/8 -j RETURN
iptables -t nat -A  -d 172.16.0.0/12 -j RETURN
iptables -t nat -A  -d 192.168.0.0/16 -j RETURN
# google
iptables -t nat -A  -p tcp -d 74.125.0.0/16 -j REDIRECT --to-ports 8001
iptables -t nat -A  -p tcp -d 173.194.0.0/16 -j REDIRECT --to-ports 8001
# apply the rules
iptables -t nat -I PREROUTING -j 
# start china-dns
chinadns -p 5353 -s y.y.y.y,8.8.4.4 -l /etc/chinadns_iplist.txt  -c /etc/chinadns_chnroute.txt &
# start -local
ss-local -s server -p port -k password -m aes-256-cfb -l 8000 -u &
# start -redir
ss-redir -s server -p port -k password -m aes-256-cfb -l 8001 -u &

這個腳本有幾點需要修改:

腳本完成后,編輯dnsmasq的配置文件:

vi /etc/dnsmasq.conf

在文件末尾添加以下兩行(注意用#代替冒號):

no-resolv
server=127.0.0.1#5353

最后,保存文件并重啟路由器:

reboot

路由器配置現已完成,但 Windows 可能仍使用舊的 DNS 。運行以下命令刷新 DNS 緩存:

ipconfig /flushdns

如果沒有問題,那么您將能夠訪問 Google 搜索、Google 代碼和 Gmail。手機連接WIFI后,即可直接訪問Google Play!

原理分析

相信看到這里的讀者一定有很多疑問:為什么要使用chinadns,為什么需要修改dnsmasq的配置文件,什么是ss-local和ss-redir等等。以下是這些問題的統一答案。

為了屏蔽谷歌的服務,長城做了很多事情,其中??最重要的兩個就是DNS投毒和TCP連接重置。

DNS 協議在設計之初并沒有考慮安全性。因此,當主機發送 DNS 請求“IP 地址是什么”時,防火墻可以立即向源主機發送錯誤的 IP 地址。源主機收到防火墻的響應后,提取了錯誤的IP地址,因此忽略了后面發回的正確數據包。由于DNS協議已經使用了幾十年,今天更新協議相當麻煩(所有服務器和終端都必須統一更新),所以從協議上解決這個問題是不現實的。

但有趣的是,防火墻給出的錯誤地址仍然是國外地址(位于國外,防火墻返回了另一個錯誤的國外地址)。想想這樣做的目的不是為了給中國服務器造成問題。想想A公司自己的網站帶寬并不大。突然有一天,大量奇怪的連接請求被發送,服務器幾乎無法處理。但是,正是這種行為使繞過防火墻成為可能。 chinadns本身就是一個DNS轉發服務器,它工作時需要一個本地DNS和一個外部DNS(上面的腳本使用了谷歌的DNS服務器8.8.4.4),工作原理如下: ? ?????????????????????????????????????????????????????? ?????????????????????????????????????????????????????? ?????????????????????????????????????????????????????? ?????????????????????????????????????????????????????? ?????????????????????????????????????????????????????? ?????????????????????????????????????????????????????? ?????????????????????????????????????????????????????? ?????????????????????????????????????????????????????? ?????????????????????????????????????????????????????? ?????????????????????????????????????????????????????? ?????????????????????????????????????????????????????? ?????????????????????????????????????????????????????? ?????????????????????????????????????????????????????? ?????????????????????????????????????????????????????? ?????????????

void recv_request_from_client(request r)
{
    send_to_china_dns(r);
    send_to_foreign_dns(r);
}
void recv_response(response r)
{
    if (in_fake_ip_list(r.target_ip)) {
        drop(r);
        return;
    }
    if (!is_chinese(r.target_ip)) {
        if (is_chinese(r.dns_ip)) {
            drop(r);
            return;
        }
    }
    forward_to_client(r);
}

每當收到請求時,chinadns 將請求同時發送到本地 DNS 和外部 DNS。收到響應時,如果目標IP在假IP地址列表中,則直接丟棄報文,不轉發;如果目標IP是國外IP,結果是從國內DNS得到的,那么結果很可能也被污染了,所以報文被丟棄,等待國外DNS解析的結果。

通過設置以上策略,可以解決很多DNS解析問題。但是對于一些網站(比如谷歌搜索),防火墻也會發送一個TCP Reset包。當瀏覽器收到Reset報文時,直接中斷TCP連接,瀏覽器會給出錯誤提示。解決這個問題,沒有特別好的辦法,只能使用代理。我們在 OpenWRT 路由器上設置了一個 代理,讓它在 redir 模式下工作。當 Linux 防火墻(iptables)接收到一個特定目的地的 IP 數據包時,它會使用代理來轉發它(上述腳本的第 14 和 15 行,端口 8001)。

同時,我們還建立了本地模式的本地Socks服務器,這樣就不需要在PC上運行客戶端了。您只需要安裝相應的插件(例如在火狐下使用修改版的AutoProxy),并將Socks服務器地址設置為192.168.1.1:8000即可。

上述腳本中,只有ss-redir用于透明代理Google的兩個B類地址,其他需要手動設置。目前可用的服務有:

AutoProxy 和其他類似軟件維護了一個更大的列表,但考慮到性能和穩定性,完整的列表暫時沒有添加到防火墻規則中。如果需要,可以手動添加自己的 IP 地址。在瀏覽器上(如火狐+AutoProxy),可以一鍵進入全局代理模式,訪問結束可以取消,非常方便。但是如果要更新路由器上的規則,就比較麻煩了。這也是為什么路由器上只配置了幾條規則,大部分都是由插件來處理的原因。

有些讀者可能對 ss-redir 和 ss-local 仍有疑問。為什么必須配置兩個后臺進程而不是統一?這個問題的內在原理我暫時不是很清楚。目前能知道的是ss-redir需要配合iptables防火墻的REDIRECT規則使用,ss-local作為Socks服務器,配合相關軟件設置使用。當火狐的代理端口改成ss-redir的8001后,就不行了。如果你有興趣,可以研究一下兩者工作的內在機制,然后找到確切的原因。


本文來自本站,轉載請注明本文網址:
http://www.pc-fly.com/a/tongxingongju/article-380306-1.html


當今,越來越多的業務應用運行于網絡架構之上,保障網絡的持續、高效、安全的運行,成為網絡管理者面臨的巨大挑戰。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 枣强县| 阿合奇县| 乃东县| 于田县| 莫力| 博兴县| 博爱县| 永城市| 翁源县| 锡林浩特市| 衢州市| 开鲁县| 伊吾县| 沅江市| 长沙市| 古交市| 山东省| 张家川| 汝州市| 紫阳县| 苗栗市| 定南县| 蒲城县| 合作市| 稷山县| 洞口县| 商城县| 菏泽市| 新沂市| 烟台市| 苏州市| 历史| 民勤县| 贵港市| 盐源县| 镇平县| 邮箱| 永靖县| 武宁县| 宜君县| 德惠市|