IRCってなんだろう

  1. IRCってなんだろう
  2. Web-ChatとIRC
  3. ICQとIRC
  4. ネットワークゲームとIRC
  5. IRC USERの歩み
  6. 家庭用ゲーム機でのchat
  7. IRC でのチャンネル参加、新規作成
  8. IRC でのチャンネル管理、防衛
  9. channel op 有無の差
  10. チャンネルトーク、プライベートトークの違い
1.IRCってなんだろう
現在、一口にIRCといっても数多くの団体がいます。

[IRCnet] [EFnet] [MSchat servers]
これらのサーバは海外とリンクされており、大きい団体です。

[ReichaNet] [Friend Chat IRC]
これらのサーバは、国内のみでリンクされており、小規模です。

これらの団体は、まったく別であり、リンクされていないため、
同じチャンネル名であっても団体が違えばしゃべることはできません。


以前は、IRCといえば、IRCnetを指していることが多かったし、それで済んでましたが、
最近は、いろいろな団体が増えて、迷子になる方も少なくないようです。
とくに、channelとしてHOMEPAGEなど作られている場合は、サーバ名を明記しましょう。
大きいサーバ群は、合衆国。
こじんまりとしたサーバは島国。
チャンネルは、それぞれの家
と考えるとわかりやすいかもしれません :)
それぞれの文化の違い、言葉の違い、家庭内(?)における規則などもそれぞれちがいます
2.Web-ChatとIRC
Internetを始めると、まず、Yahoo Japanなどにアクセスしてサーフィンする方がほとんどだとおもいますが。
それらをしていると、Web-chatというのはかなりアクセスしやすいことでしょう。
WebChatというのは見ての通り、ブラウザでcgiプログラムなどにアクセスして会話が成り立ちます。
つまり、chatする人全員でサーバのcgiプログラムに負荷をかけることになって、効率がわるく
また画像などを頻繁に読み込むため、かなり重たいものです。
IRCは、逆に、USERがクライアントソフトを実行し、サーバは情報の伝達を行うだけなので
サーバに負担にならずに、高速でのchatが可能になっています。

みんなでIRCを使いましょう(o^-')b
3.ICQとIRC
IRC と ICQ は共に人気があるようですが使い分けさがれているようです
機能の面でいうと、どちらもそう変わらないようです

ICQは、友達登録をして友達がinternetにつながったときに捕まえ
一対一での会話を主としているようです
また、言葉が到達するまでに多少のラグがあるため、
なにかをしながら(メール等)できるという点で人気があるようです

それに対して、IRCは、クライアントを立ち上げIRCサーバへまず接続をします
ICQの用に、個人登録がされてはいないので友達と会話するにはまず
決まったチャンネルへの待ち合わせが必要になります
IRCでの人の区別はnicknameでされているので
確実にwhoisなどでつかまえることができないからです。
ICQは、個人個人との会話が主なので、
人間関係トラブルが少ないというのはメリットかもしれません
ただ、IRCのように、仲間としての会話を楽しむことは難しいようです。
4.ネットワークゲームとIRC
internetの普及にともなって多くのネットワークゲームができてきました。
[diablo] [ウルティマオンライン] [Age of Empires] [Rise of Rome] 
[Age og Kings] [NETMAJ] [東風荘] [NETHELLO] [Quake] 等
どれも連絡用としてIRCは利用されています。
タイムラグも少なく、文字電話といわれるほどの快適さ
又、募集のしやすさでIRCは優れています。どんどん使いましょう :)
5.IRC USERの歩み
例外なく、chatをはじめたときは、緊張するでしょう。
最初に入ったチャンネルでその後のchat生活が全然違ったりします
ただ、IRCのチャンネルは、誰かがいないと存在しないというシステムです
テレホーダイ時間帯以外はほとんど人がいない無人チャンネルばかりでしょう
最初にはいって落胆されて、
「IRCってなんかつまんないな」とおもわないでください(^-^)
慣れるまでは、個人差がありますが、1ヶ月くらいでしょうか。
楽しくみんなで会話できるようになると、自分でチャンネルを作ってみよう
という感じでばらばらになっていくことが多いようです。
6.家庭用ゲーム機でのchat
家庭用ゲーム機、Dreamcastなどによるuserがふえつづけています
以前は、パソコンは高価なものであり、経済力のある人しかできなかった
という面では前進であるかもしれません
しかし、それによる副作用は…
一般テレビ画面では、表示できるものはかぎられてきます
ゲーム機などでchatした場合、logが数行しかみえず。
とてもやりずらそうです
しかし、ゲーム機から始めた人にとってはそれが普通であり
パソコン使用している人が、どんな環境でどんなことができるのか
ということを理解しずらいという問題があります
又逆にパソコンの人からみると、ゲーム機でのchat参入は、
出来の悪いクライアントとしてしかみえず、
ここに機能面でいう文明の差がでてきてしまいます。
お互いを理解しあうことに成功している例がほとんどであればいいのですが…
また、ゲーム機は手軽な値段で買えることにより
年齢層がきわめて低い人達になります。
人付き合いや道徳の不足、などの原因によって
家出や、犯罪行為等の原因たらしめている部分もあるようです。
7.IRC でのチャンネル参加、新規作成
IRCにつないでまずなにをすればいいのかわからない人も多いでしょう。
選択肢としては、
・既存のチャンネルに入る
・新規にチャンネルを作る
になります。
既存のチャンネルに入るにはチャンネルリストを取得して、そこからえらびます
(たいていのクライアントでは "/list"と、タイプすると出ます)
ただ、チャンネルがあるからといって会話があるとは限りません
チャンネルは、だれもいなくなると消滅しますので
チャンネルの存在を維持するためにbotなどをおいたりします。
また、nicknameの確保や、居ないときのlogをとっておきたい場合にも
常駐(つねにいる)ことをします
話しかけて返事が無くても無視してるわけではありません^^;
昼間はそのような常駐(bot)などしかいないチャンネルが多いので
もし、返事がないようでしたら
23時〜2時くらいにつないでチャンネルに入ってみて下さい。

新規のチャンネルを作るには、頭に "#" をつけた自分のつくりたいチャンネル名にjoinします。
例) #ちゃっと #chat #プログラム
初めてつくった人はチャンネルオペレータになれます。
人がくるのを待つか友達をよんだりして会話してください。

# 待ち合わせる場合には、チャンネル名はなるべくわかりやすく短いものにしておきましょう。
8.IRC でのチャンネル管理、防衛
チャンネルを作ると、当然そのチャンネルのポリシーがあるとおもいます。

・ゲームチャンネル
・仲間チャンネル
・出会いチャンネル

等々ですが、チャンネルを開設すると当然お客さんが来ます。
つくったチャンネルにそぐわない人もいるでしょう
きがついて出ていったりが普通ですが、
チャンネルに迷惑な行為をわざとする人もいます。

そういった迷惑な人を一般的にabuserといいます

チャンネルをつくって人栄えてくると当然そういった人も多くなります
IRCでは、迷惑な人を追い出したり、チャンネルに属性を設定できるようになっています
(追い出すには、kickすればよいのですが、+b を設定しないとまたはいってこれます。)

追い出したり、チャンネル属性を設定するには、チャンネルオペレータであることが必要です。
また、そういった属性を維持するためには、チャンネル消えないように常駐するといったことが必要です。

「なんで人がいるのに会話がないの?」

といったような質問がよくありますが
さまざまな理由によって常駐して維持することによって
チャンネルのポリシーを保持するわけです。

まずチャンネルをつくったら属性をきめましょう。

・ゲームチャンネル
	+tn が好ましいとおもわれます
・仲間チャンネル
	+stn が好ましいとおもわれます(だたし、チャンネルリストを取得しても表示されません)
・出会いチャンネル
	+tn が好ましいとおもわれます

以上は、例であって、そうじゃないといけないことはありません。
9.channel op 有無の差
「☆、@ってなんですか?」
そういった質問は誰でも一度はしてるんじゃないでしょうか
なにがちがうのかしっかりその場でわかるかというと
そうでもありません
# channel opは各channelごとに適用されます。

・channel op が無いとなにができないか
	kick および mode change ができません。
	mode +m のときにchannelに対する行為(発言含む)ができません
	(ただし、+vしてもらった人は省きます)

逆にもっていれば kick , mode change が可能です。

・kickってなに?
	チャンネルから追い出すコマンドです(/kick #channel nickname)

・mode ってなに?
	チャンネルの属性のことです。
	+p = プライベート
	+s = シークレット
	+n = チャンネル外からの発言禁止
	+t = channel opのみ、topic変更可能
	+m = channel opな人か, mode +v されている人がチャンネルに対する行為可能
		(チャンネル宛のものすべてです 発言、ctcp 等)
	+i = invite(招待)された人のみ入室可能
	+l = 人数制限をつける (/mode #channel +l 20)
	+k = キーワードがマッチしないと入れなくなる

	+a = &channel のみ使用可能で、匿名モードになります。発言した人のnicknameがわかりません
	+r = !channel のみ使用可能、channel op がまったく居ない場合にサーバがランダムにopをつけます。

	+b = チャンネルに入れなくなるフィルターの設定です (/mode #channel +b nick!user@(ip or FQDN))
	+I = +iのときのinviteされていなくても入れるフィルタの設定
	+e = +b にかかっていても +e にかかっていれば入れるフィルタの設定

という違いがでてきます。
10.チャンネルトーク、プライベートトークの違い
普段みなさんは、IRCクライアントをダウンロードして、設定し、サーバにつないでお話します。
そのなかで大まかにチャンネルでの会話、二人だけの会話があります。

どこで見分けるのかはそれぞれクライアントソフトによって違います
・チャンネルと同じ様にみえるもの
・別の窓をひらいてチャンネルの窓と区別しているもの

それは作者しだいです。
IRCのシステムというのは規格(RFC1459)にそっていて
それをうまく使う方が使いやすいようにつくられたものがクライアントソフトです

では、クライアントソフトつかわなくてもできるの?
といわれるとできます。

windowsの例です
スタート、ファイル名を指定して実行をえらび
コマンドラインに

telnet irc.friend.td.nu 6667

といれて実行してみます。

なにも画面にはでませんが接続されます。
ここでIRCをするために必要な情報
・ニックネーム
・ユーザーネーム
・リアルネーム
などを打ち込むと、サーバ側のインフォメーション(motd)が表示され
サーバがコマンドを処理できる状態になります

そのままなにもでない状態ですが次のようにうってみるとできます

NICK fc-test5
USER fc-test5 * * :fc-test5

まちがえずにタイピングすればインフォメーションがながれます
ただし、windowsでは文字コードの標準がsjis、サーバ側はjisですので
当然のことながらきちんと表示はされません。
jisからsjisの処理もクライアントソフトがやってくれています。

問題のチャンネルトークと、プライベートトークの差です

telnetだと生のコマンドを直接サーバにおくることになります

チャンネル #test に向かってしゃべりたい場合

PRIVMSG #test :test now

これだと #test に join している人全員にみえます
余談ですが、joinしていないチャンネルに発言することもできます。
ただし、チャンネルモード +n (外からの発言を禁止する)をしていると
不能になります。

プライベートトーク 人(NickA)に向かってしゃべりたい場合

PRIVMSG NickA :test now for you!

これだと NickA さん個人に送っているので NickAさんにしかみえません。

こういった生のコマンドをクライアントは永遠にやっています。
使う人(ユーザー)がみやすく、使いやすくつくったものがクライアントソフトです。

その作り方は作者しだいですし、プログラムの知識のある方でしたら
比較的構造は簡単です。
# 使いやすくつくるのは非常に面倒なことまでやらないといけませんが。

ここで、IRCでお話している上でおかしなこともたとえばでてきます
IRCでは同じニックネームはいません、いてしまう状態がありえますが
それはニックコリジョンとして、サーバ側から二人とも切断され、しばらくの間そのニックネームはつかえなくなります
NickAさんがNickBさんとプライベートトークをしていたとき
きちんとIRCサーバからQUITコマンドを送信すると
いなくなった時点からNickAというニックネームは使用可能です

NickCさんがニックネームの変更

NICK NickA とするともちろん使えます

さきほどまでNickBさんは NickA に話すよ というコマンドをサーバにおくっていました
そのコマンドをおくる際に判断する材料はニックネームだけです
つまりいきなりいれかわった場合。クライアントソフトの作者が細工をしていなければ
NickAになりすましてプライベートトークはつづけられます
NickBさんは、相手がかわったことを

WHOIS NickA などして、相手の情報を得て、前のNickAさんとは違うことを調べるような
ことをしないかぎり気がつきません。

同じチャンネルにいるとすると、ニックネームの変更メッセージがみえますので
きがつく場合もあります。

現状ではこの人違いの処理をしているクライアントはあるのかはわかりませんが
ほとんどのものでは入れ替わりは確実にできます
同じ人かどうかはいちいちしらべなければなりません。

相手がQUIT(IRCサーバから切断された)ことも、同じチャンネルにいなければメッセージがみえませんので
QUITメッセージで判断するのも難しいかとおもいます。