Ich muss einer VM unter Vmware Fusion 7 im Host-Only-Modus Internetzugriff gewähren. Ich weiß, wie es unter Linux mit den folgenden IPtables-Regeln geht:
sysctl -w net.ipv4.ip_forward=1
iptables -A FORWARD -o eth0 -i vboxnet0 -s 192.168.56.0/24 -m conntrack --ctstate NEW -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A POSTROUTING -t nat -j MASQUERADE
Ist dies in MacOS Sierra möglich?
Gehen Sie wie folgt vor, um NAT für ein Host-Only-Netzwerk in VMware Fusion zu aktivieren:
Aktivieren Sie die Weiterleitung, indem Sie eine Datei /etc/sysctl.conf mit folgendem Inhalt hinzufügen:
net.inet.ip.forwarding=1
und neu starten
Verbinden Sie den Mac mit dem Host-Only-Netzwerk und notieren Sie sich das Netzwerk/die Netzmaske des Host.Only-Netzwerks:
Geben Sie ein ifconfig
, um die vmnet-IP des Mac abzurufen
...
vmnet3: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 00:50:56:c0:00:03
inet 192.168.9.1 netmask 0xffffff00 broadcast 192.168.9.255
Geben Sie in der IP-Einstellung der Gast-VM eine IP/Netzmaske gemäß den Nur-Host-Netzwerkeinstellungen ein (im obigen Beispiel im Bereich 192.168.9.2-254/255.255.255.0), ein Gateway (die vmnet3-IP des Hostings Mac aus Schritt 3 - hier: 192.168.9.1) und einen DNS-Server.
Öffnen Sie die pf.conf-Datei mit:
sudo nano /etc/pf.conf
und füge die Zeilen hinzu:
nat on {en0, en1} proto {tcp, udp, icmp} from 192.168.9.0/24 to any -> {en0, en1}
pass from {lo0, 192.168.9.0/24} to any keep state
nach der Zeile rdr-anchor "com.apple/*"
.
Abhängig von Ihrem Mac und Ihrer Netzwerkkonfiguration ist nur eine Schnittstelle ausreichend (entweder en0 oder en1). Verwenden Sie auch das richtige Netzwerk/die richtige Netzmaske (Ihre vmnet-Konfiguration anstelle von 192.168.9.0/24)!.
Speichern Sie die Datei und beenden Sie nano.
Überprüfen Sie Ihre pf.conf mit:
sudo pfctl -vnf /etc/pf.conf
Wenn kein Fehler auftritt, aktivieren Sie pf mit:
sudo pfctl -ef /etc/pf.conf
Nach einem Neustart müssen Sie pf neu starten, da es beim Booten nicht automatisch gestartet wird. Um pf während des Bootens zu starten, überprüfen Sie Schritt 4 in dieser Antwort: Was ist die moderne Methode zur Portweiterleitung auf El Capitan? (Port 80 auf 8080 weiterleiten)
Pfauen
Shuzheng
{en0,en1}
, wennifconfig
sich das Interface als meldetvmnet3
? Korrigieren Sie außerdem bitte „die IP des Mac aus Schritt 2“ auf „die IP des Mac aus Schritt 3“.klanomath
Shuzheng