自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

OpenWRT 路由配置技巧

網(wǎng)絡(luò) 路由交換
最近 Google 在國(guó)內(nèi)已經(jīng)完全無法訪問,使得通過 VPN 訪問網(wǎng)絡(luò)的需求更加強(qiáng)烈,本文介紹的方法可以使一個(gè)普通的路由具備穩(wěn)定連接 VPN 的能力,并能夠根據(jù)目標(biāo)訪問網(wǎng)站選擇國(guó)內(nèi)外線路。

最近 Google 在國(guó)內(nèi)已經(jīng)完全無法訪問,使得通過 VPN 訪問網(wǎng)絡(luò)的需求更加強(qiáng)烈,本文介紹的方法可以使一個(gè)普通的路由具備穩(wěn)定連接 VPN 的能力,并能夠根據(jù)目標(biāo)訪問網(wǎng)站選擇國(guó)內(nèi)外線路,從而得到一個(gè)既沒有限制,也不會(huì)影響速度的 Wifi 環(huán)境,連接到這個(gè)網(wǎng)絡(luò)的設(shè)備不需要任何配置即可安全上網(wǎng),完全感覺不到任何不便。

chnroutes 路由表

這個(gè)路由表集中了所有分配到中國(guó)大陸的 IP 段,根據(jù) http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest 每天自動(dòng)更新,可使得在訪問國(guó)內(nèi)地址時(shí)不經(jīng)過 VPN。

想想如果能夠讓家里的路由直接連接 VPN,在家連接 WiFi 的所有設(shè)備直接達(dá)到Fan墻的效果,應(yīng)該很 Cool,所以最近在某寶整了一個(gè) Netgear WNDR3800 二手路由回來,先后分別在 DD-WRT 和 OpenWRT 成功配置 VPN + chnroutes,最后還是選擇了 OpenWRT。

DD-WRT vs OpenWRT

關(guān)于 DD-WRT 和 OpenWRT,我選擇 OpenWRT 主要因?yàn)?DD-WRT ROM 中集成的軟件太多,絕大多數(shù)用不到,要配置 jffs2 來保存腳本文件,一般配置則保存在nvram中,而且無線較不穩(wěn)定,5G頻段常搜索不到(當(dāng)然可能是我這個(gè)路由器型號(hào)的支持問題)。OpenWRT 的配置文件語法統(tǒng)一,配置都存儲(chǔ)在文件系統(tǒng)中,且 ROM 本身僅集成了必備組件,非常小,可以只安裝需要的東西,WEB管理界面也是可選安裝,簡(jiǎn)潔強(qiáng)大,經(jīng)過若干天的使用一直比較穩(wěn)定。

配置

已配置好 OpenWRT 上網(wǎng)的童鞋們可以直接跳過 1.刷 ROM 和 2.初始配置

1.刷 ROM

a.首先確定你的設(shè)備可以被 OpenWRT 所支持(到這里查看支持的設(shè)備列表:http://wiki.openwrt.org/toh/start),然后到這里下載編譯好的 ROM:http://downloads.openwrt.org/ 。最新的 stable 版本是 attitude_adjustment(12.09),我下載的是 trunk 版本。

b.在 OpenWRT 官網(wǎng)找相應(yīng)設(shè)備的 Wiki 頁面查看刷機(jī)方法,一般都是在路由器官方Web固件升級(jí)頁面直接刷入(我的 WNDR3800 Wiki頁面是:http://wiki.openwrt.org/toh/netgear/wndr3800)

2.初始配置

a.路由器啟動(dòng)后,有的型號(hào)沒有安裝 Wifi 模塊,需要先用網(wǎng)線連接到 LAN 口,本機(jī) IP 配置為靜態(tài) 192.168.1.x,然后 telnet 到 192.168.1.1,更改 root 密碼,然后 ssh 連入,參考:http://wiki.openwrt.org/doc/start#configuring.openwrt

 

3922_1

 

b.配置 WAN 口,讓路由連上 Internet,參考:http://wiki.openwrt.org/doc/howto/internet.connection 。

比如要配置 PPPoE:

uci set network.wan.proto=pppoe
uci set network.wan.username='yougotthisfromyour@isp.su'
uci set network.wan.password='yourpassword'
uci commit network
ifup wan

 

c.安裝 LuCI Web 管理界面并設(shè)置開機(jī)自動(dòng)啟動(dòng),參考:http://wiki.openwrt.org/doc/howto/luci.essentials

opkg update
opkg install luci
/etc/init.d/uhttpd start
/etc/init.d/uhttpd enable

 

d.瀏覽器輸入路由器 LAN 側(cè) IP(多為192.168.1.1),進(jìn)行 Wifi 等配置

 

3922_2

 

 

3922_3

 

3.配置 DNS

a.創(chuàng)建 /etc/config/sec_resolv.conf

 vim /etc/config/sec_resolv.conf

填入以下 DNS Servers:

nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 208.67.222.222

 

b.編輯 /etc/config/dhcp

vim /etc/config/dhcp

找到 option resolvfile 選項(xiàng),替換為:

option resolvfile '/etc/config/sec_resolv.conf'

4.配置 PPTP

a.安裝 ppp-mod-pptp

opkg updateopkg install ppp-mod-pptp

 

如果需要 LuCI 支持(推薦):

opkg install luci-proto-ppp

b.配置 vpn 接口,編輯 /etc/config/network 文件,應(yīng)該已經(jīng)有以下內(nèi)容(如果沒有,需要插入),并配置里面的 server、username 和 password:

config 'interface' 'vpn' 
        option 'ifname'    'pptp-vpn'  
        option 'proto'     'pptp'
        option 'username'  'vpnusername'
        option 'password'  'vpnpassword'
        option 'server'    'vpn.example.org or ipaddress' 
        option 'buffering' '1'

 

c.進(jìn)入 Network -> Firewall ,把 vpn 加入 wan zone,效果如圖:

 

3922_4

 

d.進(jìn)入 Network -> Interfaces ,此時(shí)應(yīng)該已經(jīng)可以看到 VPN Interface 并可以連接,效果如圖:

 

3922_5

 

e.此時(shí)在本機(jī) traceroute www.google.com,應(yīng)該能得到類似以下的結(jié)果:

FL-MBP:~ fatlyz$ traceroute www.google.com 
traceroute: Warning: www.google.com has multiple addresses; using 74.125.239.113 
traceroute to www.google.com (74.125.239.113), 64 hops max, 52 byte packets
 1  fc_r0.lan (192.168.7.1)  2.266 ms  0.999 ms  0.946 ms
 2  10.7.0.1 (10.7.0.1)  189.259 ms  187.813 ms  188.368 ms
 3  23.92.24.2 (23.92.24.2)  189.847 ms  190.489 ms  188.939 ms
 4  10ge7-6.core3.fmt2.he.net (65.49.10.217)  188.508 ms  192.216 ms  202.863 ms
 5  10ge10-1.core1.sjc2.he.net (184.105.222.14)  195.695 ms  195.691 ms  284.242 ms
 6  72.14.219.161 (72.14.219.161)  189.196 ms  192.287 ms  193.220 ms
 7  216.239.49.170 (216.239.49.170)  192.496 ms  188.547 ms  189.881 ms
 8  66.249.95.29 (66.249.95.29)  190.125 ms  190.335 ms  190.026 ms
 9  nuq05s01-in-f17.1e100.net (74.125.239.113)  189.804 ms  190.556 ms  190.242 ms

 可以看出,其中第二跳是 VPN 的網(wǎng)關(guān),而 traceroute www.baidu.com 的話第二跳應(yīng)該也是同樣的結(jié)果。

這時(shí)已經(jīng)可以訪問 Google, Baidu 等國(guó)內(nèi)外的站點(diǎn)了。

5.配置 chnroutes

a.到 chnroutes 項(xiàng)目的下載頁面:http://chnroutes-dl.appspot.com/ 下載 linux.zip,解壓

b.把 ip-pre-up 重命名為 chnroutes.sh,打開編輯,在 if [ ! -e /tmp/vpn_oldgw ]; then 前插入以下代碼,以避免 ppp 連接腳本重復(fù)執(zhí)行導(dǎo)致重復(fù)添加路由表項(xiàng):

 if [ $OLDGW == 'x.x.x.x' ]; then    exit 0
fi

 其中 x.x.x.x 是 VPN 的網(wǎng)關(guān),可以先本機(jī)連接上去之后查看一下網(wǎng)關(guān)地址。

c.ssh 連接到路由器,執(zhí)行以下命令:

cd /etc/config/
mkdir pptp-vpn
cd pptp-vpn
vim chnroutes.sh 

 

在 vim 中把編輯好的 chnroutes.sh 粘貼進(jìn)去(當(dāng)然也可以通過 ssh 直接把 chnroutes.sh 文件傳過去,或者上傳到某個(gè)地方再 wget 下載)

執(zhí)行以下命令,設(shè)置權(quán)限為可執(zhí)行:

chmod a+x chnroutes.sh

d.用 vim 編輯 /lib/netifd/ppp-up 文件:

vim /lib/netifd/ppp-up

在 [ -d /etc/ppp/ip-up.d ] && { 這一行前插入以下內(nèi)容,確保 ppp 連接腳本能夠被執(zhí)行:

sh /etc/config/pptp-vpn/chnroutes.sh

 

e.重啟路由,啟動(dòng)好之后,進(jìn)入 LuCI 查看接口狀態(tài),等 WAN 和 VPN 都連接成功后,ssh進(jìn)去,執(zhí)行 route -n | head -n 10 ,效果應(yīng)該類似這樣:

 root@FC_R0:/etc/config# route -n | head -n 10 
Kernel IP routing table 
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface 
0.0.0.0         10.7.0.1      0.0.0.0         UG    0      0        0 pptp-vpn 
1.0.1.0         58.111.43.1   255.255.255.0   UG    0      0        0 pppoe-wan 
1.0.2.0         58.111.43.1   255.255.254.0   UG    0      0        0 pppoe-wan 
1.0.8.0         58.111.43.1   255.255.248.0   UG    0      0        0 pppoe-wan 
1.0.32.0        58.111.43.1   255.255.224.0   UG    0      0        0 pppoe-wan 
1.1.0.0         58.111.43.1   255.255.255.0   UG    0      0        0 pppoe-wan 
1.1.2.0         58.111.43.1   255.255.254.0   UG    0      0        0 pppoe-wan 
1.1.4.0         58.111.43.1   255.255.252.0   UG    0      0        0 pppoe-wan

 其中 Destination 為 0.0.0.0 的是默認(rèn)路由,網(wǎng)關(guān)為 VPN 網(wǎng)關(guān),意味著默認(rèn)流量都經(jīng)過 VPN,而以下的條目則把目的為國(guó)內(nèi)的網(wǎng)段都指向了 ISP 提供的網(wǎng)關(guān)。

至此 PPTP VPN 和 chnroutes 已經(jīng)配置完畢。

6.配置 VPN 斷線自動(dòng)重連

a.創(chuàng)建 /etc/config/pptp-vpn/status-check.sh:

vim /etc/config/pptp-vpn/status-check.sh

在 vim 中粘貼以下內(nèi)容(此腳本檢測(cè) VPN 連接狀態(tài),并在斷線后會(huì)斷開 WAN 和 VPN 接口,10秒后重新連接 WAN,并在 30 秒后重連 VPN):

#!/bin/sh
if [ -f "/tmp/vpn_status_check.lock" ]
then
        exit 0
fi
VPN_CONN=`ifconfig | grep pptp-vpn`
if [ -z "$VPN_CONN" ]
then
        touch /tmp/vpn_status_check.lock
        echo WAN_VPN_RECONNECT at: >> /tmp/vpn_status_check_reconn.log
        date >> /tmp/vpn_status_check_reconn.log
        ifdown vpn
        ifdown wan
        sleep 10
        ifup wan
        sleep 30
        ifdown vpn
        sleep 10
        ifup vpn
        sleep 40
        rm /tmp/vpn_status_check.lock
else
        date > /tmp/vpn_status_check.log
fi

執(zhí)行以下命令,設(shè)置權(quán)限為可執(zhí)行:

chmod a+x /etc/config/pptp-vpn/status-check.sh

b.進(jìn)入LuCI 的 System -> Scheduled Tasks 填入以下內(nèi)容,并保存:

*/1 * * * * /etc/config/pptp-vpn/status-check.sh

以上實(shí)際上是編輯了 cron 配置,cron 每分鐘運(yùn)行檢測(cè) / 重連腳本,重啟 cron:

/etc/init.d/cron restart

c.靜待幾分鐘,查看 /tmp 目錄,應(yīng)該能看到 vpn_oldgw 和 vpn_status_check.log 文件,查看 vpn_status_check.log 文件,可以看到最近一次檢測(cè) VPN 連接狀態(tài)的時(shí)間。

root@FC_R0:/tmp# ls vpn*
vpn_oldgw             vpn_status_check.log
root@FC_R0:/tmp# cat vpn_status_check.log 
Tue Jul 15 00:04:02 HKT 2014
root@FC_R0:/tmp#

你可以在 LuCI 中斷開 VPN 接口,在接下來的4-5分鐘,觀察 WAN 和 VPN 的重連情況。

d.分別 traceroute www.google.com 和 www.baidu.com ,觀察第二跳的地址:

FL-MBP:~ fatlyz$ traceroute www.google.com | head -n 3
traceroute: Warning: www.google.com has multiple addresses; using 74.125.239.115
traceroute to www.google.com (74.125.239.115), 64 hops max, 52 byte packets
 1  fc_r0.lan (192.168.7.1)  2.161 ms  0.912 ms  0.895 ms
 2  10.7.0.1 (10.7.0.1)  193.747 ms  187.789 ms  289.744 ms
 3  23.92.24.2 (23.92.24.2)  259.323 ms  354.625 ms  408.535 ms
FL-MBP:~ fatlyz$ traceroute www.baidu.com | head -n 3
traceroute to www.a.shifen.com (180.76.3.151), 64 hops max, 52 byte packets
 1  fc_r0.lan (192.168.7.1)  1.190 ms  0.984 ms  0.731 ms
 2  58.111.43.1 (58.111.43.1)  20.616 ms  38.822 ms  18.484 ms
 3  183.56.35.133 (183.56.35.133)  20.056 ms  52.353 ms  87.841 ms

可以看出,已成功對(duì)國(guó)內(nèi)外的目標(biāo)地址進(jìn)行了路由選擇。

至此,OpenWRT 路由的基本配置、PPTP VPN、chnroutes 和自動(dòng)重連已經(jīng)配置完成。

 

 

責(zé)任編輯:林琳 來源: 博客園
相關(guān)推薦

2009-12-31 10:49:36

VPN配置實(shí)例

2009-12-08 17:24:30

路由器配置

2010-08-06 10:33:32

思科路由器限速

2010-08-12 13:41:09

華為3COM保存配置

2011-08-11 15:14:30

2009-02-21 14:30:04

2010-08-04 10:26:24

路由器

2009-12-03 14:16:36

思科路由器

2010-08-13 09:08:11

CISCO配置

2014-01-07 13:17:11

智能路由OpenWRT路由器

2010-08-04 11:30:33

路由器設(shè)置

2010-08-13 10:24:03

思科路由器限速

2013-06-08 16:55:22

Nagios

2009-12-23 15:00:15

正確配置路由協(xié)議

2013-06-07 11:06:20

路由技術(shù)靜態(tài)路由配置路由器

2012-03-31 13:10:47

路由器追蹤

2009-12-23 17:32:35

Linux構(gòu)建軟路由

2010-02-25 09:50:30

WCF路由截獲消息

2019-09-10 13:58:57

動(dòng)態(tài)路由路由器網(wǎng)絡(luò)

2021-08-11 16:34:02

浮動(dòng)路由路由網(wǎng)絡(luò)技術(shù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)