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 への接続をテストしますが、接続テストに合格しません。