Hyper-V上のWebサイト(Redmine, Jira)にホストPCのブラウザからアクセスする
Hyper-V上の仮想マシンにRedmineやJiraを構築したが、仮想マシン内のブラウザでは画面が狭いとか、コピー&ペースト出来ない等の課題があったので、Hyper-V上のWebサイトにホストPCのブラウザからアクセスする方法を調べました。
目的
Hyper-V上のWebサイトにホストPCのブラウザからアクセスする
環境
ホストPC:Windows 10 Pro 1803(April 2018 Update)*1
仮想マシンのIPアドレスを調べる
仮想マシン上で端末を開いてip addr show
を実行し、仮想ネットワーク上のIPアドレスを確認します。
このIPアドレスは、ホストPCの「既定のスイッチ」に割り当てられたアドレスと同じネットワークになります。
参考:
Windows 10 1709(Fall Creators Update/RS3) Hyper-V の NAPT 仮想スイッチ
ポートフォワーディングの設定を行う
Windowsのnetshコマンドを使用して、ホストPCへのアクセスを仮想マシンに転送する設定をします。
以下は、ホストPCの8080番ポートにアクセスすると、仮想マシンの80番ポートにつながる設定です。
listenaddressに「0.0.0.0」を指定しているため、ホストPCと同じLAN上にある他のPCからも「http://ホストPCのIPアドレス:8080/
」でアクセスできます。
netsh interface portproxy add v4tov4 listenport=8080 listenaddress=0.0.0.0 connectport=80 connectaddress=仮想マシンのIPアドレス
参考:
WindowsでVMへポート転送するときのメモ | hasegawayosuke's blog
仮想マシン上のファイアウォールを停止する
80番ポートのみを通すようにファイアウォールを設定すれば良いのですが、検証用途なのでファイアウォールが起動している場合は停止して、OS起動時にも起動しないようにします。
起動しているかどうか確認する
systemctl status firewalld
ファイアウォールを停止する
systemctl stop firewalld
OS起動時に起動しないようにする
systemctl disable firewalld
これでホストPCのブラウザのURLに「http://localhost:8080/
」と打つことで、仮想マシン上のWebサイトにアクセスできるようになりました。
以上
*1:1709(Fall Creators Update)ならばOK