« MBR地獄に填る(Thinkpad R50e) | Main | StanaPhoneに繋がらない?(E911規制の影響) »

PPTP先のDNSサーバを通知する

半年ぶりのご無沙汰でございます。書くべきお話はいろいろあるのですが、おいおい。

今日の話題はRT57i系でPPTP経由でPPTP先のDNSサーバが通知できないハマりのお話。
確か1年くらい前にもハマって、その時も途方に暮れたのですが、それをすっかり忘れて同じ問題を2度調べることになってしまいました。さすがに3度あってはならないことなので書き残しておくことにします。

*問題点*

以下のVPN設定の際にWindowsPPTPクライアント(2000/XP)へDNSサーバが通知できない

pp select 2
pp name RAS/VPN:VPNAccess
pp bind tunnel1-tunnel2
pp auth request mschap-v2
pp auth username *uid* *pass*
ppp ipcp ipaddress on
ppp ccp type mppe-128
ppp ccp no-encryption reject
ppp ipv6cp use off
ip pp remote address 192.168.100.10
ip pp secure filter in 202098
ip pp secure filter out 202098
pptp service type server
pp enable 2

*理由*

PPPのネゴシエーションにおいて、DNSサーバをクライアントに通知するためにPPP/IPCPのMS拡張オプションを有効にすることが必要だから。

*解決策*

ppp ipcp msext on

を設定する。どのDNSサーバが通知されるかは
dns notice order msext コマンドで決まる。
(RTのrecursive serverで良ければ dns notice order msext me で良い)

*注意*

YAMAHAのマニュアルを見ると、dns serverコマンドで設定したDNSサーバを通知するとなっている。しかし、recursiveサーバ通知のために自IPアドレスを設定すると、無限ループに陥ってルータが動作不能に陥るので絶対に行ってはいけない。
(他端末へのDHCPやMS拡張による通知以外にルータ自身のDNS参照の際にもこのアドレスを用いるため)

*雑感*

 自分ではMPPE-128bit設定をしていることによりMS拡張は動いているものと思っていました。(これは厳密にはPPP/LCPでのMS拡張ですね)
 PPPのネゴシエーションにおいては、細かなオプションの有無が接続性を決めます。 そのため、YAMAHAの場合、PPPの構成要素ごとにMS拡張を用いる/用いないが選べるようです。
 それは細かくマニュアルとetherealでプロトコルシーケンスを追ってはじめて気が付いたことでした。思いこみは本当に命取りになりますね。気を付けませんと。
 ちなみに、大抵の環境(VPN接続前にローカル環境でグローバルなDNSが参照できているケースでVPN接続後もインターネットに接続するのが目的の場合)ではこのコマンドを入れずとも問題にならなかったりします。ただ、VPN接続でどのサーバを見に行っているかのqueryがインターネット側のインターフェイスへ漏れてしまう可能性があります^^;;。

|

« MBR地獄に填る(Thinkpad R50e) | Main | StanaPhoneに繋がらない?(E911規制の影響) »

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



« MBR地獄に填る(Thinkpad R50e) | Main | StanaPhoneに繋がらない?(E911規制の影響) »