[Openwrt項目開發筆記]系列文章傳送門:http://www.cnblogs.com/double-win/p/3888399.htmlhtml
正文:node
在上一節中,我主要講述瞭如何在Openwrt上安裝Samba服務器以及Ftp服務器。在本節中,我將介紹一下,一個比較實用的功能:DDNS。爲遠程物聯網控制打下基礎。web
題外話:DDNS設置本來是極爲簡單的。但是因爲個人路由所在現實環境的緣由,以及我我的能力有限,一直沒法達到我預期的目的,真是有點累覺不愛了。數據庫
ok,言歸正傳,開始拋乾貨!服務器
1、安裝DDNS服務網絡
opkg update
opkg install ddns-scripts luci-app-ddns
2、註冊一個動態域名app
關於動態域名服務商,有太多的選擇。到底選擇哪一個,全憑隨我的喜愛,我就具體不推薦了。在本文中,僅以我我的使用的changeip.com的域名做爲說明。changeip的官網以下:dom
https://www.changeip.com/
點擊Create Account 進行註冊一個帳號:url
點擊login,進入以下界面:spa
選擇一個free ddns:
選好以後就會進入以下界面:
以後填一下我的信息便可。
最後能夠經過管理界面,對動態域名進行管理:例如在Home界面下,點擊圖中「DNS Manager」:
進入管理頁面:
分別點擊下圖中的兩個鏈接:
分別能夠獲得以下結果:
3、使用DDNS並設置
1. 設置/etc/config/ddns
config 'service' 'myddns' option 'interface' 'wan' #選擇接口,wan,lan option 'check_interval' '10' #檢查ip變更的時間間隔 option 'check_unit' 'minutes' #檢查ip變更的時間單位 option 'enabled' '1' #是否啓用 option 'ip_source' 'web' #ip來源(網絡,接口,URL) option 'service_name' 'changeip.com' #選擇服務商 option 'domain' 'XXXXXXXXX' # XXXXXXXX動態域名 option 'username' 'YYYYYY' # YYYYYY 用戶名 option 'password' 'ZZZZZZ' # ZZZZZZ 密碼 option 'ip_url' ' http://[USERNAME]:[PASSWORD]@nic.changeip.com/nic/update?u=[USERNAME]&p=[PASSWORD]&cmd=update&hostname=[DOMAIN]&ip=[IP]"' #IP的更新URL option 'force_interval' '2' #強制更新間隔時間 option 'force_unit' 'minutes' #強制更新間隔時間單位
2. 添加ddns的IP變更的觸發事件
進入/etc/hotplug.d/iface/ 增長一個 30-ifup.sh,一旦網絡發生變化,檢查IP設置
#!/bin/sh # wan ifup
password=XXXXXXXX
username=YYYYYYYY
ddns=ZZZZZZZZZZZ
[ $ACTION = "ifup" -a $INTERFACE = "wan" ] && { ifconfig wan >> /tmp/mail.txt cat /tmp/mail.txt | ssmtp -v examples@maildomian.com # mail address sleep 60 cat /tmp/mail.txt | ssmtp -v examples@maildomian.com
} wget -q -0- 'http://nic.changeip.com/nic/update?u=$username&p=${password}&hostname=${ddns}&iffline=1' wget -q -0- 'http://ip.changeip.com/'
4、遇到的問題及解決方案
1. 個人路由器所在的工做環境:
a. 最外層上網機: 具有雙網卡,外網採用inode撥號,利用網絡共享,將Windows網卡設置網絡共享,共享給內網網卡。內網網卡沒有開啓dhcp功能。
b. 內網使用靜態路由,有多臺機器經過交換機鏈接到外層上網機的內網網卡。
c. 路由器wan鏈接到交換機的一個口上,使用靜態ip。路由器的內網則採用DHCP。
在設置ddns以後,只能解析到最外層上網機的IP。
備註,能夠申請一個外網撥號接口,路由器能夠鏈接到撥號網口上。
解決辦法:
方法一:將inode撥號移植到Openwrt上,直接經過inode進行撥號上網。
在恩山上看到大神有移植過inode的帖子,惋惜在我移植的過程當中出現好多問題。。
方法二:設置端口映射。這個方法,我尚未弄清楚。。。。太水了 -.-!!
若是哪位大神有比較好的方法,歡迎討論啊~~
ok,DDNS的設置就暫時講到這裏了,木有解決問題,好不甘心!!!!
後面若是解決了問題,那麼就開個單章將解決方法詳細的描述一下。
---------------------------------------------------------------
預告:在下一節中,我將介紹MySQL數據庫的安裝與使用。
轉載請註明出處: http://www.cnblogs.com/double-win/ 謝謝!