>> 記事トピックス一覧 
トップ > インターネット > インターネット > IP Network Skill

[IP Network Skill - No.0297 -] メール(IMAPその2)

発行日: 2007/2/2

‥‥……━━━━━━ IP Network Skill No. 00000297 ━━━━━━……‥‥

     〜 メール (IMAPその2)  〜

‥‥……━━━━━━━━━━━━━━━━━━━━━━━━━━━━……‥‥

 【まえがき】

 来週、2月7日(水)から9日(金)まで、東京ビッグサイトで

 NET&COMというイベントが開催されます。

 http://itpro.nikkeibp.co.jp/netcom/index.html

 オフィシャルWebサイトによると、今回の見所は「仮想化を見て

 体感できる3日間〜計150以上の展示・講演が目白押し」、 

 「統合化が進むセキュリティ製品〜内部統制対応が訴求ポイントに」、

 「NGNホットステージをプレビュー〜マルチプレーヤのネット・ゲー

 ムやFMCなどのアプリを会場で体験できる」、「普及期に入る仮想化

 ソフト〜NET&COM2007で性能と安定性の向上を実証」、「ウェブ2.0で

 「顧客中心」から「人間中心」の時代へ」というものだそうです。

 200社近くのネットワーク、情報通信関連企業が出展します。

 この分野では結構大きい展示会だと思いますので、お時間のある方は

 足を運んでみてはいかがでしょうか?


╋━━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━━━━━━━━━━……‥‥
   ┃本┃日┃の┃試┃験┃対┃策┃問┃題┃ 
╋━━┻━┻━┻━┻━┻━┻━┻━┻━┻━┻━━━━━━━━━━……‥‥

 〔問題1〕IMAPにてメールデータを閲覧して終了する、という単純な流れ
     として正しいものは次のうちどれか。

   1.LOGIN→CAPABILITY→SELECT→FETCH→LOGOUT
   2.AUTHENTICATE→SUBSCRIBE→FETCH→LOGOUT
   3.LOGIN→AUTHENTICATE→SELECT→FETCH→LOGOUT
   4.LOGIN→SUBSCRIBE→FETCH→SELECT→LOGOUT

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ネ┃ッ┃ト┃ワ┃ー┃ク┃の┃基┃礎┃講┃座┃
 ━┛━┛━┛━┛━┛━┛━┛━┛━┛━┛━┛
 -----------------------------------------------------------------
 この企画は処女作「TCP/IPネットワークステップアップラーニング」
http://www.Amazon.co.jp/exec/obidos/ASIN/4774116351/ipnetworksk01-22
 を基に構成変更、加筆、修正、省略。。。いろいろ手を加えたものです。
 TCP/IPネットワークステップアップラーニングは第3刷を重ねました!
 講習教科書などでご利用いただいています。
 -----------------------------------------------------------------

 【11.アプリケーションプロトコル】

 11.6. メール

 11.6.4 IMAP

 11.6.4.2. IMAPサーバとクライアント間のやりとり

 IMAPクライアントはサーバに対して命令(コマンド)を出します。

 コマンドにはタグが付けられます。たとえばA0001、A0002など。

 MS outlookの場合、以下のように0002-0005などとタグがつきます。

0002 LIST "" "*"
0003 LSUB "" "*"
0004 LIST "" "INBOX*"
0005 LSUB "" "INBOX*"

 コマンドが1行で完結しない場合、"+"というタグが次のコマンドで使われ

 ます。

 コマンドはUID(Unique Identifier; ユニーク識別子)かメッセージ番号

 で識別されます。


 11.6.4.2.1. IMAPサーバへのログイン

 1) IMAPクライアントはまずCAPABILITYコマンドを送信し、サーバがサポート

 する機能リストを取得します。

 ↓リストの例

 * CAPABILITY IMAP4 IMAP4rev1 ACL QUOTA LITERAL+ NAMESPACE UIDPLUS 
  X-NON-HIERARCHICAL-RENAME NO_ATOMIC_RENAME AUTH=ANONYMOUS
  AUTH=KERBEROS_V4 AUTH=DIGEST-MD5 AUTH=CRAM-MD5 UNSELECT
  . OK Completed


 2-a) 認証方法その1:ユーザ名とパスワードを使う(LOGINコマンド)

 IMAPクライアントはLOGINコマンドとともに、ユーザ名とパスワードをサ

 ーバへ送ります。このとき、平文(クリアテキストやプレーンテキストとも

 いう)かCRAM-MD5ハッシュのいずれかが使われることがほとんどです。

 
 2-b) 認証方法その2:専用の認証メカニズムを使う(AUTHENTICATEコマンド)

 AUTHENTICATEコマンドを使ったケルベロス認証(KERBEROS_V4)の認証も

 サーバ、クライアントのソフトの組み合わせでは可能です。

 ケルベロス以外のSASL (Simple Authentication and Security Layer) 認証

 メカニズムであるGSSAPI (Generic Security Service Application Programming 

 Interface) というAPIや S/Key(MD4を使う)を使う場合もあります。

 このあたりの詳細はRFC2222などに載っています。 


 11.6.4.2.2. ログイン後の操作
 
 まずクライアントはサーバにLISTコマンドを送信し、リストを取得します。

 次にLSUBコマンドによって購読メールボックスの一覧を取得、表示します。

 クライアントはサーバにSELECTコマンドを送信し、メールボックスを選択し
 
 ます。

 その後FETCHコマンドでメールボックス内のメールデータを取得します。

 メールボックス内のデータを更新する場合はSTOREコマンドを使います。

 サーバとの接続を終了したい場合、クライアントはLOGOUTコマンドを使って

 コネクションを閉じます。


 他には以下のような操作があります。

 EXAMINEコマンド:SELECTコマンドを同様だが、読み出し専用でメールボックス

 を選択する。

 DELETEコマンド:サーバのメールボックスを削除する。

 RENAMEコマンド:サーバのメールボックス名称を変更する。

 CREATEコマンド:サーバにメールボックスを生成する。

 NOOPコマンド:サーバにNOOP (No operation) コマンドを送信。サーバは
        特に処理を行わない。キープアライブなどの用途。

 SUBSCRIBEコマンド:共有メールボックスに購読(subscribe)の設定を行う

 UNSUBSCRIBEコマンド:共有メールボックスに未購読(unsubscribe)の設定を行う

 
 11.6.4.2.3 IMAP通信の例

 これはRFC2060に載っている例です。

 S:がサーバからのメッセージで、C:がクライアントからのコマンドです。

 "a001"のようなものがタグです。

 LOGINコマンドでログインして、SELECTコマンドでメールボックス選択、FETCH

 コマンドでメールデータを取得して、STOREコマンドで削除フラグを付けて、

 FETCHで既読、削除フラグが追加され、その後ログアウト、という流れです。

S:   * OK IMAP4rev1 Service Ready
C:   a001 login mrc secret
S:   a001 OK LOGIN completed
C:   a002 select inbox
S:   * 18 EXISTS
S:   * FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
S:   * 2 RECENT
S:   * OK [UNSEEN 17] Message 17 is the first unseen message
S:   * OK [UIDVALIDITY 3857529045] UIDs valid

S:   a002 OK [READ-WRITE] SELECT completed
C:   a003 fetch 12 full
S:   * 12 FETCH (FLAGS (\Seen) INTERNALDATE "17-Jul-1996 02:44:25 -0700"
      RFC822.SIZE 4286 ENVELOPE ("Wed, 17 Jul 1996 02:23:25 -0700 (PDT)"
      "IMAP4rev1 WG mtg summary and minutes"
      (("Terry Gray" NIL "gray" "cac.washington.edu"))
      (("Terry Gray" NIL "gray" "cac.washington.edu"))
      (("Terry Gray" NIL "gray" "cac.washington.edu"))
      ((NIL NIL "imap" "cac.washington.edu"))
      ((NIL NIL "minutes" "CNRI.Reston.VA.US")
      ("John Klensin" NIL "KLENSIN" "INFOODS.MIT.EDU")) NIL NIL
      "<B27397-0100000@cac.washington.edu>")
       BODY ("TEXT" "PLAIN" ("CHARSET" "US-ASCII") NIL NIL "7BIT" 3028 92))
S:    a003 OK FETCH completed
C:    a004 fetch 12 body[header]
S:    * 12 FETCH (BODY[HEADER] {350}
S:    Date: Wed, 17 Jul 1996 02:23:25 -0700 (PDT)
S:    From: Terry Gray <gray@cac.washington.edu>
S:    Subject: IMAP4rev1 WG mtg summary and minutes
S:    To: imap@cac.washington.edu
S:    cc: minutes@CNRI.Reston.VA.US, John Klensin <KLENSIN@INFOODS.MIT.EDU>
S:    Message-Id: <B27397-0100000@cac.washington.edu>
S:    MIME-Version: 1.0
S:    Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
S:
S:    )
S:    a004 OK FETCH completed
C:    a005 store 12 +flags \deleted
S:    * 12 FETCH (FLAGS (\Seen \Deleted))
S:    a005 OK +FLAGS completed
C:    a006 logout
S:    * BYE IMAP4rev1 server terminating connection
S:    a006 OK LOGOUT completed


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 解┃答┃と┃解┃説┃
 ━┛━┛━┛━┛━┛

 《本日の試験対策問題》
  (解答)1
   
  (解説)

   1.LOGIN→CAPABILITY→SELECT→FETCH→LOGOUT
   2.AUTHENTICATE→SUBSCRIBE→FETCH→LOGOUT
   3.LOGIN→AUTHENTICATE→SELECT→FETCH→LOGOUT
   4.LOGIN→SUBSCRIBE→FETCH→SELECT→LOGOUT

    
   1が正解ですが、CAPABILITYはあってもなくてもよいです。

   2はメールボックスを選択するSELECTコマンドが足りません。

   3はLOGINのあとにAUTHENTICATEとなっていて、認証が重複して

   いるのでおかしいです。

   4はFETCH(データ取得)とSELECT(メールボックス選択)の

   順番が逆です。
   

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

◆◆◆◆◆◆ ┃ あとがき ┃ ◆◆◆◆◆◆

 今回のIMAPをはじめ、レイヤ7(アプリケーション層)の

 プロトコルは1つ1つがボリュームおおきいので、ネット

 ワーク技術者のなかでも名前くらいしか聞いたことが無い、

 という人も多いのではないでしょうか。

 アプリケーションはその手の専門家(専門ベンダ)が作っ

 ていたり、RFC化されていないものも多くあり、1つずつ

 技術仕様を確認するのがとても大変です。

 しかしネットワークセキュリティを扱ったり、ユーザに

 近いところでのトラブルシュートではレイヤ7のプロトコル

 の知識も必須です。

 個人的にも知らないことが多いのですが、できるだけ噛み

 砕いて紹介できるようにしたいと思います。 
 

 adzuki

………………………………………………………           
 IP Network Skill vol.000297 02/02/06
 発行者:adzuki http://www.xai.nu/ipnet  
…………… ipnet7@xai.nu ……           

◎ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄◎
| 新規購読・購読解除・バックナンバー ⇒ http://www.xai.nu/ipnet  
|  IP Network Skill 掲示板
|  ⇒ http://www.xai.nu/cgibin/ipnet/bbs.cgi  
|  バックナンバー一覧              
|  ⇒ http://xai.nu/ipnet/stack/index.html 
|  間違いご指摘
|  ⇒ メルマガにコメントを添えて返信ください。
◎_________________________________◎

 
このメルマガの読者になる
規約 
>> メルマ!の会報誌もお届けします
ブックマーク: はてなブックマークに追加del.icio.usに追加Buzzurlにブックマークニフティクリップに追加ライブドアクリップに追加Yahoo!ブックマークに登録My Yahoo!に追加Add to GoogleRSS

このメルマガを読んでいる人はこんなメルマガも読んでいます

のんびりやろう!情報処理試験! 〜1問1問コツコツと〜
ソフトウェア開発&基本情報技術者試験対策を中心に初級シスアドや高度区分まで幅広く対応。流行のIT用語の解説も行っているので,パソコンについて勉強した...
Office & VBA パーフェクトマスター
Excel・Access・Word等の今さら聞けない「疑問」、今すぐ知りたい「困った」、たちまち解決!のmoug(モーグ)がお送りする、関数初心者か...
ネットワークのおべんきょしませんか?
TCP/IPってなに?LANって?ルータって何をするの?というネットワークに関することをわかりやすく解説します。情報処理の試験を受ける方にもぴったり...
エクセル(EXCEL)+ワード(WORD)=MOUS School:マイクロソフト公認の資格をとろう!
マイクロソフト オフィスユーザ検定試験(MOUS)の資格取得を目的とした、各種情報(練習問題、解説)をご提供。仕事で役立つWord(ワード)/Exc...
IPネットワーク考
インターネットのネットワークSEの実務者が、IPネットワークにまつわる話題、問題、技術について実務者ならではの視点から解説します。ネットワーク、TC...


この記事へのコメント


コメントを書く
コメントはありません。

おすすめキャンペーン

利息が気になるあなたへ
オリックスVIPローンカードなら
<<年率5.9%〜15.0%、利用可能枠最高500万円>>
ゆとりのカードローンです。
←お申込みはこちら

melma!協賛企業

就職ならen|
スポーツNEWS速報!

その他ニュース 相次ぐ食品偽装 消えた年金達

メルマガデータ

  • メルマガID : 36790
  • 創刊日 : 2001-04-30
  • 最新号 : 2008-08-15
  • 発行周期 : 週刊
  • バックナンバー: 全て公開
  • 発行者サイト: あり
  • 読んでる人 : 1980人
  • コメント数 : 4
  • Score! : 100点
  • >> 月間ランキング

発行者プロフィール

ペンネーム :


このメルマガの読者になる

規約に同意する



このメルマガの最近の記事


このメルマガの最近のコメント


このメルマガのバックナンバー


注目情報


新着記事トピックス