virtualbox のゲストOSにtcp server起動して外部PCから接続する
2024/01/18 03:00:00
前提 #
- ホストOS、ゲストOSは windows10, 外部pc も windows10 を想定
- ホストOSには virtualbox がインストール済み
- ゲストOSは NAT 接続とする
- tcp 接続には以下を使用する
https://blog.oya3.net/posts/2024/01/16/python-stream/
https://github.com/oya3/pystream
tcp 接続環境構築 #
ホストOS設定 #
-
ホストOSのipを確認しておく cmd.exe 起動し以下を実施する
$ ipconfig イーサネット アダプター イーサネット: 接続固有の DNS サフィックス . . . . .: ???? IPv4 アドレス . . . . . . . . . . . .: 192.168.1.xxx <--- ここ サブネット マスク . . . . . . . . . .: 255.255.255.0 デフォルト ゲートウェイ . . . . . . .: 192.168.1.254
-
virtualbox の ゲストOSのネットワーク設定の詳細にtcp server待ち受けようポートのポートフォワード設定追加(ポート8080とする)
-
ゲストOS起動
ゲストOS設定 #
- https://github.com/oya3/pystream からdist/server.exe, dist/server.yaml を取得
- ゲストOSのipを確認しておく
cmd.exe 起動し以下を実施する
$ ipconfig イーサネット アダプター イーサネット: 接続固有の DNS サフィックス . . . . .: ???? IPv4 アドレス . . . . . . . . . . . .: 10.0.2.xxx <--- ここ サブネット マスク . . . . . . . . . .: 255.255.255.0 デフォルト ゲートウェイ . . . . . . .: 10.0.2.2
- dist/server.yaml の ip をゲストOSのipに編集、port を 8080 に編集する
- dist/server.exe を起動する(ダブルクリックすると以下のcmd画面が表示される)
server 10.0.2.xxx:8080
外部PC設定 #
- https://github.com/oya3/pystream からdist/client.exe を取得
- cmd.exe を起動しdistディレクトリに移動し以下を実行する
$ client.exe 192.168.1.xxx 8080 テストメッセージ [*]Received a response : ACK!! [テストメッセージ] #<--- ゲストOSのtcpサーバからの応答
- ゲストOSのサーバ側のログには以下のようになる
server 10.0.2.xxx:8080
[*] Connected!! [ Source : ('10.0.2.xxx', 58024)]
[*] Received Data : テストメッセージ