開発マシンに vagrant 1.2.2 をインストールしています。ノートパソコン。ネットワーク設定が異なる3つの異なる環境で同じラップトップを使用しています。
私のVagrantFileは次のようになります:
Vagrant.configure("2") do |config|
config.vm.box = "lucid32"
config.vm.network :forwarded_port, guest: 80, Host: 88
config.vm.network :forwarded_port, guest: 56789, Host: 56789
config.vm.network :public_network, :bridge => 'Intel(R) 82579V Gigabit Network Connection'
config.vm.hostname = "web"
end
ヘッドレスUbuntuでホスト名をweb
として正常に設定します。
しかし、ホストOS(Windows)からweb
にpingを実行しようとすると、IPアドレスが解決されません。
他のオフィスに移動すると、クラスCサブネットマスクとIP範囲が異なるため、毎回Windowsでhostsファイルを変更できません。
ホスト名web
を介してホストマシンからゲストにアクセスする方法はありますか?
Andyのアドバイスに従って、静的IPアドレスを使用してプライベートネットワークを作成しました。次に、Windowsホストで、そのIPアドレスを使用してホスト名を構成しました。このようにして、ローカル/ホストOSからWebサーバーにアクセスできます。
次に、VagrantFileで、ホストコンピュータのポート88がゲストの80(config.vm.network :forwarded_port, guest: 80, Host: 88
)、ローカルLANコンピューターから次のようにしてWebサーバーにアクセスできます:http://Host-computer-name:88/
。
ホストがVMへの接続に使用できるプライベートネットワークも指定しないのはなぜですか?
http://docs.vagrantup.com/v2/networking/private_network.html
プライベートIPはどこに行っても同じままです。次に、このプライベートIPのホストエントリを追加できます。
他のコンピュータから「ウェブ」にアクセスするには、LAN上のDNSサーバーにDNSエントリを追加する必要があります。
ただし、ラップトップが新しいIPアドレスを取得するたびにDNSエントリを更新する必要があるため、これまでの説明から問題が生じる可能性があります。
このvmをネットワーク上の他の数人と時々共有したい場合は、変更するたびにIPアドレスを伝えるだけです。
多くの人がVMにアクセスする場合、またはIPが頻繁に変更される場合は、VMをラップトップから専用サーバーに移動するか、ec2インスタンスを取得する必要があります。
Vagrantは、自分のワークステーションでvmを起動するのは得意ですが、他の人とvmを共有するのには適していません。