id:naoyaさんのダイアリーで紹介されていたTiarraを使ってみた。自分も昔からplumを使っていてかなりお世話になっていた時期もあったのですが、古いソフトだしperl的に実装が微妙なんでどうかと思っていました。そしてなにげに最近IRCがギークの方達の間で秘かなブーム(?)ということもあり、これを期に使ってみることにしました。

ちなみにIRC Proxyってのがなんなのかというと、IRCをやっている人でずーっと常駐している人がいると思いますが、あれはIRC Proxyを使ってそれを実現しています。もっと具体的に言うと下記の図のように自前サーバなどにIRC Proxyのプログラムを立ち上げて、IRCサーバとずっと接続を保っておいて、自分は必要なときにIRCクライアントを自前サーバに接続して、IRCサーバと接続をしているのです。
[IRCサーバ] ー [自前サーバ] ー [IRCクラウアント]
下記に自分がインストール~設定をやった手順を書いておきますので、IRC Proxyを立ち上げるのに参考にして頂けたらと思います。

  1. ダウンロード
  2. とりあえず、Tiarraのページから最新版をダウンロード。この記事を書いてる時点での最新バージョンは「Version: #0 / Revision: 1.159 / Date: 2005/02/14 17:36:29 GMT」。

  3. 解凍
  4. 別に書く程ではないけど…。
    % tar zxvf tiarra-20050214.tar.gz

  5. 設定
  6. まず解凍して出来たディレクトリにある、sample.confをtiarra.confという名前でコピーして、そのファイルを編集します。 とりあえず編集すべき部分は下記。

    • generalブロック
    • nick: 使用するニックネーム。
      user: 使用するユーザ名。
      name: 使用する名前。
      tiarra-password: tiarraに接続する際に必要なパスワード、パスワードをcryptしたもの。cryptしたパスワードを生成する方法はtiarraでできます。./tiarra --make-passwordとターミナルで打てば、パスワードの入力を聞いてきて、打つとcryptされたパスワードを教えてくれます。

    • networksブロック
    • name: 後に設定する接続するネットワークの設定の名前。複数のサーバに接続する場合はこれを複数書く。

    • 各ネットワークの設定
    • 接続するサーバ毎にブロックを追加します。
      下記のように設定しておけばまず問題ないです。下記の例では、fooという名前で、irc.example.comのポート6667に接続をする設定です。このfooを先に説明したnetworksブロックのnameに書くことになります。複数のサーバに接続する場合はブロックを追加していくことで実現できます。
      foo {
        host: irc.example.com
        port: 6667
      }
これだけ設定したら、あとはターミナルで
% ./tiarra &
とするだけで動きます。起動させたら、IRCクライアントから起動したサーバの指定したポートに接続をすると普通に接続できるはずです。接続できない場合はなにか設定に間違いがあるかもしれません。

あと、それ以外で自分が設定したものとしてはUser::Away::Nickぐらいです。。。まだ使い込んでないので…。これは接続を切った際のニックネームを設定できます。

ちなみに一度tiarraを起動したら、設定ファイルを編集したあとに再起動しなくても /load というコマンドを IRC クライアントで送信することにより設定ファイルを読み直してくれるようです。これべんーり!

ということで興味ある方は使ってみてください。