動態域名解析替代方案,固定網址(URL)訪問動態IP的Openwrt路由器方法實現。
身在公司想控制家里的Openwrt路由器,而家里的路由器又是動態IP,無法通過固定IP訪問,此時你可以使用動態域名解析服務達到這一目的,但是如果由于種種原因你無法使用動態域名解析服務,本方案是你最佳第二選擇。
在路由器端安裝自啟動腳本,實時檢測路由器外網IP地址,如果發送變動就向貝殼物聯服務器上報最新IP地址,貝殼物聯將這一IP與固定URL綁定,實現通過互聯網固定URL訪問到動態IP的路由器。
注:實現前提,需要通過外網ip能訪問到該路由器,設置可參見:外網控制訪問openwrt路由器的設置
2、進入會員中心,添加Dns網關,如下圖:
點擊添加網關,進入如下界面:
按圖中說明填寫,點擊確定,即可生成一個Dns網關和固定訪問URL,通過此URL即可訪問你的設備。
3、動態綁定IP
由于你的智能設備ip是動態ip,有可能在重新連接外網后發生變化,所以要在路由器或其他智能設備,添加腳本,在路由器ip發生變化時告知Dns網關你的最新ip。
更新Dns網關綁定的ip,可以通過訪問 http://www.smgyp.com/Dns/updateDns?id=【Dns網關id】&ip=【路由器ip】&pw=【Dns網關密碼】&pt=【欲綁定的端口】
參數可采用post或get方式發送。
以openwrt路由器為例說明腳本使用方法。
本站所有公開代碼托管于GitHub,方便大家使用和共同參與完善,地址:https://github.com/bigiot?tab=repositories
進入以上鏈接,依次點擊 bigiotOpenwrt -> Download ZIP下載。
下載后解壓,得到如下文件:
/ connectBigiot/ updateDns/ ...
使用WinSCP將updateDns文件夾下所有文件上傳至路由器/home目錄,也可以為其他目錄。
在openwrt設置界面的選擇系統->計劃任務,在計劃任務中添加如下命令,并在末尾加回車:
*/2 * * * * /home/updateDns.sh 1 44fd8e97e 80
crontab命令行解釋如下:
*/20 * * * *
表示20分鐘執行一次腳本;
/home/updateDns.sh
為腳本位置;
1
是申請的Dns網關的ID 必填
ddfd8XXXX
是申請的Dns網關密碼 必填
80
綁定的端口 默認為80 可選(圖中設置為2002端口)
通過以上腳本即可在您的ip地址變動時通知貝殼物聯Dns網關。
2、其他腳本
暫無,歡迎大神git提交其他腳本。
=======================完===畢===========================
如有疑問請到話題討論區進行討論。