====== VirtualBox ====== VM VirtualBoxとは、Oracleが開発しているx86仮想化ソフトウェア・パッケージである。\\ https://www.virtualbox.org/ ==== インストール ==== Windows版ダウンロード\\ http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html?ssSourceSiteId=otnjp ==== ゲストOSの構築 ==== === 64bit OS === 64bit OS(例 Windows/Ubuntu)を構築するには、Hyper-Vが有効化されている必要がある。よって仮想環境(例 192.168.64.188)では使用できない、物理環境であるgounn2(192.168.64.32)または個人PCで使用する。 === 32bit OS === 32bit OS(例 Windows/Ubuntu)を構築するには特に制限はない。 === Guest Additions === VirtualBox Guest AdditionsはゲストOSにインストールすることで、ホストOSとゲストOS間のより緊密な統合を行い、ゲストOSをより使いやすくするための以下の機能が利用できるようになります。 * シームレスなマウス操作 * 共有フォルダー * デスクップ解像度の変更 * シームレスなウィンドウサイズの変更 * ホストとの時刻の同期 * クリップボードの共有 * オートログオン [[https://pc-karuma.net/virtualbox-install-guest-additions/|VirtualBoxの使い方 – Guest Additions のインストール]] ==== ネットワーク設定 ==== デフォルトは、「NAT」となっている。\\ {{:it技術:vboxnetwork.png|}} ネットワークアドレスは、10.0.2.0/24 で、ゲストOSのIPアドレスは、10.0.2.15 が割り当てられます。\\ 10.0.2.2 はゲートウェイ、10.0.2.3 はネームサーバ、10.0.2.4 はTFTPサーバーが割り振られます ネットワーク設定は幾つかあるが、NATとポートフォワーディングで用は足せる。 * [[http://zorinos.seesaa.net/article/450304938.html|VirtualBox: ネットワーク設定]] * [[https://blog.flan999.com/?p=177|VirtualBoxで使用出来るネットワークアダプタについて]] * [[https://www.virtualbox.org/manual/ch06.html#network_nat|Chapter 6. Virtual Networking]] === ポートフォワーディング === ポートフォワーディングとは、インターネットから特定のポート番号宛てに届いたパケットを、あらかじめ設定しておいたLAN側の機器に転送する機能です。 ゲストOSのIPアドレスは、10.0.2.15 が割り当てられるが、ホストや外部から10.0.2.15にPINGしても応答しない。\\ ゲストOSのPostgreSQLにアクセスしたい場合、ポートフォワーディングの機能を使用する。 ネットワーク設定で割り当てに「NAT」を選択するとポートフォワーディングボタンが表示されるのでクリックします。\\ ポートフォワーディングの設定例として、IISとPostgreSQLを設定します。ゲストIPは空欄でも構いません\\ {{:it技術:vboxportforwarding.png|}} それにともないホスト側のファイアウォールで、PostgreSQLならポート「5435」およびIISならポート「8080」を受信許可にしておく必要があります。\\ {{:it技術:vboxfirewall.png|}} * [[https://8oclockis.blogspot.com/2018/04/virtualbox.html|VirtualBoxのポートフォワーディング設定]] * [[https://elephantcat.work/2020/02/04/post-403/|WindowsからPostgreSQLに繋ぐ]] ===== 外部アクセス ===== ポートフォワーディング機能により、指定したポートがゲストOS内のポートに置き換わることでアクセスができるようになる。 === データベース接続 === データベース接続ツール(例 A5:SQL Mk-2)のサーバー名には、ホストのIPアドレスを指定しポート(例 5435)を指定することで、ゲストOS内のPostgreSQLにアクセスが出来るようになる。 === Web接続 === ゲストOS内IISにアクセスするには、ホストのIPアドレスを指定しコロン(:)後にポート(例 8080)を付与する。 http://ホストIPアドレス:8080/Test/sample.aspx