* IRCサーバのFAQ [#s671142f]

#contents


** IRCサーバのログファイルが記録されない [#ircd_var_log]

INSTALL.txt には次のように記述があります。

  Files created by ircd package during normal execution would be
  ircd.pid, ircd.tune, iauth.pid, ircdwatch.pid in PREFIX/var/run/ and
  ircd.users, ircd.rejects, ircd.auth, ircd.opers, ircd.debug,
  iauth.debug in PREFIX/var/log/.

PREFIX/var/log に、

- ircd.users
- ircd.rejects
- ircd.auth
- ircd.opers
- ircd.debug

を作成してください。~
また、ircdが書き込める権限にする必要があります。~
ログファイルは、クライアントを切断した段階でログファイルに記録されるため、接続した瞬間にはログファイルに記録されません。




** IRCサーバへ接続したとき、時間が文字化けする [#encode_bug]

 This server was created 2009綛??11? 10?・JST at ?・?・19:20:45

これは、サーバをコンパイルしたとき、環境変数が大きく影響を受けます。~
コンパイルするときの環境を確認してください。


*** bash 系の場合 [#c1de3b73]

 LANG=C ; export LANG
 LANGUAGE=C ; export LANGUAGE
 LC_ALL=C ; export LANGUAGE


*** csh系の場合 [#d26472a8]

 setenv LANG C
 setenv LANGUAGE C
 setenv LC_ALL C




** operになっても管理者権限のが使えない [#oper]

ircd.conf のO-Lineに使用できる権限を記述することが出来ます。

O-Line にも二種類存在し、ローカルオペレータ、グローバルオペレータの2通りがあり、言葉の通りローカルオペレータは、そのサーバの権限しかありませんが、グローバルオペレータ権限があると、IRCサーバ同士接続されている他のサーバにたいして、管理者権限でコマンドを実行することが可能となります。

小文字のo-Line については、ローカルオペレータ、大文字のO-Lineは、グローバルオペレータという位置づけでしたが、irc2.11以降、O-Lineに統一され、権限フラグを付けることによって細分化されています。

詳しくは、INSTALL.txtに記載がありますが、一部抜粋いたします。

     Flags
        This field contains flags of an O:line; flags are one character
        in size, can be combined and their order does not matter.  They
        define privileges of an operator.
        o  L - local operator (disables all remote functions)
        o  P - removes penalty
        o  p - allows flooding
        o  & - allows joining &CLIENTS
        o  A - enables all flags below
        o  C - allows local and remote CONNECT
        o  c - allows local CONNECT
        o  D - allows DIE
        o  d - allows DNS
        o  e - allows SET
        o  h - allows HAZH
        o  K - allows local and remote KILL
        o  k - allows local KILL
        o  l - allows CLOSE
        o  R - allows RESTART
        o  r - allows REHASH
        o  S - allows local and remote SQUIT
        o  s - allows local SQUIT
        o  T - allows TKLINE
        o  q - allows KLINE
        o  t - enables full TRACE and STATS L
        o  v - allows SIDTRACE
 
        ``L'' flag cannot be overridden by other flags.  If <Flags>
        field is left empty, no privileges will be granted.
 
     Example
        O:orion.cair.du.edu:pyunxc:Jeff::1:A




** 特殊チャンネルにログが表示されない [#admin_channel]

&ERRORS  &NOTICES  &KILLS &SERVERS といったチャンネルにJOINしても、特殊チャンネルとして扱われず、メッセージが表示されない時は、config.h のログの設定を有効にしてください。

 /*
 ** If you want your server channels logged to a file, define this and
 ** any of LOG_SCH_* you want. Logfile names are taken from channel names
 ** (like: ircd.ERRORS) and they must exist to be used.
 */
 #undef LOG_SERVER_CHANNELS
 #ifdef LOG_SERVER_CHANNELS
 #undef LOG_SCH_ERROR    /* &ERRORS */
 #undef LOG_SCH_NOTICE   /* &NOTICES */
 #undef LOG_SCH_KILL     /* &KILLS */
 #undef LOG_SCH_CHAN     /* &CHANNEL */
 #undef LOG_SCH_NUM      /* &NUMERICS */
 #undef LOG_SCH_SERVER   /* &SERVERS */
 #undef LOG_SCH_HASH     /* &HASH */
 #undef LOG_SCH_LOCAL    /* &LOCAL */
 #undef LOG_SCH_SERVICE  /* &SERVICES */
 #undef LOG_SCH_DEBUG    /* &DEBUG */
 #undef LOG_SCH_AUTH     /* &AUTH */
 #undef LOG_SCH_SAVE     /* &SAVE */
 #undef LOG_SCH_WALLOP   /* &WALLOPS */
 #undef LOG_SCH_CLIENT   /* &CLIENTS (if defined to exist) */
 #undef LOG_SCH_OPER     /* &OPER */
 #endif /* LOG_SERVER_CHANNELS */




** IRCサーバへ接続、切断ログをリアルタイムで見たい [#admin_clients]

irc2.11.0 以降、&CLIENTS というシステムチャンネルがあり、IRCサーバへの接続、切断ログを普段使用しているIRCクライアントで閲覧することが出来ます。


''方法''

oper になり、&CLIENTS というチャンネルにJOINします。

''エラー''

oper になっていないとき、若しくはO-Lineに`&' フラグが内場合は、は次のようなエラーメッセージが表示されます。


 :<SERVER> 473 <NICKNAME> &CLIENTS :Cannot join channel (+i)

''表示メッセージ''

JOINすると、NOTICEで次のような接続・切断ログが表示されます。

 0000AAAAA nick1 ~nick1 2001:db8:12:3456:abcd:eabc:ac00:ac00 QUIT 0
 0000BBBBB nick1 ~nick1 2001:db8:12:3456:abcd:eabc:ac00:ac00 CONN 2001:db8:12:3456:abcd:eabc:ac00:ac00

尚、0000AAAAA はirc2.11.0以降実装されたUIDとなります。


''注意''

このチャンネルはシステムチャンネルのため、発言することは出来ません。




** 日本語チャンネルを作成したとき文字化けする [#japanese]

ircd2.11.2 より日本語パッチが正式にマージされています。~
ただし、ircd2.11.1p1 までは、不具合があるため、ircd2.11.2p2 以降を使用してください。~
また、日本語パッチ機能を有効にするには、config.h で日本語を使用するように設定する必要があります。

 /*
 ** Define this if you want to use Japanese channel names in JIS encoding.
 */
 #undef JAPANESE
        ↓
 #define JAPANESE




** ''Server is currently in split-mode.'' と表示され、チャンネルオペレータ権限が無い [#splitmode]

サーバに接続したとき、''Server is currently in split-mode.'' と表示され、split-mode に入ってしまい、新規でチャンネルを作成した際チャンネルオペレータ権限が無い状態が発生します。~
この split-mode に入る条件は、config.hに記載されています。

デフォルトのconfig.hには、

 #define DEFAULT_SPLIT_USERS     65000
 #define DEFAULT_SPLIT_SERVERS   70

となっており、接続している網全体で、65000USER 若しくは リンクされているサーバの数が 70を下回ったとき網全体が大きく分断していると判断され、split-mode に入ってしまいます。無効にするには、 DEFAULT_SPLIT_USERS 及び DEFAULT_SPLIT_SERVERS を 0として下さい。

TOPページへ戻る   新しいページの作成新しい下位ページの作成そのページを引用して新規作成ページ名の変更ページへのリンク元を表示   サイトのページ一覧サイト内単語検索編集したページの履歴削除したページの履歴   別ウィンドウでマニュアルページへ