Vagrant: kann nicht ping-Gast-Maschine vom host
Habe ich Mac OS mit installiert vagrant. Auf der Gast-Maschine habe ich Ubuntu 12. Also, was ich tun möchte ist die ping-Gast-Maschine vom host.
Gast Maschine befestigt NAT (nach VirtualBox-Einstellungen)
Fand ich nur eine Schnittstelle auf der Gast-Maschine (außer lo):
eth0 Link encap:Ethernet HWaddr 08:00:27:88:0c:a6
inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe88:ca6/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:581 errors:0 dropped:0 overruns:0 frame:0
TX packets:410 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:61376 (61.3 KB) TX bytes:51599 (51.5 KB)
Die Sache ist die, dass es keine ip-Adresse im 10.0.2.* Netzwerk auf dem host. Host-Maschine hat mehrere vboxnet Schnittstellen, aber Sie alle haben keine ip-Adressen:
vboxnet0: flags=8842<BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 0a:00:27:00:00:00
vboxnet1: flags=8842<BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 0a:00:27:00:00:01
vboxnet2: flags=8842<BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 0a:00:27:00:00:02
vboxnet3: flags=8842<BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 0a:00:27:00:00:03
Haben Sie eine Ahnung, warum die ip-Adresse wird nicht zugewiesen, um die host-Maschine von VirtualBox? Was kann ich tun, um in der Lage sein ping-gust Maschine?
Hier ist mein vagrant Datei (habe ich entfernt, einige kommentierte Zeilen, die ich nicht verwenden):
# -*- mode: ruby -*-
# vi: set ft=ruby :
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
# All Vagrant configuration is done here. The most common configuration
# options are documented and commented below. For a complete reference,
# please see the online documentation at vagrantup.com.
# Every Vagrant virtual environment requires a box to build off of.
config.vm.box = "hashicorp/precise64"
# The url from where the 'config.vm.box' box will be fetched if it
# doesn't already exist on the user's system.
# config.vm.box_url = "http://domain.com/path/to/above.box"
# Create a forwarded port mapping which allows access to a specific port
# within the machine from a port on the host machine. In the example below,
# accessing "localhost:8080" will access port 80 on the guest machine.
config.vm.network "forwarded_port", guest: 80, host: 8080
config.vm.network "forwarded_port", guest: 3306, host: 8086
config.vm.network "forwarded_port", guest: 27017, host: 27017
config.vm.synced_folder "/Users/KoulSlou/Documents/Cloudware12.10", "/vagrant", owner: "www-data", group: "www-data"
config.vm.synced_folder "/Users/KoulSlou/Documents/Cloudware/public","/cloudware", owner: "www-data", group: "www-data"
# Create a private network, which allows host-only access to the machine
# using a specific IP.
#config.vm.network "private_network", ip: "192.168.1.2"
# Create a public network, which generally matched to bridged network.
# Bridged networks make the machine appear as another physical device on
# your network.
# config.vm.network "public_network"
# If true, then any SSH connections made will enable agent forwarding.
# Default value: false
# config.ssh.forward_agent = true
...
end
Ich habe meine Vagrantfile. Für quick fix ich die auskommentierte Zeile config.vm.Netzwerk "public_network" und nach konnte ich ping virtuelle Maschine (ich brauche es zum testen meiner app), So dass Sie Ratschläge zu setup private Netzwerk?
InformationsquelleAutor Tamara | 2014-08-21
Du musst angemeldet sein, um einen Kommentar abzugeben.
Standardmäßig (also wenn nicht zu berühren Netzwerk-Konfigurationen), Vagrant konfiguriert VMs in VirtualBox zu befestigen Ihre erste interface (eth0) auf "NAT" (nicht zu verwechseln mit dem "NAT-Netzwerk", die andere option in VirtualBox).
Wenn Ihr die VM-Schnittstelle angeschlossen ist, NAT, die Gäste erhalten 10.0.2.15 IP. Auf der host-Seite können Sie nur sehen, vboxnet# interface ohne IP. Können Sie denken über diese Schnittstelle einen privaten router für das Gast.
VMs angeschlossen sind und NAT sind nicht routingfähig ist von der Außenwelt. Dies ist der Entwurf, und das ist einer der Gründe, warum vboxnet# interface keine IP. VMs sind in der Lage, den Zugriff auf die "Außenwelt", wie die internet-und host-Maschine, kann aber nicht zugegriffen werden, von der Außenwelt und ohne port-Weiterleitung.
Wenn Standard-Verhalten ist nicht, was Sie suchen, Vagrant bietet high-level-Abstraktion von Netzwerk-config:
Erweiterte Netzwerk-Konfigurationen sind möglich durch konfigurieren der Netzwerkfunktionen über provider-spezifischen Konfiguration.
Jede config hat Ihren eigenen vor-und Nachteile und es hängt wirklich davon ab, was Sie planen zu erreichen.
Für weitere Informationen schauen Sie VirtualBox ist docs über networking.
warum sollte es die akzeptierte Antwort, wenn es nicht behoben wird das problem in irgendeiner Weise?
InformationsquelleAutor m1keil
Ich bin mir nicht sicher, warum Sie sehen eine IP-Adresse für den Gast, aber Sie sind nicht die Konfiguration von virtualbox-networking-überhaupt gegeben, der vagrant Datei. Sie möchten, kommentieren Sie die
config.vm.network "private network"
Linie und dann konfigurieren Sie die IP-Adresse.Die Standard-Installation für die virtualbox zu setzen, die in der host 10.0.0.2 und setzen das gesamte 10.0.0.0/8 Bereich als lokale Adresse, so denke ich, dass irgendetwas in der 10.x.x.x-Reihe wird die Arbeit für die client-vm.
InformationsquelleAutor Wyatt Barnett
War ich genau in der gleiche Fall, hier ist eine Lösung, die für mich gearbeitet.
Wenn Ihr die vm aus war, es zu stoppen mit:
Dann gehen Sie zu Ihrem vagrant box, und öffnen Sie das VagrantFile.
Kommentieren Sie (oder manuell hinzufügen) die folgende Zeile in der es
Dies wird sicherstellen, dass die nächste mal, wenn Sie "vagrant up" Ihre vm, es wird sicherstellen, dass Ihre vm IP aus dem gleichen Subnetz wie Ihr host (siehe @m1keil-Antwort für weitere details).
Dann stellen Sie Ihre vm wieder:
In meinem Fall fragte er mich, welche Schnittstelle ich benutzen sollte für die Netzwerk-bridge, hier ist ein Auszug von dem, was ich hatte:
Beachten Sie, dass es sagt Ihnen, was Ihre verfügbaren Schnittstellen sind.
Geben Sie die entsprechende Nummer der Schnittstelle, die Sie wollen, in meinem Fall habe ich 1 getippt (für en0: Ethernet).
Und schließlich die Verbindung zu Ihrem vagrant box.
In meinem Fall:
Dann vom host, wenn Sie geben Sie ifconfig ein, Sie will immer noch nicht in der Lage, um zu sehen, die ip-Adresse der vm, ABER bei der Eingabe von ifconfig von deinem vm, es wird Ihnen eine ip-Adresse, die Sie ping/Zugriff von Ihrem host.
Hinweis: Wenn Sie möchten, ping/Zugriff auf Ihre host von Ihrem Gast, werden Sie sicher, dass Ihre firewall ist aus (System - >Einstellungen>Sicherheit). Die firewall hat keinen Einfluss auf pings vom host auf die vm, wenn.
InformationsquelleAutor ling