1

Azure ネットワーク内のサーバー間で SQL 接続を確立するのに非常に苦労しています。本当に奇妙なことは、VM ネットワークの外部にある自宅のマシンから SQL に接続できることです。まだ特定できていない、VM ドメイン内からのある種のネットワークの問題のようです。

私の構成は次のとおりです。

  • 3 つの VM (Active Directory、Sql Server、および App Server) があります。
  • アプリサーバーからSQLサーバーへのSQL接続を確立しようとしています
  • 両方の VM の Windows Server 2012
  • すべてのサーバーが同じ azure ネットワーク、アフィニティ グループ、ドメイン上にある
  • ドメインに接続され、IP を持つすべてのサーバー
  • SQLサーバーのコンピューター名を使用してアプリケーションサーバーからSQLサーバーにpingできるため、DNSが解決されていることがわかります
  • 両方のサーバーでポート 1433 での入出力を許可するファイアウォール ルールを作成しました
  • このコマンドが SQL Server で実行されるため、SQL Server はデフォルト ポートでリッスンしています (0.0.0.0 の IP を理解していませんが、これが問題になる可能性があります) (自宅から接続できるので、これで問題ないと思います)。

    netstat -an | 「:1433」を見つける

    TCP 0.0.0.0:1433 0.0.0.0:0 リスニング

    TCP [::]:1433 [::]:0 リスニング

  • デフォルトの SQL ポート 1433 用に SQL でパブリック エンドポイントとプライベート エンドポイントを作成しました

  • 実際に自宅のマシンから SQL Server に接続できます
  • 両方のサーバーでファイアウォールを一時的にオフにしました
  • アプリサーバーからの tracert は次のようになります。

    tracert spsql01

    spsql01 [10.0.0.7] へのトレース ルート

    最大 30 ホップ:

    1 * * * リクエストがタイムアウトしました。

    2 * * * リクエストがタイムアウトしました。

    3 * * * リクエストがタイムアウトしました。

    4 5 ミリ秒 <1 ミリ秒 1 ミリ秒 spsql01 [10.0.0.7]

    トレース完了。

  • App Server で connection.udl ファイルを作成して SQL Server への接続をテストしますが、接続テストに合格しません。 接続に失敗しました

4

1 に答える 1

0

Windows Azure の VM に適切な Windows Azure SQL データベース ファイアウォール ルールを作成しましたか? すべての Windows Azure に特別な 0.0.0.0 を使用するか、IaaS クラウド サービスのパブリック VIP (個々の VM のプライベート DIP ではない) を提供することをお勧めします。後者は、WASD へのアウトバウンド接続がパブリック VIP を使用するため、ファイアウォール アクセスをクラウド サービスのみに制限します。クラウド サービス内のすべての VM を削除 (または停止/割り当て解除) すると、VIP が失われることに注意してください。

于 2013-08-25T22:25:11.727 に答える