visha (779) の日記

2003 年 05 月 22 日
午前 10:29

NetBSDとPath MTU Discovery

朝のメンテナンス作業中に、いくつかのメールが

deferral: Connected_to_xxx.xxx.xxx.xxx_but_connection_died._Possible_duplicate!_(#4.4.2)/

と言われて遅延しているのを見つけた。普段メールをやり取りしている会社相手だから「何でだろうなぁ...」と思案してふと気がついた。ルータのnet.inet.ip.mtudiscが0のままぢゃん。そうなのだ。会社のゲートウェイに使っているのはNetBSDでこさえたルータであり、ついこの間1.6.1にアップグレードしたばかりなのだが、こいつの/etc/sysctl.confにnet.inet.ip.mtudisc=1を加えるのを忘れていたのだ。以前ルータをLinuxからNetBSDに変更した時にも痛い目に遭っていたのに。

ということで、ルータ上でsudo sysctl -w net.inet.ip.mtudisc=1を実行した上で、メールゲートウェイでsudo svc -a /service/qmailを実行したらあっさり配送されましたとさ。この状態で1週間も放置していたんだからぞっとするね。

それにしても、NetBSDって何でnet.inet.ip.mtudiscがデフォルトで0なんだろう。確かにまぁマルチホームホストでフォワーディングするのでなければ不要な機能だとは思うが、だったらnet.inet.ip.forwading=1の時は同時にnet.inet.ip.mtudisc=1にしてくれればいいのにと思ってしまう。何か理由があるんだろうか。軽くぐぐった範囲ではわからなかった。

[5/28追記]
上記のように書いたが、やはり起点となるホストがnet.inet.ip.mtudisc=0だと同様の配送不具合は発生する。net.inet.ip.mtudisc=1にすれば解消する。ちょっとこのあたりの理解が間違っているようだ。いかんいかん...

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

犯人は巨人ファンでA型で眼鏡をかけている -- あるハッカー

処理中...