2003.12.01第24期
  TWNIC最新消息國內外網路動態活動快報網路統計網路專欄前期電子報回首頁


中文域名的現況與未來發展
IETF於2003年3月發布通過國際化域名(IDN)技術標準有關之3篇RFCs,中文域名服務有巨大轉變,使用中文域名之網路環境日趨成熟,讓中文域名註冊者可以依循國際化標準將DNS和Web伺服器調整設定,本文將介紹依IDN標準調整DNS、Web伺服器設定方法與IDN標準對中文域名使用環境之影響。


前言
 幾年前即有中文域名提供服務,然因國際化網域名稱標準尚未制定完成,只能運用各種技術提供解析服務,如修改DNS、Web伺服器原始碼以支援中文域名、將中文域名進行RACE編碼再下載軟體配合解析等。在沒有國際化網域名稱標準支援下,Internet環境又不支援中文域稱,大家不敢冒然進行DNS、Web伺服器(支援中文域名版本)改版、且使用者端的應用程式及resolve也不支援中文域名,下載軟體亦難以普及,造成了中文域名難已普遍被使用。IETF於2003年3月發布通過國際化域名(IDN)技術標準有關之3篇RFCs,中文域名服務有了大轉變,有知名瀏覽器Netscape和Mozilla 軟體支援這項標準,各中文域名註冊商亦支援這項標準,DNS server之zone file支援IDN標準之punycode 編碼,同時提供了輔助解析機制,使用中文域名之網路環境日趨成熟,讓中文域名註冊者可以依循國際化標準將DNS和Web伺服器調整設定,本文將介紹依IDN標準調整DNS、Web伺服器設定方法與IDN標準對中文域名使用環境之影響。

IDN標準
 IDN標準定義了IDN協定以及和原DNS協定之間的關係與架構。包括在解析IDN時,將IDN從輸入、NAMEPREP處理、PUNYCODE處理、輸出IDN的Punycode編碼到DNS協定,在這過程之間所需的各種先期處理以及之間的搭配關係。NAMEPREP包括Mapping、Normalization、Prohibition三大處理程序,主要是儘可能將IDN的在經過對照(Mapping)、正規化(Normalization)、禁止檢查(Prohibition)的處理後,得到一個符合IDN規格的形式。PUNYCODE則是將一個經過NAMEPREP處理過之IDN,從一個8位元的編碼的形式轉換為7位元編碼的形式。目前Internet DNS一向是7位元ASCII編碼的環境,經過這個PUNYCODE轉碼程序,便將IDN從一個8 位元的IDN轉換為與現有DNS環境相容的編碼,例如有個中文域名是 “中文大學.tw” 則它的punycode 編碼就是 “xn--fiq80y3xbiwr.tw”,可利用http://中文.tw/technology/punycode.htm (http://xn--fiq228c.tw/technology/punycode.htm)之轉碼工具將中文域名轉成punycode 編碼,IETF亦有公布網路C語言寫成之轉碼程式原始碼,有興趣者可參閱RFC3492(http://www.ietf.org/rfc/rfc3492.txt)。

DNS Server 設定方式
 IETF在制定IDN標準時考量對現有DNS環境之影響,在DNS伺服器方面IDN標準是將8位元的中文域名轉換7位元Punycode 編碼與現有DNS 環境相容,因此只需用Punycode轉碼工具將Zone File 裡中文域名部份轉成Punycode 編碼即可。

 就下面左邊轉換前範例中您可看到三個zone("." , "0.0.127.in-addr.arpa" , "中文大學.tw",) 必需要將中文域名轉換成 Punycode,轉換後為下列右邊看到三個zone("." , "0.0.127.in-addr.arpa" , "xn--fiq80y3xbiwr.TW") ,其中 "xn--fiq80y3xbiwr.tw" 為 "中文大學.tw" 的 Punycode 編碼(目前 TWNIC 的 DNS 解析設計只需一個繁體 "中文大學.tw" 的 zone 即可作到繁、簡體 "中文大學.tw" 的域名都可使用)

 
轉換前 轉換後
zone "." {
type hint;
file "named.ca";
};
zone "0.0.127.in-addr.arpa" {
type master;
file "named.local";};
zone "中文大學.TW" {
{
type master;
file "chinese.edu.tw";
};

zone "." {
type hint;
file "named.ca";
};
zone "0.0.127.in-addr.arpa" {
type master;file "named.local";
};
zone "xn--fiq80y3xbiwr.TW" {
{
type master;
file "chinese.edu.tw";
};


 如果要設定授權 (delegation) 下一層的網域名稱 (如 "教務處" 這個子網域名稱的例子),你必需使用 BIND9 等有支援 DNAME RR 的 DNS 軟體,設定範例如下:檔案 "chinese.edu.tw" 原始內容如左邊轉換前,轉換後為右邊內容,其中 "xn--fiqq24bukum7y" 為 "電算中心" 之 punycode 編碼,"xn--mmzu8duxt" 為 "資科系" 之 punycode 編碼,"xn--lhr734b27x" 為 "教務處" 之 punycode 編碼。

 如果要簡體域名也能解析,則z算中心("xn--fiqq24bsup00f")、V料科("xn--mmzu8dk8t")、教z("xn--zfro2mtrl")之PunyCode也須設定CNAME或DNAME 對到電算中心、資料科、教務處。

轉換前 轉換後
;
$TTL 8640 0
;
@ IN SOA
dns.chinese.edu.tw.
hostmaster.chinese.edu.tw. (
20030420 ; Serial
36000 ; Refresh
7200 ; Retry
3600000 ; Expire
86400 ); Minimum
IN NS dns.chinese.edu.tw.
IN NS dns1.chinese.edu.tw.
;
電算中心 IN A 211.72.211.1
資科系 IN A 211.72.211.2
教務處 IN NS dns2.chinese.edu.tw.

;
$TTL 86400
;
@ IN SOA
dns.chinese.edu.tw.
hostmaster.chinese.edu.tw. (
20030420 ; Serial
36000 ; Refresh
7200 ; Retry
3600000 ; Expire
86400 ); Minimum
IN NS dns.chinese.edu.tw.
IN NS dns1.chinese.edu.tw.
;
xn--fiqq24bsup00f IN CNAME
xn--fiqq24bukum7y
xn--fiqq24bukum7y IN A
211.72.211.1
xn--mmzu8dk8t IN CNAME
xn--mmzu8duxt
xn-- mmzu8duxt IN A
211.72.211.2
xn--zfro2mtrl IN DNAME
xn--lhr734b27x
xn--lhr734b27x IN NS
dns2.chinese.edu.tw.
;

 

Web Server設定方式
 Web Server設定比DNS Server簡單許多,有使用虛擬主機或者網頁代管者,須在web server、轉址伺服器上的設定上,將使有中文域名部份都要換成 punycode 編碼如中文網域名稱是 “中文.tw” ,則需把用xn--fiq228c.tw取代。

下列是一個Apache Web Server, 虛擬主機(VirtualHost)設定範例:

<VirtualHost *>
ServerAdmin webmast@xxx.com.tw
#網站管理者 Email
DocumentRoot /var/www/xn--fiq228c
#網頁所存放目錄 ,不一定用punycode當目錄名稱
ServerName xn--fiq228c.tw
# 中文.tw 的punycode 編碼
</VirtualHost>

中文域名使用環境
 影響中文域名解析最關鍵問題一般用戶之使用環境,早期各家中文域名註冊管理單位運用各種技術提供解析服務,有些下載Client軟體、不能在防火牆或Proxy之網路環境等,但在IDN標準已公佈,且已有知名瀏覽器軟體Netscape和Mozilla已支援,因此只要DNS Server和Web Server設定對了,使用Netscape或Mozilla 瀏覽器,即可成功訪問。也許很多人會認為使用Netscape或Mozilla的人不多,但這也足夠讓微軟深感壓力,早日讓IE也支援IDN標準,況且各家亦提供輔助解析系統與IE上的 plug-in軟體協助Internet使用者順利使用中文域名。提供輔助解析系統中文域名註冊管理單位有TWNIC(<中文>.tw)、CNNIC(<中文>.cn)和VeriSign (<中文>.com),皆可在不下載軟體情況下提供中文域名輔助解析,下載IE plug-in軟體僅是要讓使用者瀏覽中文域名網站更順暢,因此已無之前下載難以普及問題,大家皆是遵守IDN標準發展軟體,因此僅需安裝任一個軟體(TWNIC之中文通、CNNIC的用戶端軟體或者Verisign 的i-NavTM),皆可照IDN標準規定將中文域名轉換成Punucode 編碼,順利進行網頁瀏覽。

中文域名未來發展
 IDN標準公佈後,中文域名使用環境日趨成熟,仍有很多中文域註冊者未依IDN標準設定DNS,只要依本文方法設定DNS與Web Server,中文域名網站是可行的;未來會越來越多作業系統與應用程式廠商推出支援IDN標準產品,屆時中文域名將擴及整個Internet上的應用,讓一般人使用中文文字進入網路世界將更方便。

(TWNIC 技術組工程師 游文欽)
訂閱電子報:
檢索:
財團法人台灣網路資訊中心
臺北市羅斯福路二段9號4樓之2 Website:www.twnic.net.tw
Tel:+886-2-2341-1313 Fax:+886-2-2396-8832 E-mail:service@twnic.net.tw
版權聲明,禁止未經授權轉貼節錄