PPTPdで接続出来ないサイトがある!
何をいっているか?というと、あるシステムにログインするために、pptpdを立ち上げてそこ経由にログインできるのだが、利用者様から、ある特定のサイトに接続できない。もしくは、接続はしているみたいだけど、コンテンツの情報が文字化けしまくって画像とか出たりで無かったりする。という問い合わせがきた。
調べる・・・
ということで、調査を開始した所、特にシステム上問題なさそうだがなぁ。とそのサイトのURLを送ってもらう。そしたら、実際に接続できねーじゃん・・・。ただ、目的のシステムにはログインできているのだから、贅沢言うなよってのは、心の声としてw。接続できないのはリアルなので、継続して調べる。
発見しました
/var/log/messages になにやらエラーログをはいている。しかも、kernelがはいてるぞ。
kernel: ppp compressor dropped pkt
むむむ!これだなぁ。かなり大量に出ている。ということは、何らかのサイトの状況により何らかの原因によって、引っかかっているっぽい。まあ、筆者の長年の感っていうんですかね?こういうのは、どうせパケットサイズいわゆるMTU辺りの話ですよ。きっとw とっととTCPダンプを取って原因を追及するのです。
VPNを貼った時に、パケットの内容がかわってしまうので、MTUが変な値になって、通信が詰まっているっぽいです。さて、どこに設定を突っ込むかな。pptpdは、セッションを貼った時にpppってインターフェースを作り出して、内部ルーティングしてGWから外部に通信していく想定なので、PPPインターフェースに指定のMTUを設定すれば良い話なので、下記をさっくり設定する。
OSは、CentOS6なので、下記のファイルをいじる事にする。
/etc/ppp/ip-up
ここのexit 0の前に下記を入れる
ifconfig ppp0 mtu 1500
これで解決できるというナレッジでした。