
同じマシンでホストされている VM からハイパーバイザー ホストのポートに接続するために私が苦労した経緯を以下にまとめます。
Hyper-V マネージャーで設定します。
- 仮想スイッチ設定
- 内部
- 「管理オペレーティング システムの仮想 LAN 識別を有効にする」
- VLAN番号2
仮想マシン(client-01)をセットアップする
- ネットワークアダプタの設定
- 「仮想LAN識別を有効にする」
- VLAN番号2
ホスト desktop01 (ホスト) のアダプタに設定された IP4: 192.168.5.1 255.255.255.0
ホスト client-01 (vm) のアダプタに設定された IP4: 192.168.5.10 255.255.255.0
クライアントは、ホスト上で実行されている 'http://desktop01' ポート 80 に正常に移動できます (ホスト上で小さな Web サイトが実行されています)
クライアントからの 192.168.5.1 への Ping は正常です
ホストからの 192.168.5.10 への Ping は正常です
ホストのWindowsファイアウォールで受信に10000をOKとして追加しました
ホスト上で 10000 のリスナーを開きましたが、クライアントでは次のようになります:
PS C:\Users\user-01> test-netconnection -ComputerName 192.168.5.1 -Port 10000
WARNING: TCP connect to 192.168.5.1:10000 failed
ComputerName : 192.168.5.1
RemoteAddress : 192.168.5.1
RemotePort : 10000
InterfaceAlias : Ethernet
SourceAddress : 192.168.5.10
PingSucceeded : True
PingReplyDetails (RTT) : 0 ms
TcpTestSucceeded : False
リスナーは私が書いた C# プログラムです。何か問題があると思われるかもしれませんが、PowerShell は同じマシンから問題なく接続を確立できます。つまり、ファイアウォールの問題のようですが、すでにそこにエントリを作成しており、ログ ファイルには何も記録されていません。何が原因でしょうか?
答え1
「VLAN 番号 2」ではなく「デフォルト スイッチ」に戻したところ、すべてが完璧に動作するようになりました。したがって、教訓としては、デフォルト スイッチを使用することです。