Netplan-Konfiguration auf der virtuellen Maschine mit Ubuntu 17.04


12

Ich verwende VirtualBox mit zwei Netzwerkadaptern: Standard-NAT (enp0s3) und einem Host-only-Adapter (enp0s8). Ich verwende NAT, um von meinem lokalen Computer aus auf das Internet und den Host-only-Adapter für SSH zuzugreifen.

Die Box startet mit beiden Adaptern, beide haben IP-Adressen, alles sieht gut aus.

ifconfig-Ausgabe

Ich kann in diese Box über den Host-Only-Adapter SSH, dort keine Probleme. Aber damit komme ich nicht ins Internet. Wenn ich jedoch den Host-Only-Adapter deaktiviere, kann ich auf das Internet zugreifen (aber offensichtlich kann ich nicht mehr über den lokalen Tunnel SSH-Verbindungen herstellen).

Konsolenausgabe

Und zum Schluss ist hier meine Netplan Yaml Konfiguration:

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
ethernets:
  enp0s3:
    dhcp4: yes
    dhcp6: yes
  enp0s8:
      dhcp4: no
    dhcp6: no
    addresses: [192.168.52.101/24]
    gateway4: 192.168.52.101

Irgendwelche Ideen? Es scheint, als ob mein gesamter ausgehender Datenverkehr irgendwie über den Host-Only-Adapter geleitet wird.

Bearbeiten: Anhängen der Ausgabe von, ip route listfalls es hilft.

default via 192.168.52.101 dev enp0s8 proto static
default via 10.0.2.2 dev enp0s3 proto dhcp src 10.0.2.15 metric 100
10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15
10.0.2.2 dev enp0s3 proto dhcp scope link src 10.0.2.15 metric 100
192.168.52.0/24 dev enp0s8 proto kernel scope link src 192.168.52.101

Vergiss es, ich konnte netplan nicht herausfinden und habe stattdessen Ubuntu 16 formatiert und installiert.
HalloJason

Antworten:


12

Ich fand dieses Problem heute Nachmittag genauso. Irgendwie gelang es mir, das herauszufinden und netplan erstellte schließlich nur eine Standardroute über die NAT-Schnittstelle meiner VM. In meinem Fall waren beide IPs 192.168.56.101 (nur Host) und 10.0.3.x / 24 (NAT dhcp4). Ich benutze diese Netplan-Datei:

    network:
      version: 2
      renderer: networkd
      ethernets:
        enp0s8:
          dhcp4: yes
          dhcp6: yes
          routes:
          - to: 0.0.0.0/0
            via: 10.0.3.2
            metric: 0
        enp0s3:
          dhcp4: no
          dhcp6: no
          addresses: [192.168.56.101/24]
          routes:
          - to: 192.168.56.1/24
            via: 192.168.56.1
            metric: 100

Damit habe ich nur eine Standardroute und benutze die NAT, um über meinen Host ins Internet zu gelangen.

Ausgabe von ip r

default via 10.0.3.2 dev enp0s8 proto dhcp src 10.0.3.15 metric 100
10.0.3.0/24 dev enp0s8 proto kernel scope link src 10.0.3.15
10.0.3.2 dev enp0s8 proto dhcp scope link src 10.0.3.15 metric 100
192.168.56.0/24 dev enp0s3 proto kernel scope link src 192.168.56.10

2
Gute Antwort! In diesem Fall müssen Sie in der Tat Ihr eigenes Routing einrichten. Wenn beide Geräte ein "Standard-Gateway" enthalten (dh "dhcp4" oder "dhcp6" angeben oder "gateway4" festlegen), richtet das System beide Geräte mit einem Standard-Gateway mit derselben Metrik ein. Sie brauchen die Route auf enp0s3 jedoch nicht, da die "Adressen" bereits dasselbe / 24-Subnetz enthalten, das für den Zugriff auf 192.168.56.1 verwendet werden würde. Alternativ können Sie Ihr eigenes Routing so einstellen, wie Sie es gerade tun.
Mathieu Trudel-Lapierre

11

Für mich hat das Entfernen gateway4aus der Konfiguration den Trick gemacht. Mit dieser Konfiguration konnte ich auch kein Ping-Signal senden.

Hier ist meine NetPlan-Konfiguration, wenn sie anderen helfen kann.

Hinweis: enp0s3 ist für SSH über Portweiterleitung und enp0s8 für statische IP

network:
    ethernets:
        enp0s3:
            addresses: []
            dhcp4: true
            optional: true
        enp0s8:
            addresses: [192.168.10.20/24]
            dhcp4: no
            dhcp6: no
            nameservers:
              addresses: [8.8.8.8, 8.8.4.4]
    version: 2

2
Ja, das Entfernen der Gateway4-Leitung war das einzige, was bei mir funktioniert hat.
Furman87

0

Als Hinweis, während ich mit dieser und VMware Fusion zu kämpfen hatte ... Wenn Sie einen 'gateway4'-Wert angegeben haben, wird dieser als Standard für die Schnittstelle angenommen und die Option' metric 'oder scheint nicht zu respektieren In meinem Fall waren mehrere .yaml-Dateien mit einer Nummerierungsfolge (01-netplan.yaml, 02-netplan.yaml usw.) der erste Standardwert, aber das ist mein internes Netzwerk nicht erreichbar.


Hallo Mike - willkommen bei askubuntu. Dies wäre besser als Kommentar unter der Frage. Sie sollten den Text dorthin verschieben und einfach löschen, da er die Frage nicht "beantworten" soll.
DPB
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.