ぽっぺん日記@karashi.org
2004-09-08(Wed) [長年日記]
_ mpd + ipf + ipnat
せっかく、otsuneさんからアドバイスを頂いていたのに、業務が忙しくて放置モードになっておりました。本当に申し訳ありません。
時間ができたので、試してみようと思ったのですが、先方に「テストメール送ってくれ」と連絡しても返事がない。orz
うーん、User Unknowなアドレスにメール打って試してみるかな……。
_ やってみた
エラーメールも返ってこないんだけど。もしかして先方のサーバが死んでる?*1
海外だしなー。それなりにデカい組織なんで、どこに連絡すりゃいいかもよく分からんし。
*1 MXは生きてるみたいだけど。
_ しかたがないので、前に採っておいたtcpdump出力を俺の乏しい知識を活用して読んでみた
内容は、先方のメールサーバとこちらのメールサーバのやりとり。やりとりの頭だけを採取してて、途中で止めてしまったので、あまり役に立たん気もするけど。
kocchi.example.co.jpはこっち、aite.example.comは先方。
10:31:19.978719 aite.example.com.28675 > kocchi.example.co.jp.smtp: S 2171186553:2171186553(0) win 65535(DF) 10:31:19.979315 kocchi.example.co.jp.smtp > aite.example.com.28675: S 2271148437:2271148437(0) ack 2171186554 win 57344 (DF) 10:31:20.173860 aite.example.com.28675 > kocchi.example.co.jp.smtp: . ack 1 win 65535 (DF) 10:31:20.187334 kocchi.example.co.jp.smtp > aite.example.com.28675: P 1:36(35) ack 1 win 57974 (DF) 10:31:20.376107 aite.example.com.28675 > kocchi.example.co.jp.smtp: P 1:37(36) ack 36 win 65500 (DF) 10:31:20.376970 kocchi.example.co.jp.smtp > aite.example.com.28675: P 36:109(73) ack 37 win 57974 (DF) 10:31:20.627608 aite.example.com.28675 > kocchi.example.co.jp.smtp: P 37:51(14) ack 109 win 65427 (DF) 10:31:20.628256 kocchi.example.co.jp.smtp > aite.example.com.28675: P 109:117(8) ack 51 win 57974 (DF) 10:31:20.822046 aite.example.com.28675 > kocchi.example.co.jp.smtp: P 51:89(38) ack 117 win 65419 (DF) 10:31:20.822729 kocchi.example.co.jp.smtp > aite.example.com.28675: P 117:125(8) ack 89 win 57974 (DF) 10:31:21.038039 aite.example.com.28675 > kocchi.example.co.jp.smtp: P 89:95(6) ack 125 win 65411 (DF) 10:31:21.088272 kocchi.example.co.jp.smtp > aite.example.com.28675: P 125:139(14) ack 95 win 57974 (DF) 10:31:21.325511 aite.example.com.28675 > kocchi.example.co.jp.smtp: P 1555:2143(588) ack 139 win 65397 (DF) 10:31:21.325941 kocchi.example.co.jp.smtp > aite.example.com.28675: . ack 95 win 57974 (DF) 10:31:21.520884 aite.example.com.28675 > kocchi.example.co.jp.smtp: P 2143:3129(986) ack 139 win 65397 (DF) 10:31:21.521375 kocchi.example.co.jp.smtp > aite.example.com.28675: . ack 95 win 57974 (DF)
ここまで。記憶によると、ここから全くaite.example.comから返事が来なくなる。
気になるのはシーケンス番号95:1555のパケットが来ていないこと。
うん? っつーか、このパケットのサイズ、1460バイトじゃん。こりゃMSSの調整がうまくいってないんだな。
そうなると2行目の"mss 1460"がちと気になるが、現在、正常に動いているpppのtcpdumpも見てもIncomingに対しては"mss 1460"を返してるので、たぶん問題ないと思う(ちと弱気)。
mpdを使っていた時にも、こっちからのメールは何事もなく先方に届いていたので、MSSの調整はうまくいっていたはず。事実、
# route get aite.example.com
した時にはMTUは1454だった。そうなると、Incomingのパケットへの返事についてはipnatのmssclampが効いていないのか?
うーん、ipnat.rulesの
map ng0 DMZ/29 -> 0/0 mssclamp 1414
がIncomingにはあまり効果がないのかもしれない(ほとんどのメールは届いていたという事実はちと変な気もするけれど)。
それとも経路上にブラックホール・ルータがあるのだが、pppではOKで、mpd + ipnat(mssclamp付き)ではダメってことなんだろうか。先方のネットワークはpingもtracerouteも通らないので、単純にicmpは全部叩き落とす設定になっているということも考えられるのだけども。
とりあえず、今後試してみる価値のある解決策は
- otsuneさんに教えて貰ったように、rdrなどを使ってIncomingなパケットへ返事する際のmssを調整する(rdrでGLOBAL_IP to GLOBAL_IPのmssが調整できるかどうか分からんけど)。
- メールサーバのMTUを1454にしてしまう(どうかなーって気もするが)。
こんなところかな。いずれにしても相手側からメールが来ないと確かめようがないのだけども。
_ あー、上の内容、なんか激しく間違っている気がする
すげぇ恥ずかしいことを書いちゃった気がするんですが、もし私の間違った知識を修正訂正してやろうという優しい方がいらっしゃいましたら、「そうじゃねーだろ、ボケ」と優しく教えて頂ければ幸いです。m(_ _)m
ラングーン侵攻〈上〉―覇者の戦塵1944 (C・NOVELS)(谷 甲州)

まで頂ければ幸いです。
タイタス・クロウの帰還 (創元推理文庫 F ラ 4-3 タイタス・クロウ・サーガ)(ブライアン・ラムレイ)
叛逆としての科学―本を語り、文化を読む22章(フリーマン・ダイソン)
ゲバルト時代 SINCE1966-1973 あるヘタレ過激派活動家の青春(中野正夫)