web-dev-qa-db-ja.com

VirtualBoxのNATネットワークにVMでインターネットアクセスがありません

次の設定でUbuntu 14.04 LTSのVirtulBox 5にNATネットワークを作成しました

Natework Name:NatNetwrok1
ネットワークCIDR:10.0.2.0/24
DHCPのサポート:有効
IPv6のサポート:無効
ポート転送なし

さらに、2つのVM(Xubuntuクローンの両方)があり、4つのアダプターすべてで次の設定でVMのそれぞれで2つのNICを有効にするようにネットワーク設定を設定しました。

添付先:「NATネットワーク」
名前:「NatNetwrok1」

両方のVMを実行すると、ifconfigコマンドの実行に関する次の設定が表示されます

xubuntu1でのifconfigの結果

eth0      Link encap:Ethernet  HWaddr 08:00:27:00:8c:03  
          inet addr:10.0.2.9  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe00:8c03/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:43 errors:0 dropped:0 overruns:0 frame:0
          TX packets:47 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:12133 (12.1 KB)  TX bytes:8517 (8.5 KB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:9e:20:e8  
          inet addr:10.0.2.8  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe9e:20e8/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:43 errors:0 dropped:0 overruns:0 frame:0
          TX packets:48 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:10294 (10.2 KB)  TX bytes:8798 (8.7 KB)

xubutracentu2でのifconfigの結果

eth0      Link encap:Ethernet  HWaddr 08:00:27:00:8c:03  
          inet addr:10.0.2.9  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe00:8c03/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:43 errors:0 dropped:0 overruns:0 frame:0
          TX packets:47 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:12133 (12.1 KB)  TX bytes:8517 (8.5 KB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:9e:20:e8  
          inet addr:10.0.2.8  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe9e:20e8/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:43 errors:0 dropped:0 overruns:0 frame:0
          TX packets:48 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:10294 (10.2 KB)  TX bytes:8798 (8.7 KB)

これら4つのIP間のpingは正常に動作します
しかし、これらのVMのいずれでもインターネットにアクセスできません
「NATネットワーク」を「NAT」に変更すると、ネットワークにアクセスできますが、別の仮想ネットワークの一部になり、相互にpingできません
誰でも問題の特定と修正を手伝ってくれますか

誰もNATNATネットワークの違いを説明できますか

12
ehsan

なぜ働かないのですか?

16.04(おそらく14.04)では、VirtualBox(5.0.36)のメインパッケージバージョンのNATネットワーク機能は- バグあり

確認してください!

自分で確認できます。ls /usr/lib/virtualbox/VBoxNetNAT実行可能ファイルが存在する場合は、他の種類の問題が発生している可能性があります。

修理する!

このバグは新しいバージョンで修正されています。したがって、新しいバージョンをインストールする必要があります。

古いバージョンを削除

たとえば、aptを使用してインストールした場合、次を実行できます。

Sudo apt remove virtualbox --auto-remove

新しいバージョンをインストールする

この修正は、新しいバージョン(Ubuntu yakkety +)で利用可能です。古いバージョンの場合:

  • Virtualbox.orgにアクセスし、最新バージョンを手動でダウンロードします
  • または
  • 次のスクリプトを使用します。

    # add the official repository
    wget -q -O - https://www.virtualbox.org/download/Oracle_vbox_2016.asc | Sudo apt-key add -
    echo deb http://download.virtualbox.org/virtualbox/debian `lsb_release -cs` non-free contrib | Sudo tee /etc/apt/sources.list.d/virtualbox.org.list
    # install the newer version
    Sudo apt install virtualbox-5.1
    
7
MrMeszaros

デフォルトのaptリポジトリからVirtualBox 5.0.40を使用してこれに遭遇しました。それを回避するために、2つのネットワークインターフェイスを使用するように各VMを構成しました。

  • アダプター1:Bridge Addapter(実際のNICに)
  • アダプタ2:NATネットワーク(選択)

Guets OS(Ubuntu 16.04)では、2番目のインターフェイスが表示されるように/etc/network/interfacesを微調整する必要があります。私の場合、NATネットワーク内で静的IPを使用するためにVMが必要だったため、これが得られました。

## Bridge to Internet
auto enp0s3
iface enp0s3 inet dhcp

## NAT Network among VMs
## Static is optional
## DHCP if you don't need it
auto enp0s8
iface enp0s8 inet static
  address 10.10.11.100
  netmask 255.255.255.0

もちろん、これは私のNATネットワークがサブネット10.10.11.0/24を使用することを前提としています。シナリオに合わせて数値を調整するか、必要に応じてdhcpにそのままにしてください。

注:静的構成で注意すべき重要なことは、この特定のシナリオでは、デフォルトゲートウェイを割り当てることができないということです。 enp0s8にデフォルト(10.10.11.1など)を指定すると、OSがこのゲートウェイへのルートを作成し、そのルートもインターネットアクセスを台無しにする可能性があります。これを行う必要があるのは、この特定のインターフェースが、それに設定されたものとは別に、他のネットワークへのルートを必要とする場合のみです。

Ubuntuが環境に割り当てたインターフェイス名を見つけるには、dmesg | grep ethを使用できます。

enter image description here

7
JulioHM

VirtualBoxのマニュアルによると、これらはVMのネットワークの可能性です。

  • NAT:VMとホスト間の内部ネットワーク。また、インターネットにアクセスできます。 NATモードの2つ以上のVMは、ホストとインターネットのみで接続できません。

  • Internal:この構成のすべてのVMは、それらの間で接続できますが、ホストやインターネットとは接続できません。

  • ホストのみ:ホストとこの構成のすべてのVMの間に仮想ネットワークが作成されますが、インターネットにアクセスできません。

  • NATネットワーク:同じ事前定義されたNATネットワークおよびホスト内のすべてのVMに到達できますが、できませんインターネットに接続します。

  • Bridged:あなたのVMは、ホストと同じネットワーク内にあり、このネットワーク内の他のコンピューター/サーバーであるかのように、したがって、ホストが持っている場合、インターネットアクセスがあります。

  • 汎用:高度でより具体的な設定はほとんど使用されません。

したがって、ホストに接続できる内部ネットワークを作成する場合は、NAT Networkを選択しますが、インターネットにアクセスできないことに注意してください。 NATは、VMからのみインターネットにアクセスしたい場合にのみ設定されます。

ただし、両方のVMとインターネット間で接続を行いたい場合、これらの設定はいずれも大丈夫です。私の知る限り、唯一の選択肢は両方の仮想マシンをブリッジモードで構成することです。したがって、ホストネットワーク内の「異なる」コンピューターになり、すべての仮想マシンとインターネットからpingを実行できます。

一方、両方のマシンが同じMACアドレス(HWaddrのifconfigコマンド情報)を持っているため、一方からVMをクローンしたようです。クローンを作成するときに「すべてのネットワークカードのMACアドレスを再初期化する」というチェックボックスをオンにする必要があります。同じMACアドレスを持つ2つのデバイスは常に問題を引き起こします。

私はVirtualBoxの専門家ではないので、おそらく他のユーザーが他の可能な構成を教えて、あなたが望むものを手に入れることができます。この情報がお役に立てば幸いです。

詳細については、 this を参照してください。

5
Pablo288

これはVirtualBoxのバグである可能性があります。同じことを経験しました(Ubuntu 16.04.2 LTS、VirtualBox 5.0.32_Ubuntu r112930):NATネットワークをセットアップし、2つのUbuntu VM用に構成しました。各VMは、相手にping/SSHでき、ポート転送を介して、ホストから各VMにSSHで接続できました。ただし、VM内部からのインターネットアクセスはありません。同僚がWindowsホスト、VirtualBox(未知のバージョン)、および同じVMで同じことを試みましたが、うまくいきました。

回避策として、各VMに2番目のネットワークカードを構成しました。最初のネットワークカードはNATを使用してインターネットにアクセスし、2番目は「NATネットワーク」を使用して他のゲストにアクセスします。最初の(NAT)カードでSSHポートフォワーディングを設定し、1つのVM(つまり、VM1で2222-> 22-VM2で2223-> 23)に別のSSHポートを構成する必要がありました。

ドキュメント に基づいて、NATとNATネットワークの両方がインターネットにアクセスできる必要があります。違いは、最初のホストはホスト↔ゲスト接続を分離しているため、ゲストは相互にアクセスできず、ホストのみにアクセスできることです。後者は、すべてのゲストを単一のネットワークにプールし(そしてDHCPなどのサービスを提供します)、お互いにアクセスできるようにします。

2
Ingo Karkat