返信

こんばんわ。
今日は蒸し暑かったですね。

>2番目のパケットの中身なのですが、
>本によると同期を取る手続きをしているみたいです。
>その後、なぜか唐突にサーバー側よりコネクションを解除されます。

先日のパケットの説明だと,向こう側からパケットが返ってきたら,
メールサーバは別のサーバに接続しているので,
多分,同期をとっているんじゃなくて,
向こう側が接続を拒否しているんだと思います。
TCPコントロールビットのRSTが1にセットされているんじゃないかしら?
ちなみに,TCPコントロールビットっていうのは,
普通,イーサネットのパケットの先頭から48バイト目の6ビット目です。

>しかし、本物?メールサーバー(xmail)は
>なぜか指定もされていないdomainをDNSから解決し、
>全く別のサーバーにアクセスして送信を済ませてしまいます。

メールサーバは,DNSサーバにメール配送先(メールアドレスの@以後の文字列)
を問合せ,その回答に従って,メールサーバに接続します。
つまり,下の例のように,
DNSサーバからメールサーバが複数回答されるような場合は,
優先順の高いもの(preferenceの値の小さいもの)から順番に接続を試して,
つながった相手にメールを送るわけです。
(メールサーバ自身に,メール転送先が設定されている場合もありますが,それは例外)
だから,別のサーバにアクセスしても不思議はありません。

◆nslookupというユーティリティでDNSサーバに問合せた例
 Windowsのサーバ版やXPに入っています。
 手元にあったら,試してみるとよいでしょう。
-----[ここから]-----
c:\>nslookup
Default Server: xxxx.glasscom.com
Address: 10.10.1.80

> set type=mx <-- メール配送先を問合せるための指定
> xxxxxxx.com. <-- メールアドレスの@以後の文字列
Server: xxxx.glasscom.com
Address: 10.10.1.80

Non-authoritative answer:
xxxxxxx.com MX preference = 5, mail exchanger = mx1.xxxxxxx.com
xxxxxxx.com MX preference = 10, mail exchanger = mx2.xxxxxxx.com

xxxxxxx.com nameserver = ns.xxxxxxx.com
xxxxxxx.com nameserver = ns.usec.xxxxxxx.com
mx1.xxxxxxx.com internet address = 192.0.2.31
mx2.xxxxxxx.com internet address = 192.0.2.43
-----[ここまで]-----

>また、2番目に接続されるサーバーに直接のアクセスは不可能みたいです
>(pingは帰ってきますが、接続はできません)。

うーむ。
そっちのメールサーバにも,アクセス制限がかかっているのかもしれません。
ファイアウォールでパケットを遮断しているのかな?
まあ,とにかく,何かあるはずです。

>不要なパケットが多すぎて、本質をつかめません。

まず,キャプチャしたパケットを表示するときに,
フィルタ条件を設定して,不要なパケットを表示しないようにしましょう。

>マスタリングTCP/IP応用編に照らし合わせて読んでるのですけど、

そうやって不要なパケットを除いてから,ゆっくり,解説書とにらめっこすれば,
雰囲気はわかると思います。
それから,キャプチャするソフトの表示がわかりにくい,
という場合もあるかもしれません。
分かりにくかったら,別のキャプチャソフトを試して見ましょう。
解説書が分かりにくいのかもしれません。
別の本も読んでみましょう。

パケットの中身を調べるのって最初は難しいかもしれませんけど,
わかってしまえば,『なんだぁ,そんなことかぁ』っていうくらいで,
そんなに難しいことではありません。
あせらず,あきらめず,トライすれば道は開けると思います。

<code>Only

  • 使用できるHTMLタグ: <code>
  • 文字で図を描く場合に<code>と</code>で囲んでください
画像認証
機械的なスパムメッセージ送信を防止するために画像認証を設けています。ご協力ください。
Image CAPTCHA
Enter the characters shown in the image.