web-dev-qa-db-ja.com

VirtualBox:UbuntuのDebianゲストでの2つのネットワークインターフェース(NATとホストのみのインターフェース)

私は、Debian VMを2つのインターフェースで作成しました:a NAT 1(インターネットにアクセスするため)とHost-onlyです。しかし、私は知りません。両方のインターフェイスを同時に動作させる方法です。ホスト1のみをアダプタ1として定義すると、ホストからはVMにアクセスできますが、インターネットからはアクセスできません。 NATアダプタ1として1つ、インターネットにアクセスできますが、ゲストのDebianに到達できません。

では、どうすれば両方のインターフェイスを連携させることができますか?

:ホストの一部のポートをゲストのSOのSSHポートにマップしようとしているので、提案する必要はありません:)

[〜#〜] edit [〜#〜]:これは、最初のアダプタがHost-only oneの場合のifconfigの出力です。

eth0      Link encap:Ethernet  HWaddr 08:00:27:f6:b2:45  
          inet addr:192.168.56.101  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fef6:b245/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:495 errors:0 dropped:0 overruns:0 frame:0
          TX packets:206 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:48187 (47.0 KiB)  TX bytes:38222 (37.3 KiB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:560 (560.0 B)  TX bytes:560 (560.0 B)

これは、最初のアダプタがHost-only oneの場合のnetstat -nrの出力です。

Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.56.0    0.0.0.0         255.255.255.0   U         0 0          0 eth0

これは、最初のアダプタが[〜#〜] nat [〜#〜] 1の場合のifconfigの出力です。

eth0      Link encap:Ethernet  HWaddr 08:00:27:f6:b2:45  
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fef6:b245/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:53 errors:0 dropped:0 overruns:0 frame:0
          TX packets:59 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:6076 (5.9 KiB)  TX bytes:5526 (5.3 KiB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:16 errors:0 dropped:0 overruns:0 frame:0
          TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:1664 (1.6 KiB)  TX bytes:1664 (1.6 KiB)

これは、最初のアダプタが[〜#〜] nat [〜#〜] 1の場合のnetstat -nrの出力です。

Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
10.0.2.0        0.0.0.0         255.255.255.0   U         0 0          0 eth0
0.0.0.0         10.0.2.2        0.0.0.0         UG        0 0          0 eth0
50
brandizzi

ソリューションは非常にシンプルでした:Debian仮想マシン/etc/network/interfacesファイルに次の行を追加するだけです:

allow-hotplug eth1
iface eth1 inet dhcp

2行目は、インターフェースにDHCP経由でIPを取得するように指示します。最初の行は、起動時にインターフェースをロードします。

実行中のシステムに変更を適用するには、以下を呼び出します。

ifup eth1

eth1インターフェースの名前は異なる場合があります。ifconfig -aを使用して、使用可能なすべてのインターフェースをリストします。

[〜#〜]編集[〜#〜]:完全/etc/network/interfaces

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp

allow-hotplug eth1
iface eth1 inet dhcp
50
brandizzi

私のUbuntu 14.04 VMでも同様の問題に直面しており、@ brandizziが提案したDebianのソリューションはほとんど変更なしで機能しました。

EDIT: file /etc/network/interfaces:


# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp

auto eth1
iface eth1 inet dhcp

UBUNTU 16.04の場合

コマンドを実行

ifconfig -a

私の場合は 'enp0s8'のような新しいインターフェイスを探します

EDIT file /etc/network/interfaces:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto enp0s3
iface enp0s3 inet dhcp

auto enp0s8
iface enp0s8 inet dhcp  
11
Pandurang Patil

両方のアダプターをDebianで構成する必要があります

どちらの場合も、構成されているアダプターは1つだけなので、問題が発生しているようです。

VMのVirtualBox構成に2つのアダプターを作成し、それを起動します。ifconfigの使用時に構成されたアダプターが1つだけ表示される場合(単一のeth0、eth1もなし)、ネットワークを使用する必要がありますDebianの構成ツール(Network Manager、ifupdownなど)でDHCPの両方のインターフェースを構成するため、DHCPにはeth0とeth1が必要です。

3
Huygens

Ubuntu 18.04ホストでは、ゲストとしてUbuntu 19.04を使用するVirtualBox 6.1

ゲストで/etc/netplan/50-cloud-init.yamlファイル、以下に示すように(バージョン行の前に)2行追加します。ゲストのネットワーク構成は1つのネットワークのみを処理するようにセットアップされており、2番目のネットワーク構成は手動で追加する必要があるようです

network:
    ethernets:
        enp0s3:
            dhcp4: true
        enp0s8:
           dhcp4: true
    version: 2
2
vkt

インターフェースごとに個別の プライベートアドレススペースサブネット を使用していることを確認してください。

したがって、たとえば、NATであるインターフェースの場合、192.168.0.0/16空間のアドレスを使用できます。

「ホストのみ」のインターフェースは10.0.0.0/24スペースにある可能性があります。

0
George M