幾經波折,還是決定自己來架設一台 server ,用的是陪我走過大學研究所六年的電腦,七年了,七年之癢了,換了新電腦,就拿來當 server 吧~家裏用的是沒有固定 IP 的 ADSL,於是去 DynDNS 申請了個免費帳號。不過因為是免費的,domain name 的名字不是那麼自由,就像這篇教學文所說的:想要得到 *.tw 結尾的網址要付錢,而且只有 *.idv.tw 比較便宜,*.net.tw 或 *.org.tw 等都不是那麼容易,除非執念太深,不然使用推薦使用 DynDNS 這類免費的服務,有些名字還至於太糟。
申請 DynDNS
到 https://www.dyndns.com/ 後,按下網頁右上角的 Create Account 就可以申請帳號了。
有了帳號後,還需要一個小程式,讓它常駐在系統裡,當 ADSL 撥接上後就可以自動連接到 DynDNS 去更新 IP 與 domain 的對應。
Windows
在 Windows 上可以用DynDNS Updater: http://cdn.dyndns.com/windows/DynUpSetup.exe 提供的工具,相當不傷腦又好用。
Linux
稍稍麻煩了點,需要 ddclient 這程式,主流的 distribution 都可以用套件管理程式取得,或是到這邊來下載。ddclient 的設定檔放在 /etc/ddclient.conf 下,網路上有很多教學,指導怎麼寫這設定檔,但最方便莫過於使用 DynDNS 提供的 config file generator 了。登入 DynDNS 後,點選 https://www.dyndns.com/support/tools/clientconfig.html 這網址,就會看到下方的頁面,選擇你要產生的 domain 和工具類型即可。
下面就是產生的設定檔,比起網路上有得教學和既有設定簡潔許多。
## ddclient configuration file daemon=600 # check every 600 seconds syslog=yes # log update msgs to syslog mail-failure=keiko.zhou@gmail.com # Mail failed updates to user pid=/var/run/ddclient.pid # record PID in file. ## Detect IP with our CheckIP server use=web, web=checkip.dyndns.com/, web-skip='IP Address' ## DynDNS username and password here login=Keiko password=##YOUR PASSWORD## ## Default options protocol=dyndns2 server=members.dyndns.org ## Dynamic DNS hosts keiko.homelinux.net
根據好心人提示,為防萬一,第一次使用 ddclient 時,建議可以用 debug mode ,確定設定檔行不行得通。
ddclient -daemon=0 -debug -verbose -noquiet
成功啟動的話,會看到類似下圖的畫面。