web-dev-qa-db-ja.com

VirtualBox VM経由でインターネットに接続できないNAT

NATネットワークに接続しているときにゲストがインターネットに接続できない理由を理解しようとしています。以下の設定のスクリーンショットをいくつか提供しました。lubuntuでのみこの問題が発生しています。両方私の友人と私は、すべてデフォルト設定でいじくり回すことなく、2つの異なるLinuxシステムでこれを機能させることができます。

ゲストでifconfigを実行すると、下の最初の写真に示されている範囲にIPが割り当てられていることがわかります(デフォルトはこれです)。以下に示すものを除いて、私はデフォルトから設定を変更していません。

ちなみに、私はすべてのVMで同じ問題を抱えています。ホストOSとしてlubuntuを使用してVirtualBoxにインストールします。ブリッジ接続およびホストオンリー接続は正常に機能します。

VirtualBox設定:

VirtualBox preferences

ゲストネットワーク設定:

Guest Network settings

編集:

システムとネットワークのセットアップに関する情報:

cat /etc/network/interfaces

auto lo
iface lo inet loopback

ゲストOS:lubuntu 17.04

ホストOS:lubuntu 17.04

VirtualBoxバージョン:5.1.22_Ubuntur115126(VBoxManage --versionの出力)

(画面全体をキャプチャして申し訳ありません。私のスクリーンキャプチャツールはVMからクローズアップを取得できません)ifconfig -a:enter image description here

route -n:enter image description here

arp -n:enter image description here

4
Totem

Update:要約すると、 NAT-Network/NAT-Serviceインターフェース を使用していました。これは、似た名前の NATインターフェイス とは異なるインターフェイスタイプです。違いについては、このブログ投稿で詳しく説明されています。

NATネットワークインターフェイスからNATインターフェイスに切り替えたとき、追加の構成なしでVMからインターネットにアクセスできました。これが究極の目標は、NATネットワークインターフェイスの問題の原因を診断し続けることではありませんでした。

元のソリューションは次のとおりです。


これまでに提供した情報に基づいて特定の診断を下すのに十分な知識はありませんが、1つの可能性は、ホストのVirtualBoxネットワーク構成とゲストのネットワーク構成の間に矛盾があることです。

ゲストへのSSHアクセスを可能にするために、ポートフォワーディングを使用したNAT構成から開始することをお勧めします。これにはいくつかの理由があります:

  1. 現在の状況では、ゲストからテキストをコピーすることはできません。

  2. 多くの場合、すべてが機能している状況からデバッグを開始して、問題に戻ることができます。

  3. 私の経験では、NATインターフェイスは、VirtualBoxゲストのインターネットアクセスを取得するための最も簡単でエラーが発生しにくい方法です。

GUIを使用してこれを行うことができますが、具体性のためにコマンドラインの例を含めます。

まず、すべてのネットワークインターフェイスカードを削除します。

for n in 1 2 3 4 5 6 7 8; do
    vboxmanage modifyvm "${VMNAME}" --nic${n} none
done

次に、単一のNATインターフェースを追加します。

vboxmanage modifyvm "${VMNAME}" --nic1 NAT

NIC構成をサニティチェックします:

vboxmanage showvminfo "${VMNAME}" | grep '^NIC'

出力は次のようになります。

NIC 1:          MAC: 08002784C3DE, Attachment: NAT, Cable connected: on,
                Trace: off (file: none), Type: Am79C973, Reported speed: 0
                Mbps, Boot priority: 0, Promisc Policy: deny, Bandwidth group: none
NIC 1 Settings: MTU: 0, Socket (send: 64, receive: 64), TCP Window (send:64, receive: 64)
NIC 2:           disabled
NIC 3:           disabled
NIC 4:           disabled
NIC 5:           disabled
NIC 6:           disabled
NIC 7:           disabled
NIC 8:           disabled

次に、sshのポート転送ルールを追加します。以下は、ホストのポート2222をゲストのポート22にマッピングする例です。

vboxmanage modifyvm "${VMNAME}" --natpf1 ssh,tcp,,2222,,22

VMを起動し、SSH接続をテストします。すでにゲストでSSHを実行している場合は、ヘッドレスモードで起動できます。

vboxmanage startvm --type headless "${VMNAME}"

Ssh経由でゲストにログインします。

ssh -p 2222 localhost

ポート転送ルールにより、ゲストのIPアドレスを知る必要がないことに注意してください。これが機能するようになったら、投稿を更新して、「NATネットワーク」構成の何が問題だったかを把握することができます。

また、設定済みのVM Virtual Boxes ウェブサイトからダウンロードすることもできます。どうやら lubuntu画像 があるようです。

2
igal