YANO's digital garage

Copyright ©YANO All rights reserved. https://www.bravotouring.com/~yano/

Last-modified: 2024-04-17 (水)


[一語一絵/IT系]

日本語.jp始めました / 2007-10-03 (水)

[External]ムームードメイン日本語.jp651/年円で大安売りしてたので、本名フルネーム(漢字とひらがなの2種類)で獲ってみた。

日本語.jpというのは[External]IDN(Internationalized Domain Name)と呼ばれる[External]「国際化ドメイン名」の新しい仕組みだが、IPv6のように大がかりな話ではなく既存の[External]DNS(Domain Name System)の枠組みに一工夫するものだ。

ただ、Webブラウザなどのユーザーアプリケーションが個々に対応しなければならないのがネックとなってあまり普及していなかったのだが、[External]Internet Explorer7 になってようやく対応し、Windows Vistaに標準搭載された事から、ようやく環境が整ってきたというわけ。

技術観点で[External]IDNとは[External]Punycodeに変換してから[External]DNSを引くだけなので、例えば 日本語.jp の場合は xn--wgv71a119e.jp となる。すなわち、http://www.日本語.jp/ ならWebブラウザが裏で http://www.xn--wgv71a119e.jp/ に変換したあと、何事もなかったかのようにしれっとアクセスしているわけだ。

なお単体での[External]Punycode変換は[External]JPNICが公開している[External]idnkitを使えばよい。bashの場合、/etc/profile.d/idn.sh

export IDN_LOCAL_CODESET=UTF-8
function idn() { eval `echo "$@" | idnconv`; };
な感じで書いておけば、コマンドラインに idn を前置する事で以降の文字列を[External]Punycodeへ変換して実行できる。
$ idn nslookup 日本語.jp
Server:         210.252.128.8
Address:        210.252.128.8#53

Non-authoritative answer:
Name:   xn--wgv71a119e.jp
Address: 202.11.16.167
てな具合だ。

DNSサーバーには従来のDNSと同じ情報を[External]Punycodeで記述しておけば良いので、[External]djbdnsでは

# 日本語.jp SOA
.xn--wgv71a119e.jp:202.11.16.167:ns1.bravotouring.com:86400
# 日本語.jp MX
@xn--wgv71a119e.jp:202.11.16.167:mail.bravotouring.com:20:86400
# 日本語.jp A
+www.xn--wgv71a119e.jp:202.11.16.167:86400
な感じで書けば良い事になる。

最初、[External]とっくに対応済みの[External]firefoxでうまくいかずに焦ったが、2005年9月の脆弱性対処としてIDNを無効にしていたのを思い出し、network.enableIDNtrue に戻して無事OK。

またapacheへのアクセスで名前ベースのVirtualHostを使っている場合には、httpd.confにも[External]PunycodeでVirtualHostを追加する必要があるかもしれない。ただ同一コンテンツを別のドメインで表現すると[External]Google MapsのAPIキーなどの認証に不整合が発生する可能性がある。

まぁ、これは名前ベースのVirtualHostに起因するものであり、[External]IDNでなくてもサブドメインなどを使っても起こる問題だ。やっぱりドメイン名の一意性や信頼性の担保を考えると、本流のURIにリダイレクトするのが正解かなぁ。

【参照】
●asahi.com http://www.asahi.com/
日本語ドメインが増殖中 対応ソフト普及で加速 2007年9月29日
●@IT http://www.atmarkit.co.jp/
いますぐ使える国際化ドメインへの理論と実践 2003年2月11日
DNS Tips:どうやったら日本語ドメイン名が使えるようになるのか 2003年10月15日
DNS Tips:日本語ドメイン名をPunycodeに変換するには 2003年10月15日
●日本ネットワークインフォメーションセンター http://www.nic.ad.jp/
ドメイン名の国際化
idnkit download
●INTERNET Watch http://internet.watch.impress.co.jp/
Mozilla Foundation、「Firefox 1.0.1」を公開~日本語版は3月上旬予定 2005年2月25日
●Mozilla Japan http://www.mozilla-japan.org/
国際化ドメイン名の表示が有効なトップレベルドメイン
●ムームードメイン http://muumuu-domain.com/
●YANO's digital garage 仮設ドア http://www.やのよしひさ.jp/