[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[idn] mDNkit/JPNIC 1.0 public beta released
- To: idn@ops.ietf.org
- Subject: [idn] mDNkit/JPNIC 1.0 public beta released
- From: Yasuhiro Morishita <yasuhiro@nic.ad.jp>
- Date: Fri, 14 Jul 2000 23:05:25 +0900
- Delivery-date: Fri, 14 Jul 2000 07:09:01 -0700
- Envelope-to: idn-data@psg.com
This is Yasuhiro Morishita, a member of IDN-TF (IDN Task Force) at
JPNIC.
We are announcing the release of Multilingual Domain Name kit
(mDNkit/JPNIC) public Beta version (mdnkit-1.0beta).
Objectives of mDNkit/JPNIC are:
- Evaluation of the technology for Multilingual Domain Name
- Promoting standardization of Multilingual Domain Name
- Technical contribution for popularization of Multilingual Domain Name
Current version of mDNkit/JPNIC supports RACE (draft-ietf-idn-race-00.txt),
UTF-8, UTF-5, and many local encodings, including euc-jp, shiftJIS,
euc-kr, gb2312, big5, and so on (supported codes are iconv(3) dependent).
mDNkit/JPNIC is now available from:
http://www.nic.ad.jp/en/research/idn/index.html (in English)
http://www.nic.ad.jp/jp/research/idn/index.html (in Japanese)
Enclosed is the README file included with the distribution kit.
And we will demonstrate this kit on our booth of INET2000/Yokohama.
Regards,
--
Yasuhiro 'Orange' Morishita, Technology Research Section
Japan Network Information Center (JPNIC)
E-Mail: yasuhiro@nic.ad.jp
--- cut ------ cut ------ cut ------ cut ------ cut ------ cut ---
mDNkit
-- multilingual domain name evaluation kit --
beta release
Japan Network Information Center (JPNIC)
* Overview
mDNkit is a kit for evaluating various proposed methods regarding
multilingualized/internationalized DNS.
This kit consists of following components.
+ DNS proxy server (dnsproxy)
This works as a fake DNS server for the clients. It receives
DNS request containing domain names in the client's local
encoding (e.g. Shift_JIS), translates them into the encoding
on DNS protocol (e.g. UTF-8 or RACE), and forwards to the real
DNS server. Also the response from the server is converted
back to the client's local encoding and returned. See the
figure below.
+ a codeset converter for named.conf/zone master files (mdnconv)
This is a codeset (encoding) converter specially designed for
converting named.conf and zone master files from your local
encoding (e.g. EUC-JP) to the encoding which internationalized
DNS servers employ (e.g. UTF-8).
+ a library for handling multilingual domain names (libmdn)
This is the library dnsproxy and mdnconv are built upon. It
provides various functions regarding multilingual domain
names, such as encoding conversion, normalization and ZLD
(zero-level domain) handling.
+ a patch that makes BIND 8-bit through
This is needed in order for named and resolver to handle
non-ascii domain names encoded in local encoding or UTF-8.
The patch is rudimentary; it makes almost any byte sequence
legal as a domain name (which is what 8-bit through is for).
+ a patch for making Squid cache server 8-bit through
This is a simple patch that disables Squid's validity check
for host name part in URLs. Without this patch, Squid rejects
URLs containing multilingual domain name (correctly).
domain name encoding domain name
in local conversion and in encoding
encoding normalization on DNS
+-----------+ +----------------+ protocol +----------+
| client |------------>| dnsproxy |------------>|DNS server|
|application|<------------| |<------------| |
+-----------+ +----------------+ +----------+
* Directory structure of this distribution
Below is a directory structure of this distribution with some
important files and their brief description.
+README this file
+README.ja .. in Japanese
+DISTFILES list of files in this distribution
+configure a `configure' script
+Makefile.in toplevel makefile template
+include/
| +config.h.in template header file for configuration
| +mdn/ header files for mdn library
+dnsproxy/ source directory for DNS proxy server.
+lib/ source directory for mdn library
+tools/ source directory for tools.
| +mdnconv/ source directory for codeset converter
+patch/ various patch files
| +bind8/ bind-8 patch directory
| +squid/ squid patch directory
+util/ utilities
* Compilation and installation
0. Prerequisite
If your system's library does not have iconv() function, which is a
general codeset conversion utility, install it as an external library.
You also need external library if the system's implementation cannot
handle UTF-8 encoding, or it doesn't support some encodings which your
client applications uses.
You can get a free version of iconv() implementation (under LGPL
license), from:
http://clisp.cons.org/~haible/packages-libiconv.html
1. Running configure script
Run `configure' script in the top directory. This checks various
characteristics of your system and it will create Makefiles and
config.h appropriate for your system.
% ./configure
`configure' accepts many options. Here is a list of some important
options.
--with-iconv=LIB
If your libc doesn't contain iconv(), specify the library
that contains iconv(). For example, if iconv() is libiconv
in /usr/local/lib, you should specify:
--with-iconv="-L/usr/local/lib -liconv"
Note that if the library is a shared one, you might also want to
specify -R option, like:
--with-iconv="-L/usr/local/lib -R/usr/local/lib -liconv"
If the header file "iconv.h" has installed in a non-standard
directory like /usr/local/include, you should specify CFLAGS
environment variable. See below.
--with-utf8=NAME
If your iconv() (precisely, iconv_open()) does not accept
"UTF-8" as the name of UTF-8 encoding, specify the name
for it. For example if your iconv() uses "utf8" instead,
you should specify:
--with-utf8=utf8
--sbindir=DIR
Specifies the install directory for dnsproxy. Default is
/usr/local/sbin.
--bindir=DIR
Specifies the install directory for mdnconv. Default is
/usr/local/bin.
--sysconfdir=DIR
Specifies the install directory for dnsproxy's sample
configuration file. Default is /usr/local/etc.
--mandir=DIR
Specifies the base install directory for online manuals.
Default is /usr/local/man.
`configure' has many more options. To see the list of available
options, you should run it with --help option.
% ./configure --help
If you want to specify extra compiler options, like adding non-standard
directory to include file search path, use environment variable CFLAGS.
% CFLAGS="-I/usr/local/include -O2" ./configure ... (for sh)
% setenv CFLAGS "-I/usr/local/include -g"; ./configure ... (for csh)
2. Compiling
Run `make' for compilation.
% make
3. Installation
Run `make install' to install binaries and manuals. Don't forget to
become a super-user before the installation.
% su
# make install
4. Configuration and usage
Please consult online manuals for configuration and usage of `dnsproxy'
and `mdnconv'.
% man dnsproxy
% man mdnconv
* Applying patches
This distribution also contains patches for BIND 8.2.2-P5 and Squid
2.3.STABLE3. The top of these patch files describe how to apply the
patch and (re)install.
* Contact information
Please see http//www.nic.ad.jp/en/research/idn/ (in English)
http//www.nic.ad.jp/jp/research/idn/ (in Japanese) for the latest news
about this kit.
Bug reports and comments on this kit should be sent to idn-cmt@nic.ad.jp.