konfigurasi netplan pada mesin virtual Ubuntu 17.04

13

Saya menjalankan VirtualBox dengan 2 adapter jaringan: NAT standar (enp0s3) dan Adapter Host-only (enp0s8). Saya menggunakan NAT untuk mengakses internet dan Host-only Adapter ke SSH dari mesin lokal saya.

Kotak boot dengan kedua adapter diaktifkan, keduanya memiliki alamat IP, semuanya tampak baik.

ifconfig-output

Saya bisa SSH ke dalam kotak ini melalui adaptor host-only, tidak ada masalah di sana. Tapi saya tidak bisa terhubung dengan internet. Namun, jika saya menonaktifkan adaptor host-only, maka saya dapat mengakses internet (tapi jelas saya tidak bisa lagi SSH ke dalamnya melalui terowongan lokal).

konsol-output

Dan akhirnya, ini adalah konfigurasi netplan yaml saya:

# 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

Ada ide? Sepertinya mungkin semua lalu lintas keluar saya merutekan melalui adaptor host saja.

Sunting: melampirkan output ip route listseandainya itu membantu.

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
hellojason
sumber
Lupakan saja, saya tidak tahu netplan jadi saya memformat dan menginstal Ubuntu 16 sebagai gantinya.
hellojason

Jawaban:

12

Saya menemukan masalah ini melakukan hal yang persis sama sore ini. Entah bagaimana berhasil mengetahuinya dan netplan akhirnya hanya membuat 1 rute default melalui antarmuka NAT VM saya. Dalam kasus saya, kedua IP adalah 192.168.56.101 (hanya host) dan 10.0.3.x / 24 (NAT dhcp4). Saya menggunakan file netplan ini:

    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

Dengan ini saya hanya memiliki satu rute default, dan menggunakan NAT sehingga dapat mencapai internet melalui host saya.

Output dari 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
alfonso.ss
sumber
2
Jawaban bagus! Anda memang perlu mengatur perutean Anda sendiri dalam hal ini. Jika kedua perangkat menyertakan "gateway default" (mis. Mereka menentukan "dhcp4" atau "dhcp6", atau mengatur "gateway4"), maka sistem akan mengatur kedua perangkat dengan gateway default dengan metrik yang sama. Anda tidak memerlukan rute pada enp0s3, karena "alamat" sudah berisi subnet / 24 yang sama dengan yang akan digunakan untuk mengakses 192.168.56.1. Atau, atur rute Anda sendiri di mana-mana seperti yang Anda lakukan.
Mathieu Trudel-Lapierre
12

Bagi saya menghapus gateway4dari konfigurasi melakukan trik. Dengan itu dikonfigurasi saya juga tidak dapat melakukan ping internet.

Ini adalah konfigurasi netPlan saya jika dapat membantu orang lain.

Catatan: enp0s3 untuk ssh via port forwarding dan enp0s8 untuk ip statis

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
Ahsan.Amin
sumber
3
Ya, menghapus garis gateway4 satu-satunya hal yang berhasil untuk saya.
furman87
Hapus gateway4 yang berfungsi untuk saya
Albert Hidalgo
0

Sebagai catatan, ketika saya berjuang dengan ini dan VMware Fusion ... Jika Anda memiliki nilai 'gateway4' yang ditentukan, ia akan menganggap itu sebagai default untuk antarmuka, dan tampaknya tidak menghormati opsi 'metrik' atau memiliki banyak file .yaml dengan urutan penomoran (01-netplan.yaml, 02-netplan.yaml, dll ...) dalam kasus saya 02 akhirnya menjadi 'default pertama', tetapi itu adalah jaringan internal saya sehingga internet publik menjadi tidak bisa dijangkau.

Mike Roy
sumber
Hai Mike - selamat datang di askubuntu. Ini akan lebih baik sebagai Komentar di bawah pertanyaan. Anda harus memindahkan teks di sana dan hapus saja karena tidak dimaksudkan untuk "menjawab" pertanyaan.
dpb