Page 1 of 1

Softetherを使用して拠点間接続をした際のDNSについて

Posted: Thu Sep 25, 2014 2:06 am
by ネットワーク管理初心者A
フォーラム投稿が初めてになります。よろしくお願いします。

Windows 64bit版v4.10-9473-betaのSoftether ServerとBridgeを使用して拠点間の
接続を試しています。
拠点AにServerを導入し、拠点BにてBridgeを導入して同一セグメント(ローカルブリッジ)
の接続が完了しており、仮想LAN内の機器間の通信において過不足なく実現できました。

しかしながら、拠点Bから仮想LAN経由でDNSのクエリが通らない状況であり、拠点Bの
Bridge配下のPCからインターネットへのアクセスがうまく行きません。

現状、拠点BのBridge用PCにはインターネット及び拠点Aへ向けたSoftether Serverに向けた
NICとBridge配下の接続に特化した仮想LAN接続用のNICを用意しております。

拠点BのBridge配下のPCには、拠点AからのDHCPサーバによるIPが割り当たっております。
Bridge配下のPCの設定は・・・
 ・IPはDHCPによる自動定義
 ・デフォルトゲートウェイは、DHCPサーバによるゲートウェイ(拠点A、拠点B共通)
 ・DNSは拠点AのADサーバ及び、拠点AのルータのIPアドレス
となっています。

まずはDNSクエリへの正常な名前解決、次にBridge経由のインターネットアクセスを実現したいと
希望しています。
現時点で何か設定が不足しているのか、或は根本的に間違っているのかなどご指摘を頂けると
助かります。

なお、最悪、Bridge配下のPCにNICを追加して、仮想LAN用NICとインターネット向けNICとして
運用せざるを得ないかとは考えています。

ご助言など、よろしくお願いいたします。

Re: Softetherを使用して拠点間接続をした際のDNSについて

Posted: Fri Sep 26, 2014 7:06 am
by ネットワーク管理初心者A
自己フォローです。

いろいろと確認した(porqryコマンド)ところ、UDP自体が拠点A、拠点B間で通って
いないようです。
DNSはUDPのPort53番ですから、これが原因と思われます。

Betaバージョンによる問題点でしょうか?
若しくはUDPの透過設定や特別な設定など、何か設定方法がありましたらご教授
願います。
よろしくお願いいたします。

Re: Softetherを使用して拠点間接続をした際のDNSについて

Posted: Fri Sep 26, 2014 11:34 am
by cedar
VPN Server のパケットログには、その DNS のクエリや応答は記録されているでしょうか。
また、仮想 HUB 拡張オプションやセキュリティポリシーやアクセスリスト機能など、仮想 HUB 内の通信を制限する機能は使用されているでしょうか。

Re: Softetherを使用して拠点間接続をした際のDNSについて

Posted: Sun Sep 28, 2014 11:30 pm
by ネットワーク管理初心者A
返信、ありがとうございます。
インラインで失礼します。

cedar wrote:
> VPN Server のパケットログには、その DNS のクエリや応答は記録されているでしょうか。

VPN Bridge側のログには、それらしきパケットのログは残っています。
(あくまでフリー版なので、それらしき時刻にログが残っているというレベルです)
VPN Server側には無い様です。

> また、仮想 HUB 拡張オプションやセキュリティポリシーやアクセスリスト機能など、仮想 HUB 内の通信を制限する機能は使用されているでしょうか。

現状、一切使用しておりません。
また、Bridge/Server側のファイアウォールをOFFにして試してみましたが、変わらない
ようです。

Bridge側にぶら下げたPCにVPN Clientを導入し、Serverに接続させるとUDP通信が
通るので、それで回避するしか手は無さそうな状況です。
(ただし、IPアドレスは2重に消費しますが・・・)

VPN Clientによる管理の増分を回避するため、ローカルブリッジ導入しようとしていたので、
本末転倒な状況ではありますが・・・・(苦笑

Re: Softetherを使用して拠点間接続をした際のDNSについて

Posted: Tue Sep 30, 2014 2:29 am
by ネットワーク管理初心者A
やはりBrdge側のログには残っているのですが、Server側のログには何も出ていない
状態のようです。

UDP通信はローカルブリッジでは通さないのでしょうか?

Re: Softetherを使用して拠点間接続をした際のDNSについて

Posted: Tue Sep 30, 2014 8:16 am
by cedar
不思議な現象ですね。
UDP がローカルブリッジを通っていないのであれば、Bridge の仮想 HUB のログにも残っていないはずです。

パケットログでは、その UDP パケットの宛て先セッションは VPN サーバーへのカスケード接続になっているでしょうか。

Re: Softetherを使用して拠点間接続をした際のDNSについて

Posted: Wed Oct 01, 2014 1:13 am
by ネットワーク管理初心者A
WireSharkにてパケットをキャプチャしてみました。
まず、Bridge配下のPCでのキャプチャでは、DNSクエリは、拠点AのDNSサーバ宛
にクエリを発行していますが、レスポンスはありませんでした。
同時にBridge側のローカルブリッジ用NICでキャプチャするとDNSクエリに関する
パケットは拾えていません。
#ARPのtelパケットは出ているようです。PC側ではDNSクエリパケットは出てるよう
#ですが。

Bridge側のローカルブリッジのNICには、一切のプロトコルスタック及び設定のチェック
ボックスはOFFにしてあります。

再度記載します。
Brige配下のPCの設定は....

     IP:拠点AのDHCPによるIP(192.168.0.0/24)
 デフォゲ:192.168.0.1(拠点Aのルータのプライベートアドレス)
   DNS:拠点AのWindowsServer1(ADの仕様による)
2ndDNS:WindowsServer2(ADの2ndServer)
3rdDNS:192.168.0.1(拠点Aのルータのプライベートアドレス)

となっております。

NetBIOSかLLMNRによる名前解決でWindows間のファイル連携はうまく行っていますが、
DNSは一切通らない状況のようです。

PC側の設定の問題か、Bridge側の問題か不明です。
何かしらご教授いただけると助かります。

ちなみにVPN Clientを立ち上げ、Serverに接続させるとDNSクエリは正常に外部に出て
Bridge側でもキャプチャでき、名前解決が通ります。

Re: Softetherを使用して拠点間接続をした際のDNSについて

Posted: Wed Oct 01, 2014 11:56 am
by cedar
ローカルブリッジで DNS のパケットが拾えていないのであれば、LAN カードが
プロミスキャスモードで動作していない可能性が考えられます。
VM で動作させていたり、無線 LAN カードを使用していないでしょうか。

Re: Softetherを使用して拠点間接続をした際のDNSについて

Posted: Wed Oct 01, 2014 11:22 pm
by ネットワーク管理初心者A
一応、VMでもありませんし、無線LANでもありませんが...

NICを1つ1つ有効、無効としてチェックしたところ、どうもNICのプロミスキャスモード
への変更ができていないようです。
確認に試用したツールはPromiScan(2012年版)です。
(このツールも複数NICの判定は怪しい状況ですが・・・・)

SoftEther Bridgeをインストール、動作させるとプロミスキャスモードに変更されると認識
していたのですが、違いますでしょうか?
また、申し訳ありませんが、Realteckの1000Base-TX NICの場合、或はIntelのPro 100
Base-Txでも構いません。
WindowsのNICプロパティの詳細などでプロミスキャスモードへ変更するのは詳細項目の
どれにあたりますでしょうか?

ご教授、よろしくお願いいたします。

Re: Softetherを使用して拠点間接続をした際のDNSについて

Posted: Thu Oct 02, 2014 2:55 am
by ネットワーク管理初心者A
自己フォローと追加情報です。

Intel Pro 100Base-TX側をローカルブリッジにし、TCP/IPスタックをONに設定(VPNとは
関係ないローカルIPを付与)したところ、PromiScanにてプロミスキャスモードがONになっ
ている事を確認できました。

SoftEther Bridgeでのプロミスキャスモードへの変更はちゃんと動作していると思われます。
(PromiScanはTCP/IPスタックが有効でないとNICの判定ができないと思われます)

なお、この状態でBridgeのPCと配下のPC、それぞれでWireSharkでキャプチャしてみま
したが、配下のPCからのDNSクエリをBridge側で拾う事はできませんでした。
換わりに同時刻にARPのパケットが出力されるだけでした。

つまり、DNSクエリを送信する前に配下のPC側のWindowsTCP/IPプロトコルスタックが
ARPでのroute確認(?)を行ってからDNSを出す仕様なのではないかと。
ProxyARPとしての設定において、SoftEther側の実装に問題があるのかもしれないと考えて
います。

何か解析や収集すべき情報などありますでしょうか?

Re: Softetherを使用して拠点間接続をした際のDNSについて

Posted: Thu Oct 02, 2014 8:58 am
by cedar
通常、IP プロトコルスタックはパケットの送信の前に ARP で 送信先の MAC アドレスの調査を行います。
この ARP パケットはブロードキャストで送信されることが多いので、プロミスキャスモードでなくても受信できます。
しかし、続いて送信される DNS クエリの本体はユニキャストで送信されるため、プロミスキャスモードででない
LAN カードでは自身の MAC アドレス宛でない場合破棄されてしまい、ローカルブリッジまで届きません。

SoftEther VPN は、Proxy ARP としては動作しません。
正常な状態であれば、ARP パケットはそのまま本来の宛て先(この場合は DNS サーバ)に届いて
応答が返信されてきます。

プロミスキャスモードの有効化に失敗した場合は VPN Bridge のログにエラーが記録されます。
また、プロミスキャスモードが有効であるにもかかわらず、セキュリティソフトなどによってパケットが
遮断されている可能性もあります。

Re: Softetherを使用して拠点間接続をした際のDNSについて

Posted: Thu Oct 02, 2014 10:32 am
by ネットワーク管理初心者A
返信、ありがとうございます。

セキュリティソフトの可能性を示唆していただいたので、確認をしてみました。
使用しているセキュリティソフトはSymantec EndPointだったのですが、ネットワーク
脅威防止に含まれるファイアウォールのルール設定を煮詰めなおしてみたところ、

・トラフィックの設定
 →”全てのトークンリングトラフィックを許可する”のチェックボックスをONに
・不一致IPへのトラフィックの設定
 →"IPトラフィックを許可する" のラジオボタンをONに設定

の2つの対処でDNSクエリ、Webアクセス、その他各種通信が通るようになりました。
おっしゃる通り、セキュリティソフトによるパケット遮断が原因だったようです。

いろいろとお騒がせしましたが、無事に解決できました。
ありがとうございました。