13

私はAzure(ストライク1)を初めて使用し、ネットワーキング(ストライク2)を完全に嫌います。

それでも、同じ仮想ネットワークで2つのVMを稼働させています。1つはWebサーバーとして機能し、もう1つはSQLデータベースサーバーとして機能します。

それらの内部IPアドレスが両方とも同じネットワーク内にあることはわかりますが、マシンが相互に通信できることを確認できず、これに対処する適切な場所に関して混乱しています。

Microsoft自身のドキュメントによると

Windows Azureで作成するすべての仮想マシンは、プライベートネットワークチャネルを使用して、同じクラウドサービスまたは仮想ネットワーク内の他の仮想マシンと自動的に通信できます。ただし、インターネットまたは他の仮想ネットワーク上の他のリソースがマシンと通信できるように、エンドポイントをマシンに追加する必要があります。特定のポートとプロトコルをエンドポイントに関連付けることができます。リソースは、TCPまたはUDPのプロトコルを使用してエンドポイントに接続できます。TCPプロトコルには、HTTPおよびHTTPS通信が含まれます。

では、なぜマシンは少なくとも内部IPを介して相互にpingを実行できないのでしょうか。Windowsファイアウォールが邪魔になっていますか?単純なWebサーバー/データベースサーバーのセットアップに間違ったアプローチを選択したのではないかと思い始めています。私の無知を許してください。どんな助けでも大歓迎です。

4

2 に答える 2

13

両方のマシンが同じ仮想ネットワーク内にある場合は、Windowsファイアウォールをオフにするだけで、相互にpingを実行できるようになります。もう1つの方法は、詳細設定を使用して、Windowsファイアウォールですべての着信ICMPトラフィックを許可することです。

ただし、トリックがあります。両方のマシンはIPアドレスで相互に認識しますが、そのように定義された仮想ネットワークには名前解決はありません。名前でpingを実行することはできず、直接IPアドレスでのみpingを実行できることを意味します。したがって、Webサイト(VM1上)をSQL Server(VM2上)に接続する場合は、マシン名ではなく、完全なIPアドレスでアドレス指定する必要があります。

仮想ネットワーク内で名前解決を行う唯一の方法は、オンプレミスで保守および構成する専用のDNSサーバーを使用することです。

この記事では、WindowsAzureでの名前解決シナリオについて詳しく説明します。あなたの特定のケースはこれです:

同じ仮想ネットワークにあるが、クラウドサービスが異なる仮想マシンとロールインスタンス間の名前解決

VMを同じクラウドサービスにすると、名前解決を達成できる可能性があります。したがって、専用の仮想ネットワークも必要ありません。

于 2012-12-21T19:53:38.907 に答える
0

VMがAzureの仮想ネットワーク内にある場合は、2つのことを確認する必要があります。

  1. 必要なポートが有効になっています。
  2. サーバーでファイアウォールが無効になっています。

別のVMから、SQLServerDBがインストールされている1つのVMに接続しようとしました。SQLがインストールされているVMで1433ポートを有効にする必要がありました。このためには、Azure管理ポータルのVMにMSSQLエンドポイントを追加する必要があります。その後、Windowsファイアウォールを無効にしました。その後、別のVMに接続できました。

于 2016-01-04T09:23:32.073 に答える