【經驗分享】使用DD-WRT內建功能實現斷線自動重連

最近我這台刷了DD-WRT,作為主路由器使用的TL-WR740N無線路由器(以下簡稱DD-WRT)偶爾會發生因為跑BT而導致當機斷線的問題。雖然每次只要重新開機就可以回復,但是每次都要手動重開機還是有點麻煩,所以我打算讓DD-WRT「在斷線的時候自動重開機」,省去手動重開的麻煩。

這是在使用BT下載的時候的連線數,幾乎每次斷線都是因為它而導致

至於要怎麼讓DD-WRT在斷線時自動重開機?除了今天要分享的這個方法以外,我還有嘗試過用SSH的方式遙控。具體就是使用另一台24小時運作的Linux主機,這裡我使用網站伺服器,透過指令檢查連線狀況;當斷線時就自動透過SSH連線到DD-WRT,執行reboot指令重開。

不過我最近發現,其實在DD-WRT中就可以實作斷線重開的機制,不必透過別台主機遙控。這個就是這篇文章要分享的方法。

此方法是參考自這篇文章:DDWRT VPN: How to Enable Connection Watchdog / Keep Alive | (torguard.net)

具體步驟如下:

  1. 登入DD-WRT-打開瀏覽器,輸入你的DD-WRT路由器管理介面的IP位址,預設為192.168.1.1;然後輸入所設定的帳號密碼即可登入。
    登入之後的畫面如下:
  2. 點選上面的”Administration(系統管理)”→”Keep Alive(保持連線)”標籤,切換到以下畫面
  3. 找到上圖的WDS/Connection Watchdog(WDS/連接看門狗),將其設為Enable(啟用),然後在IP Addresses(IP位址)輸入任意一個外網的IP(例如Google的DNS,我是使用8.8.8.8)。
    Interval(更新)則是檢查間隔時間,單位為秒,看你想要讓它多久檢查一次就設定多少秒。這裡是設定360秒,即6分鐘。
  4. 完成之後先後點選Save與Apply Settings就可以了(我個人是這樣操作的,也可以直接點Apply Settings就可以了)

這樣子DD-WRT就會每隔6分鐘自動檢查是否能連線到Google DNS(或是其他所指定的IP位址);如果不通的話就會自動重開機,直到正常連線為止。

題外話:

  • 這裡我的DD-WRT是設定成英文,因為設成中文的話會有少數地方的文字顯示成亂碼(我用的是較舊的版本)。我知道新版本已經解決了亂碼的問題,但是不知為何新版本就是無法在我的這台TL-WR740N上正常運作,所以就留在舊版本了。那為了避免中文顯示亂碼,所以就一直用英文。
  • 此方法理論上大部分的上網方式都可以使用,例如透過固定IP、浮動IP,抑或是PPPoE(可能需要在路由器中設定硬撥)等方式。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料