查看單個文章
  #1  
舊 2017-11-25, 11:28 AM
Ricado 的頭像
Ricado Ricado 目前離線
進階會員
 
註冊日期: 2004-07-13
住址: 蕃薯島,打狗城
文章: 4,454
預設 短網址(轉址機)與 DDNS 比較

最近因為發布了 24h.name 的 DDNS 服務,有幾位大大詢問是用哪一套源碼架設的,也有部分的大大拿來跟短網址做比較。以下就針對這兩種服務的差異與技術門檻做個說明。

首先介紹大家比較熟悉的轉址服務。轉址服務依據網址的型態分成兩大類、三種。



第一類的轉址有些人稱為次網域轉址,網址的型態類似 yourname.example.tw 這樣。至其實稱不上次網域,只能稱為萬用字元的轉址。在三類中,這一類的技術門檻最高,不過也高不到哪裡,就是要增加一筆 *.example.tw 的 CName 紀錄,同時 Web Server 要能夠支援萬用字元。

第二類就是所謂虛擬目錄轉址,網址型態類似 example.tw/yourname,其實這個也不能稱為虛擬目錄,如果把它改寫成 example.tw/defalut.asp?ID=yourname,應該就比較容易懂了。當伺服器收到這一個連結,就知道 ID = yourname,系統就去查詢 yourname 這個 ID 要導向的網址是什麼,然後就回應一個轉址的標頭給瀏覽器,瀏覽期就會重新轉向到目標的網址。

第二類還有一種變形,就是 ID 不讓您設定,因此就沒有搜尋和管理的工作要做,每個人申請時,就自動產生一個 ID 給你。tinyurl 就是採用這種方式。三種服務裡面,這種的門檻和管理成本最低,這種方式賣的是一種創意。

建置轉址服務需要的就是一個網域,一個網站就完成了。使用者先瀏覽到轉址機,轉址機依據網址的 ID,回覆目標網站的網址,就那麼簡單。


接下來介紹 DDNS 服務,DDNS(Dynamic DNS)是網域名稱解析系統(DNS)中一種自動更新DNS Server 內容的技術。

我們若在某一個網域名稱下新增一筆主機紀錄(A 或是 AAAA),根據網際網路的DNS 的規則,這個紀錄必須指向一個IP位址,其中 A 紀錄必須指向 IPv4 的位址,AAAA 必須指
向 IPv6 的位址。當用戶瀏覽網域所有人所提供的網址時,就可以透過網域名稱解析(DNS),取得網址所對應的 IP 位址。正常來說,這個 IP 必須是固定的,就像手機的通訊錄一樣,如果通訊錄裡面所對應的電話是不固定的,那維護這個通訊錄就沒有什麼價值了。因此,對於使用動態 IP 的人來說,標準的 DNS 系統對他們來說也就沒有什麼價值了,因此便有了 DDNS 系統的需求。

就技術層面來說,DDNS服務是指建立一個可以讓用戶使用傳統的 DNS查詢方式查詢網址,但是又能夠自動更新DNS記錄的名稱伺服器。也就是當 DNS 所對應的 IP 變更了,
DNS Server 能夠獲得通知,並自動更新,不需要手動編輯。(相關的規範可以參考RFC 2136)。

就使用者來說, DDNS允許使用者將網址指向一個可能經常改變的IP位址;再讓經常改變IP位址的裝置,能夠將最新的 IP 位址持續性的更新到 DNS Server。這樣就可以透過一個熟知的網址,連接到一個可能經常動態改變IP位址的機器。



建置 DDNS 系統最核心的問題就是一個【快】,快速更新,快速解析。
以小弟公司目前建置的 DDNS 系統,針對快這一部分,我們做了非常多的設計:
1. 每一筆紀錄的 TTL 最低可以設到 20 秒。
2. 主機接收到用戶端的更新之後,使用自行改良的 DNS 更新技術,可以立即推播到全球 48 台 DNS Server。
3. 採用全球分區配置方式,幾乎每一地區都有近距離的 DNS Server。


【總結】
  • 實用/普及性:
    1. 短網址實用/普及性遠超過 DDNS,屬於【民生用品】 。只要是個網址都可以成為轉址目標
    2. DDNS對應的是一個 IP,如果沒有架站或是管理網路設備,可能就用不到了。
  • 建置成本:
    1. 短網址需要的建置成本較低,實作較簡單。
    2. DDNS 建置成本較高,技術門檻較高。
  • 使用技術:
    1. 短網址使用的技術包括網頁程式、資料庫查詢。
    2. DDNS使用的技術包括網頁程式、資料庫查詢、DNS Server架設、DNS 資料推播等技術。
  • 頻寬/流量:
    1. 理論上短網址耗費的頻寬較多,因為訪客必須先連線到轉址機,在轉址到目標主機。
    2. DDNS主機,除了管理設定外,會用到的流量就是 IP 更新才會用到,IP 更新的頻率並不是那麼高。至於 DNS Server 的流量,每一百萬次查詢只需 200MB 的流量,相對網站來說,非常小。
    3. 訪客瀏覽一個網站,只需要查詢一次 DNS取得對應的 IP,接下來的網頁互動,就和 DNS Server 無關了。

此篇文章於 2017-11-25 03:14 PM 被 Ricado 編輯。
回覆時引用此篇文章