教你如何在Drcom下使用路由器上校園網(以廣東工業大學、極路由1S HC5661A為例)


免責聲明:

  1. 在根據本教程進行實際操作時,如因您操作失誤導致出現的一切意外,包括但不限於路由器變磚、故障、數據丟失等情況,概不負責;
  2. 該技術僅供學習交流,請勿將此技術應用於任何商業行為,所產生的法律責任由您自行承擔;
  3. 部分學校明令禁止使用路由器上網,相關文件請點擊廣東工業大學校園網責任書廈門大學校園網責任書查看。本教程僅用於交流使用,安裝路由器的行為完全是您個人意志所決定的,如您已成功安裝,請在 24 小時內重置路由器至原出產狀態;
  4. 請按照學校推薦的方式連接到互聯網,如因個人問題受到相關校規追責,由您自行承擔。

前言

本教程教您如何在Drcom下使用路由器上校園網(以廣東工業大學、極路由1S HC5661A為例)

本教程適合使用Drcom進行撥號上網的用戶,同時,要求您的路由器支持刷入第三方系統,如openwrt。由於是針對新手的教程,所以敘述部分可能會比較冗雜,您可自行跳到不同的章節。

本教程以極路由1S HC5661A為例,不同型號路由器所對應的教程略有不同,請您注意。

本教程非原創,在以下開發者的基礎上進行改進:

GJXSNickHopps陳浩南

准備工作

  • 一款支持刷入第三方系統(openwrt)的路由器
  • 該路由器已聯網並獲得開發者(root)權限
  • 一根網線
  • 下載軟件WinSCP
  • 下載軟件putty,32位操作系統請下載putty32,64位系統請下載putty64

步驟一:獲取路由器root權限

極路由1S HC5661A為例,在您購買滿14天后,請先登錄極路由器后台,然后依次開通、安裝開發者插件

  • [x] 開通開發者模式:“雲插件”>“路由器信息”>“高級設置”>“開通”
  • [x] 安裝開發者插件:“雲插件”>“全部插件”>“開發者模式”>”確定”

其他路由器可查看其他教程獲取root權限。

步驟二:刷入不死Breed

下載Breed

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上傳到這個目錄

刷入Breed

使用putty64登入你的路由器后台,主機名、賬號、密碼、端口均與上述相同,登入成功后鍵入以下命令

mtd -r write /tmp/breed-mt7628-hiwifi-hc5661a.bin u-boot

顯示rebooting后等待路由重啟完成,不死uboot就完成了刷入了。(注意,為了確定百分百刷入成功,建議此時什么都不要動,等待5分鍾后再進行其他操作)

步驟三:刷入OpenWrt 系統固件

下載對應的OpenWrt 系統固件

鍵入以下命令查看路由器CPU的型號,以確定我們要刷什么版本的固件

cat /proc/cpuinfo

點擊這里OpenWrt Downloads下載對應型號的OpenWrt固件,以極路由1S HC5661A為例,點擊下載openwrt-18.06.2-ramips-mt76x8-hc5661a-squashfs-sysupgrade.bin

如下圖:

開始刷入OpenWrt固件

本小節的步驟請嚴格按照先后順序操作。

  1. 用網線讓路由器的LAN口與電腦的網口相連接;
  2. PC設置為自動獲取IP(一般默認自動獲取IP);
  3. 路由器斷電(就是拔插頭);
  4. 首先按住reset不放!,確保沒有松開reset鍵后,然后,插入路由器電源;
  5. 保持按住reset 3-4秒左右,路由器燈開始一閃一閃的時候,松開reset;
  6. PC網卡獲取到192.168.1.x的地址 (如未獲取到手工設置),一般是192.168.1.1 ;
  7. 瀏覽器訪問 192.168.1.1,接着你就會看到一個uboot控制台的界面。

為了保險起見,首先進行固件備份,以備不時之需。嚴重強烈建議極路由用戶刷Breed后,第一次進入后台就備份一次,這樣以后想要重新刷回官方系統時原有功能不會受到影響,仍然能夠訪問雲平台。

現在正是開始刷入OpenWrt固件,依次點擊固件更新→勾選固件→點擊選擇文件,選擇我們剛剛下載的openwrt-18.06.2-ramips-mt76x8-hc5661a-squashfs-sysupgrade.bin,然后耐心等待固件刷入完成。

安裝完成后會自動重啟,這時可以不斷刷新瀏覽器,直到管理界面顯示出來,如果沒有顯示,建議稍后使用192.168.1.1訪問管理頁面。

賬號:root

密碼:默認為admin

步驟四:安裝Dr.com插件

這里以廣工(廣東工業大學)校園網為例,其他學校請自行獲得相應的Dr.com插件,如果您願意折騰的話,可以點擊這里自行編譯合適自己的學校的Dr.com插件(需要較強的編程基礎,建議還是找現成的)

以下是廣工(廣東工業大學)校園網各個路由器相應版本Dr.com插件下載

路由器版本 下載鏈接
GDUT-極路由HC5661、HC5761和HC5861 下載鏈接
GDUT-極路由HC5661A和HC5861B 下載鏈接
GDUT-極路由HC5962 下載鏈接
GDUT-極路由HC6361 下載鏈接
GDUT-斐訊K2T 下載鏈接
GDUT-斐訊K2P 下載鏈接
GDUT-斐訊K1-PSG1208、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(編輯) 按鈕。

  • Protocol(通信協議):改選為PPPoE,然后點擊出現的 Switch Protocol(切換協議)按鈕。
  • PAP/CHAP username(PAP/CHAP 用戶名):學號
  • PAP/CHAP password(PAP/CHAP 密碼):校園網密碼

點擊 Save & Apply(保存並應用)。這時,路由器本身和有線網已經可以上網了。

2.點擊 Network -> Wireless(無線)。如果提示 Disabled(已禁用)就點擊 Enable(啟用)。可能只有一個 2.4G 的,也可能有一個 2.4G 的、一個 5G 的。點 2.4G 的 Edit(編輯) 按鈕。

  • ESSID:填 WiFi 的名字。

3.點擊 Wireless Security(無線安全)

  • Encryption(加密):改選為WPA2-PSK

  • Key(密碼):填 WiFi 密碼

  • 點擊 Save & Apply(保存並應用)

這時,WiFi 就可以正常聯網啦。

4.配置dr.com客戶端,這里以廣工(廣東工業大學)為例,進行如下配置:

  • 點擊 Network(網絡)-> Interfaces(接口),查看LAN的MAC地址並復制

修改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.orgpool.ntp.orgtime.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(重啟防火牆)。

修改 HTTP 頭的 UA標志

UA 中包含了操作系統版本等信息,而 HTTP 協議沒有對這些信息加密,因此別人可以從這里看到這個數據包發自 Windows 電腦還是安卓手機等(所以根據這個原理,能夠實現檢測到超過1台設備立即強制斷網的效果)。接下來把所有 HTTP 頭中的 UA 都改得一樣(偽裝成只有一台設備,所以就不會被強制斷網了)。

接下來,需要安裝好 Privoxy 並正確配置,然后將所有 HTTP 流量轉發給 Privoxy 代理,並在 Privoxy 中替換 UA。

  • 安裝 Privoxy。進入路由器管理頁面,點擊 System(系統) -> Software(軟件包)。

    • 點擊 Update lists(刷新列表)按鈕,等待幾分鍾。如果提示好幾條“Signature check passed”那么這一步執行成功;如果卡死了,幾分鍾后再進入這個頁面,看到了很長很長的軟件列表,那也是成功了。
    • 在 Filter(過濾器)中填寫luci-app-privoxy,點擊 Find package(查找軟件包)按鈕。點擊下方“luci-app-privoxy”對應的 Install(安裝)按鈕。如果提示好幾條“Configuring xxxx”,那么就是執行成功了;如果卡死后再進入管理頁面,看到有一個 Services(服務)菜單,菜單里有 Privoxy WEB proxy(Privoxy 網絡代理),那也是成功了。

  • 配置 Privoxy 設置。點擊 Services -> Privoxy WEB proxy。

    • Files and Directories(文件和目錄):Action Files 刪除到只剩一個框,填入match-all.action。Filter files 和 Trust files 均留空。
    • Access Control(訪問控制):Listen addresses 填寫0.0.0.0:8118,Permit access 填寫192.168.0.0/16。Enable action file editor 勾選。
    • Miscellaneous(雜項):Accept intercepted requests 勾選。
    • Logging(日志):全部取消勾選。

點擊 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本項目

License

The MIT License (MIT)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM