免責聲明:php
- 在根據本教程進行實際操做時,如因您操做失誤致使出現的一切意外,包括但不限於路由器變磚、故障、數據丟失等狀況,概不負責;
- 該技術僅供學習交流,請勿將此技術應用於任何商業行爲,所產生的法律責任由您自行承擔;
- 部分學校明令禁止使用路由器上網,相關文件請點擊廣東工業大學校園網責任書、廈門大學校園網責任書查看。本教程僅用於交流使用,安裝路由器的行爲徹底是您我的意志所決定的,如您已成功安裝,請在 24 小時內重置路由器至原出產狀態;
- 請按照學校推薦的方式鏈接到互聯網,如因我的問題受到相關校規追責,由您自行承擔。
本教程教您如何在Drcom下使用路由器上校園網(以廣東工業大學、極路由1S HC5661A爲例)linux
本教程適合使用Drcom進行撥號上網的用戶,同時,要求您的路由器支持刷入第三方系統,如openwrt。因爲是針對新手的教程,因此敘述部分可能會比較冗雜,您可自行跳到不一樣的章節。android
本教程以極路由1S HC5661A爲例,不一樣型號路由器所對應的教程略有不一樣,請您注意。git
本教程非原創,在如下開發者的基礎上進行改進:github
以極路由1S HC5661A
爲例,在您購買滿14天后,請先登陸極路由器後臺,而後依次開通、安裝開發者插件ubuntu
其餘路由器可查看其餘教程獲取root權限。centos
Breed是一個路由器的Bootloader(Bootloader 意爲引導加載器,即爲用於加載操做系統的程序。它是一大類此類功能程序的統稱。如今的 BIOS、UEFI、GRUB、RedBoot、U-Boot、CFE等都是 Bootloader),裝它的目的是爲了下一步刷入固件(ROM)。以極路由1S HC5661A
爲例,不一樣型號下載不一樣的Breed,請務必對號入座,下載breed-mt7628-hiwifi-hc5661a.bin瀏覽器
使用WinSCP登入你的路由器後臺,其中:安全
主機名:你的後臺管理地址(好比192.168.1或者192.168.1.199)
帳號:root
密碼 :你的後臺管理密碼
端口:1022或者22(自行測試)
模式:SCP
登錄成功後進入/tmp目錄
,將剛纔下載的breed-mt7628-hiwifi-hc5661a.bin上傳到這個目錄
使用putty64登入你的路由器後臺,主機名、帳號、密碼、端口均與上述相同,登入成功後鍵入如下命令
mtd -r write /tmp/breed-mt7628-hiwifi-hc5661a.bin u-boot
顯示rebooting後等待路由重啓完成,不死uboot就完成了刷入了。(注意,爲了肯定百分百刷入成功,建議此時什麼都不要動,等待5分鐘後再進行其餘操做)
鍵入如下命令查看路由器CPU的型號
,以肯定咱們要刷什麼版本的固件
cat /proc/cpuinfo
點擊這裏OpenWrt Downloads下載對應型號的OpenWrt固件,以極路由1S HC5661A
爲例,點擊下載openwrt-18.06.2-ramips-mt76x8-hc5661a-squashfs-sysupgrade.bin
以下圖:
本小節的步驟請嚴格按照前後順序操做。
爲了保險起見,首先進行固件備份,以備不時之需。嚴重強烈建議極路由用戶刷Breed後,第一次進入後臺就備份一次,這樣之後想要從新刷回官方系統時原有功能不會受到影響,仍然可以訪問雲平臺。
如今正是開始刷入OpenWrt固件,依次點擊固件更新→勾選固件→點擊選擇文件,選擇咱們剛剛下載的openwrt-18.06.2-ramips-mt76x8-hc5661a-squashfs-sysupgrade.bin,而後耐心等待固件刷入完成。
安裝完成後會自動重啓,這時能夠不斷刷新瀏覽器,直到管理界面顯示出來,若是沒有顯示,建議稍後使用192.168.1.1訪問管理頁面。
帳號:root
密碼:默認爲admin
這裏以廣工(廣東工業大學)校園網爲例
,其餘學校請自行得到相應的Dr.com插件,若是您願意折騰的話,能夠點擊這裏自行編譯合適本身的學校的Dr.com插件(須要較強的編程基礎,建議仍是找現成的)
如下是廣工(廣東工業大學)校園網
各個路由器相應版本Dr.com插件下載
路由器版本 | 下載連接 |
---|---|
GDUT-極路由HC566一、HC5761和HC5861 | 下載連接 |
GDUT-極路由HC5661A和HC5861B | 下載連接 |
GDUT-極路由HC5962 | 下載連接 |
GDUT-極路由HC6361 | 下載連接 |
GDUT-斐訊K2T | 下載連接 |
GDUT-斐訊K2P | 下載連接 |
GDUT-斐訊K1-PSG120八、K2-PSG1218和K2G | 下載連接 |
GDUT-ramips-rt305x | 下載連接 |
說明:
因爲路由器版本太多,若您在上面沒有找到對應的路由器型號,建議選擇本身編譯(難度很低)
將下載的Dr.com插件
用WinSCP
傳到路由器/tmp
文件夾下(WinSCP的使用方式上面已經闡述過)。
打開並登陸putty,進行安裝Dr.com,請鍵入如下命令:
cd /tmp opkg install gdut-drcom_6.0-4_mipsel_24kc.ipk
至此,Dr.com插件安裝完畢。
對於沒有上述對應型號路由器的廣工(廣東工業大學)同窗
,可進行如下步驟進行編譯生成本身的Dr.com插件.
1.首先路由器CPU的型號
,鍵入如下命令查看cat /proc/cpuinfo
2.而後進入OpenWrt 18.06,根據本身路由器的路由器型號
進入相應的網站,以極路由HC5661A爲例
,進入ramips/mt76x8,找到openwrt-sdk-18.06.0-ramips-mt76x8_gcc-7.3.0_musl.Linux-x86_64.tar.xz並下載
3.在linux系統下(建議debian或者ubuntu,不建議centos),鍵入如下命令:
#本教程在 Debian 8.9系統下完成的 #先更新包列表 sudo apt-get update #安裝ncurses,不一樣Linux版本執行不一樣命令 #Debian/Ubuntu 執行下面這1條命令,2選1 sudo apt-get install libncurses5-dev libncursesw5-dev #CentOS 執行下面這條命令,2選1 yum install ncurses-devel ncurses #再次更新包列表 sudo apt-get update #安裝awk,執行過程當中有任何提示,請輸入Y確認 sudo apt-get install gawk #安裝git,執行過程當中有任何提示,請輸入Y確認 sudo apt-get install git #在home目錄下完成咱們的工做,最好不要在root下 cd /home #在線下載咱們的openwrt-sdk,這一步網絡比較慢,下載可能比較久 #若是你想加快速度,則請從其餘電腦*fan*qiang*下載完成後傳輸到這個位置(/home) wget https://archive.openwrt.org/releases/18.06.0/targets/ramips/mt76x8/openwrt-sdk-18.06.0-ramips-mt76x8_gcc-7.3.0_musl.Linux-x86_64.tar.xz #解壓咱們剛剛下載的openwrt-sdk,假設這個壓縮包已經放在/home目錄下了 tar xvJf openwrt-sdk-18.06.0-ramips-mt76x8_gcc-7.3.0_musl.Linux-x86_64.tar.xz #進入該文件夾 cd openwrt-sdk-18.06.0-ramips-mt76x8_gcc-7.3.0_musl.Linux-x86_64 #生成key-build文件,這裏不解釋,有興趣的能夠本身去搜搜 ./staging_dir/host/bin/usign -G -s ./key-build -p ./key-build.pub -c "Local build key" #再進入package文件夾,並下載drcom ODP文件夾 cd package && git clone https://github.com/GJXS1980/ODP.git #返回上層目錄,也就是爲了回到openwrt-sdk這個目錄 cd .. #開始編譯 make package/ODP/compile #編譯到最後的時候,會彈出一個框 #首先,經過移動鍵盤左右鍵,移到SAVE,而後按下回車鍵,接着再按下回車鍵選擇OK,再次按下回車鍵選擇Exit #最後,經過移動鍵盤左右鍵,移到Exit,按下回車鍵確認。 #等待幾秒鐘編譯完成 #最終生成的yyy.ipk文件的位置爲咱們所下載的openwrt-sdk目錄下的bin/packages/xxx/base/yyy.ipk
4.最終生成的yyy.ipk文件的位置爲咱們所下載的openwrt-sdk目錄下的bin/packages/xxx/base/yyy.ipk
,到這裏你也有一個適合本身路由器的drcom插件了,回到步驟四安裝Dr.com客戶端
1.點擊 Network(網絡)-> Interfaces(接口),點擊「WAN」對應的 Edit(編輯) 按鈕。
PPPoE
,而後點擊出現的 Switch Protocol(切換協議)按鈕。點擊 Save & Apply(保存並應用)。這時,路由器自己和有線網已經能夠上網了。
2.點擊 Network -> Wireless(無線)。若是提示 Disabled(已禁用)就點擊 Enable(啓用)。可能只有一個 2.4G 的,也可能有一個 2.4G 的、一個 5G 的。點 2.4G 的 Edit(編輯) 按鈕。
3.點擊 Wireless Security(無線安全)
WPA2-PSK
Key(密碼):填 WiFi 密碼
點擊 Save & Apply(保存並應用)
這時,WiFi 就能夠正常聯網啦。
4.配置dr.com客戶端,這裏以廣工(廣東工業大學)
爲例,進行以下配置:
修改Dr.com客戶端的配置
配置完成後,重啓路由器
,耐心等待若干分鐘(15分鐘內),查看是否撥號成功。
NTP 就是用來同步兩臺電腦上的時鐘的協議。接下來先啓用 OpenWrt 自帶的 NTP 服務器,而後將局域網內全部時鐘校訂的請求都發給路由器上的 NTP 服務器(也就是說,無視局域網內的電腦本來想要和哪臺服務器同步時間,而強制將路由器上的時鐘做爲標準),這樣局域網內全部的電腦上的時間都會變得一致。
點擊 System(系統)->System(系統),只須要在管理頁面中修改幾個設置就能夠了。
配置 NTP 服務。點擊 System -> System。
勾選 Enable NTP client(啓用 NTP 客戶端)和 Provide NTP server(做爲 NTP 服務器提供服務)。
NTP server candidates(候選 NTP 服務器)四個框框分別填寫
cn.pool.ntp.org
、pool.ntp.org
、time.apple.com
。
點擊 Save & Apply 按鈕。
配置防火牆轉發。點擊 Network -> Firewall(防火牆),而後點擊 Custom Rules 標籤,在大框框裏另起一行,添加下面的代碼:
iptables -t nat -N ntp_force_local iptables -t nat -I PREROUTING -p udp --dport 123 -j ntp_force_local iptables -t nat -A ntp_force_local -d 0.0.0.0/8 -j RETURN iptables -t nat -A ntp_force_local -d 127.0.0.0/8 -j RETURN iptables -t nat -A ntp_force_local -d 192.168.0.0/16 -j RETURN iptables -t nat -A ntp_force_local -s 192.168.0.0/16 -j DNAT --to-destination 192.168.1.1
第六行最後的192.168.1.1
須要修改成你的路由器的管理頁面地址。例如,你的管理頁面地址是192.168.10.1
,那麼這一行代碼須要修改成:
iptables -t nat -A ntp_force_local -s 192.168.0.0/16 -j DNAT --to-destination 192.168.10.1
而後點擊 Restart Firewall(重啓防火牆)。
UA 中包含了操做系統版本等信息,而 HTTP 協議沒有對這些信息加密,所以別人能夠從這裏看到這個數據包發自 Windows 電腦仍是安卓手機等(因此根據這個原理,可以實現檢測到超過1臺設備當即強制斷網的效果)。接下來把全部 HTTP 頭中的 UA 都改得同樣(假裝成只有一臺設備,因此就不會被強制斷網了)。
接下來,須要安裝好 Privoxy 並正確配置,而後將全部 HTTP 流量轉發給 Privoxy 代理,並在 Privoxy 中替換 UA。
luci-app-privoxy
,點擊 Find package(查找軟件包)按鈕。點擊下方「luci-app-privoxy」對應的 Install(安裝)按鈕。若是提示好幾條「Configuring xxxx」,那麼就是執行成功了;若是卡死後再進入管理頁面,看到有一個 Services(服務)菜單,菜單裏有 Privoxy WEB proxy(Privoxy 網絡代理),那也是成功了。match-all.action
。Filter files 和 Trust files 均留空。0.0.0.0:8118
,Permit access 填寫192.168.0.0/16
。Enable action file editor 勾選。點擊 Save & Apply。
配置防火牆轉發。點擊 Network -> Firewall(防火牆),而後點擊 Custom Rules 標籤,在大框框裏另起一行(注意,以前已經添加了6行代碼,不要把剛剛添加的幾行代碼給刪除了),添加下面的代碼:
iptables -t nat -N http_ua_drop iptables -t nat -I PREROUTING -p tcp --dport 80 -j http_ua_drop iptables -t nat -A http_ua_drop -m mark --mark 1/1 -j RETURN iptables -t nat -A http_ua_drop -d 0.0.0.0/8 -j RETURN iptables -t nat -A http_ua_drop -d 127.0.0.0/8 -j RETURN iptables -t nat -A http_ua_drop -d 192.168.0.0/16 -j RETURN iptables -t nat -A http_ua_drop -p tcp -j REDIRECT --to-port 8118
點擊 Restart Firewall(重啓防火牆)按鈕。
使用 Privoxy 替換 UA。打開http://config.privoxy.org/edit-actions-list?f=0
,若是打不開,請重啓路由器多測試幾遍。點擊 Edit 按鈕。在Action 那一列中,hide-user-agent 改選爲 Enable(綠色),在右側 User Agent string to send 框中填寫如下內容:
Privoxy 3.0.26
其它所有選擇爲 No Change (紫色)。最後點擊 Submit 按鈕,再次重啓路由器
驗證防檢測效果。
手機鏈接到該路由器的WIFI,使用手機(注意關閉爲屁嗯後再測試)在瀏覽器打開http://www.atool.org/useragent.php
,查看結果是否爲Windows NT 6.3,而不是android或者iphone。
注意關閉爲屁嗯後再測試!注意關閉爲屁嗯後再測試!注意關閉爲屁嗯後再測試!
因爲使用了Privoxy代理,會使得全部的http流量均被轉發到Privoxy,時間一舊,網絡會變成異常慢。爲了保證良好的網絡,能夠天天凌晨讓路由器自動重啓一遍以恢復路由器系統響應速度。
打開如下頁面,鍵入如下代碼(具體時間可自行更改):
40 2 * * * sleep 5 && touch /etc/banner && reboot //天天凌晨2點40分路由器自動重啓 40 4 * * * sleep 5 && touch /etc/banner && reboot //天天凌晨4點40分路由器自動重啓 40 6 * * * sleep 5 && touch /etc/banner && reboot //天天凌晨6點40分路由器自動重啓
提交後,而後打開如下頁面,重啓cron
服務
至此,全部步驟均已配置完畢,能夠安心上網了。
完整版
請點擊這裏打開GitHub項目地址
項目持續更新,歡迎您star本項目