因為想再我的mini上架站所以需要用到 Dynamic DNS 這個服務,因為我是用動態ip不知道在mac有沒有可以自動上傳更新ip的 Dynamic DNS update 軟體這樣我就可以不用沒次 手動更新了http://www.dyndns.org/support/clients/上去 DynDNS.org 這個大站, 竟然給我說 目前這種軟體只有支援 “視窗“ 的版本for Mac is cooming soon....... 請教各位大大有何解決方案
www.dyndns.org 可以直接透過網頁更新 DNS主要的網址是:http://帳號:密碼@members.dyndns.org/nic/update?hostname=xxx.dyndns.org但是 Dyndns 會檢查更新情況, 如果更新速度太頻繁, 會暫停使用.所以那些軟體的功能, 可能是先檢查 IP 是否符合, 再看看要不要更新.或者是在 Dyndns 允許的時間超過之後, 才進行更新.而配合 IP 分享器, 可以自己寫個小程式來更新:(註: 由於其中使用到一些功能會依 IP 分享器機型而不同)1. 設定 ipnew 變數, 取得 IP 分享器上目前的 IP2. 從硬碟抓 ipnow 這個檔案, 這是之前存檔的 IP , 放到 ipnow 變數3. 透過 host 檢查網路上實際查到的 IP4. 如果 ipnew 和 ipnow 相同, 而且 ipnew 和 iphost 也相同, 表示 ip 還沒更新過, 不進行任何動作, 結束程式.5. 如果以上有任一者不相同, 表示 IP 很可能有換過, 進行重新設定 IP 的動作.5a. 把新的 IP 存到 ipnow5b. 使用 wget 這套軟體, 去連結 Dyndns 的更新網頁, 進行更新動作.*. 然後設定 crontab , 我是設定每 5 分鐘一次(因為 ISP 斷線, IP 分享器重新取得 IP 大約需要 1 分多鐘, 所以最短建議 3 分鐘以上, 以免更新太頻繁被暫停)(原始程式以 bash 寫的, 如果使用其他 sh 則可能要稍微修改.#!/bin/shipnew=`lynx -dump -auth=root:root 192.168.1.1/wancfg.cmd?action=view | grep "PPPoE" | awk '{print $9}'`ipnow=`cat ~/ipnow`iphost=`host xxx.dyndns.org | awk '{print $4}'`if [ "$ipnew" == "$ipnow" ] && [ "$ipnew" == "$iphost" ] ; thenexitelseecho "$ipnew" > ~/ipnowwget -q --delete-after "http://帳號:密碼@members.dyndns.org/nic/update?hostname=xxx.dyndns.org"fi參考資料:1. Dyndns 更新太頻繁的處理2. 更新 Dyndns 的網頁參數