DTCPサーバ -- dtcps

dtcpsの設定

□ 起動

起動時のコマンド行は以下のようになります。
dtcps -i gif10
gif10以降のトンネル・インタフェースを使用する (-i)

portsからインストールした場合、 /usr/local/etc/rc.d/dtcps.shがインストールされています。 また、pkgsrcからインストールした場合は、 /usr/pkgsrc/etc/rc.d/dtcpsがインストールされていますので、 /etc/rc.dにコピーします。 これらの場合、/etc/rc.confに以下の行を追加します。

dtcps_enable="YES"
dtcps_tunif="gif10"
また、 NetBSD用の起動スクリプトを/etc/rc.dにコピーした場合も同様です。

ここで、仮想インタフェースの作成/削除 (ifconfig create/destroy) が使用できる場合 (TUNIF_CLONING = true) には、 使用したいトンネル・インタフェースの内でユニット番号がもっとも低いものを指定します。 例えば、-i gif10を指定した場合、gif10, gif11, gif12, ...と使われていきます。
TUNIF_CLONING = falseの場合、あるいは、-cオプションが指定されている場合は、 使用したいトンネル・インタフェースを正規表現を使って指定します。 例えば、gif10〜gif99を使用したい場合、-i 'gif[1-9][0-9]'と指定します。 この場合、 あらかじめこれらのトンネル・インタフェースを用意しておく必要があります。

この状態で、tunnelonlyトンネル・タイプでのサービスがおこなえます。 加えて、routetableがあれば、networkトンネル・タイプも受け付けます。 hostトンネル・タイプでもサービスをおこないたい場合は、例えば、

dtcps_prefix="3ffe:505:2:f000::"
のように、dtcps_prefixに、/64のプレフィックスを指定します。 この場合、hostトンネル・タイプで接続されると、 指定されたプレフィックスからアドレスを割り当てます。

□ ユーザ登録

ユーザ登録はqpopperに添付されているqpopauthコマンド、または、 dtcpauthコマンドでおこないます。 qpopauthコマンドでは一般ユーザがパスワードの変更などをおこなうことができますが、 dtcpauthではroot権限が必要です。 ここでは、dtcpauthを使った例を示します。

まず、dtcpauth --initを実行し、パスワード・データベースを作成します。 hogeというユーザを登録する、あるいは、パスワードを変更する場合は、 dtcpauth --user hogeを実行するとパスワードを聞いてきますので、 入力します。 hogeというユーザを削除する場合は、dtcpauth --delete hogeです。 dtcpauth --list ALLを実行すると、登録ユーザの一覧が得られます。

なお、パスワードデータベースはデフォルトでは FreeBSDでは/usr/local/etc/qpopper/pop.authで、 NetBSDでは/usr/pkg/etc/apop.authです。

□ ユーザに配布するプレフィックスの登録

networkトンネル・タイプを有効にする場合は、 ユーザに配布するプレフィックスを登録します。 ユーザに配布するプレフィックスは/usr/local/etc/routetable (pkgsrc からインストールした場合は/usr/pkg/etc/routetable) に登録します。 routetableは普通のテキストファイルです。 以下の例のように、ユーザ名とプレフィックスをTAB区切りで指定します。
hoge		3ffe:505:9000::/48
fuga		3ffe:505:9001::/48

なお、ユーザを登録/変更した場合も、dtcpsを再起動する必要はありません。


All Rights Reserved, Copyright (C) 2004 Hajimu UMEMOTO
Last Modified Jun 21, 2004
ume@mahoroba.org