Ubuntu vmwareゲストNATの構成


9

vmplayerを介してゲストUbuntu VMを実行するWindowsホストがあります。その仮想マシンは複製され、(Windowsホストを実行している)数人に分散され、プログラミングワークショップの実施に使用されます。次の要件を満たすようにネットワークをセットアップしようとしています-これまでのところ失敗しています。

  1. ゲストはインターネットにアクセスできる必要があります
  2. すべてのクローンのホスト名は同じである必要があります(Workshopを具体化するとします)
  3. ホストシステムは、その名前を使用してそれぞれのゲストにアクセスできる必要があります(たとえば、ping Workshopは、そのホストで実行されているゲストにpingし、他のクローンにはpingしません)。

これまでに試したこと:

  • ゲスト用の「インストール済み」NATネットワークアダプター
  • / etc / network / interfacesの DHCP経由でゲストを接続しようとしました:

    auto eth0
    iface eth0 inet dhcp
       hostname Workshop
    

インターネットへの接続に関する限り、これは機能します。ただし、ホストからゲストに接続できません。(たとえば、ping Workshopは機能しません。ifconfigから返されたアドレスを使用すると、ホストからも機能しません)。

  • 次に、静的アドレスをゲストに割り当ててみました。

    auto eth0
    iface eth0 inet static
         address 172.241.0.101
         netmask 255.255.0.0
         gateway 172.241.0.100
    

(172.241.0.100は、VMWareネットワークVMNet8アダプターによってホストに静的に割り当てられたアドレスです-上記のNATアダプターです)。これで、ホストから172.241.0.101にpingしてtelnetで接続できます。ゲストから172.241.0.100(ホスト)にpingとtelnetを行うこともできますが、それだけです。より広いネットワークへの接続はありません。(ホスト名を介してゲストにアクセスすることもできませんが、ここでは重要ではありません。プッシュが発生した場合、名前ではなく、全員のアドレスが同じである限り、直接そのアドレスを使用できます)。

これで、DHCPでブリッジネットワーク接続オプションを使用できると思います。これにより、1つのVMの場合に必要なものが得られます(この場合は試しませんでしたが、以前は覚えていました)。ただし、同じホスト名のVMが複数あり、それらのホストが同じネットワークに接続されていると問題が発生しますか?

あなたの解決策やその他のアドバイスは大歓迎です。

回答:


8

まず第一に、はい、すべてのゲストのホスト名が同じであるため、ブリッジネットワーク接続を使用できなくなり、NATを使用する必要があります。

構成は正しく行われましたが、問題はゲストに割り当てたデフォルトゲートウェイにあるはずです。デフォルトゲートウェイは、NATを使用する場合、ホストのIPではなく、NATネットワークに接続されている「仮想スイッチ」のIPです。(ホストVMnet8アダプターは、ネットワークに接続された別のデバイスであり、ホストがVMと通信できるようにします。)ここで説明しているこの仮想スイッチは.2、サブネット内のIPを取得します。したがって、あなたの場合、あなた/etc/network/interfacesは読むべきです:

auto eth0
iface eth0 inet static
     address 172.241.0.101
     netmask 255.255.0.0
     gateway 172.241.0.2

これにより、ゲストVMにインターネットへのアクセスが許可され(を介して172.241.0.2)、ホストとの通信も許可されます(172.241.0.100)。試してみて、機能するかどうかをお知らせください。

機能しない場合(ほとんどない場合)は、仮想スイッチのIPを確認する必要があります。できることは、VMにDHCP経由でIPを取得させ(つまりiface eth0 inet dhcp、以前と同じように変更して)、それからを実行することですroute -n。これにより、使用しているデフォルトゲートウェイが表示されます。静的構成でそのIPを使用します。


ホスト名Workshopを使用してゲストVMにpingできるようにするには、次のようにします。hostsWindowsのにあるファイルにエントリを追加する必要がありますC:\Windows\System32\drivers\etc\hosts。そのファイルを編集して、最後に次の行を含めます。

ただし、Windowsでそのファイルを編集するには、メモ帳またはワードパッドで管理者としてファイルを開く必要があります。また、ファイルを保存できない場合もあるため、どこかにファイルのコピーを作成する必要があります。 .txt拡張子がある場合はそれを削除し、戻って元の拡張子を置き換えて「確認」します。しかし、とにかく、ここに追加する必要がある行があります:

172.241.0.101    Workshop

これが完了すると、ping WorkshopWindowsホストから正常にアクセスできるようになります。

もちろん、これをワークショップにデプロイできるようにするには、Windowsマシンのクローンも作成しない限り、すべてのWindowsホストのhostsファイルを編集する必要があります。

ヒント:ゲストに静的IPを割り当てるため、すべてのWindowsホストのVMplayerで「NATネットワーク」がサブネットを使用していることを確認してください。VMwareが172.241.0.0/16ランダムにサブネットを仮想ネットワークに割り当てているためです( VMnet1、2など)。VMnet8が別のWindowsホストで同じサブネットを使用していない可能性があります。そうでない場合は、VMwareの仮想ネットワークエディターを使用して、VMnet8に手動でサブネットを与える必要があります。


編集

はい。コメントの後、ここにあなたがする必要があるものがあります:

  1. VMnet8アダプタで「IPアドレスを自動的に取得する」ように(Windows)ホストマシンを構成します。IPを取得する必要があります192.168.186.1
  2. (Ubuntu)ゲストマシンを範囲内の静的IPに構成します192.168.186.3 - 192.168.186.127。使ってみましょう192.168.186.3。また、あることをデフォルトゲートウェイとDNSサーバを設定し192.168.186.2、あなたはそう/etc/network/interfacesする必要があります:

    auto eth0
    iface eth0 inet static
         address 192.168.186.3
         netmask 255.255.255.0
         gateway 192.168.186.2
         dns-nameservers 192.168.186.2
    
  3. ping 192.168.186.1を実行192.168.186.2し、ゲストマシンからローカル接続をテストします。また、ホストからゲストにpingできる必要があります。

  4. ping google.comを実行するか、インターネットを閲覧して、ゲストマシンでインターネット接続をテストします。
  5. Windowsホストマシンのファイルに行192.168.186.3 Workshopを追加しますhosts
  6. ping WorkshopWindowsホストマシンからテストします。

以外の完全に異なるネットワーク/プールからIPを使用する192.168.186.0/24場合はEdit > Virtual Network Editor、VMware に移動し、VMnet8を見つけて、最下部にあるDHCP設定を任意のネットワークに変更し、それに応じて静的IPを変更する必要があります。 (デフォルトゲートウェイは常に2番目に使用可能なIPですx.x.x.2)。

ここに画像の説明を入力してください


172.241.0.2が機能しません。pingにも応答しません(実際には、nmap -sP 172.241.0.0/24を実行すると、2つのライブホスト(.100と.101)のみが返されます)。dhcpを使用して構成すると、まったく異なるアドレスがroute -n:192.168.186.2によって返されます
malenkiy_scot

ああ、DHCPが使用していたネットワーク172.241.0.0/16を使用していたと思います。考えてみてください、それは実際にはパブリックIPです[Oo]。172.241.0.0ネットワークでホストとゲストのIPを割り当てた理由はありますか?とにかく、私の編集した答えを見てください。
Alaa Ali

いいえ、それはDHCPが使用しているものではありませんが、VMNet8アダプターの構成方法です。DHCPアドレスは、VMWare DHCPサービスを介して取得されます。それがどこからアドレスプールを取得するのか私にはわかりません。172.241のアドレスは公開されているとは思いません。ホストとゲスト間の接続を確立してCPORTSを実行すると、10.63.41.41(これはLAN上のホストのアドレスです)が異なるポートで自分自身に接続されていることを示しています-これはNAT(またはおそらく実際にはPAT)なので理にかなっています。私は実際にゲートウェイに関してあなたがしたのと同じ線に沿って-それは異なるアドレスを持っていると思いました。
malenkiy_scot 2013年

うん、私の回答で述べたように、DHCPサービスとそのプールは仮想ネットワークエディターから構成できます(私の回答にスクリーンショットを追加しました)。ゲートウェイ、DHCP、DNSサーバーはすべて同じ仮想デバイスですx.x.x.2。そしてもちろん、あなたが言ったように、ホストのIPでオーバーロード(PAT)を使用します。より広いネットワークでゲストのIPが表示されることはありません。また、172.241.0.0/16 ある)=パブリックIP範囲。172.16.0.0 - 172.31.255.255クラスBアドレスのプライベート範囲です。しかし、それは本当に問題ではありません、それは何にも影響を与えるべきではありません。
Alaa Ali

また、VMwareでのNATの詳細については、このページをご覧ください。
Alaa Ali

3

UbuntuゲストでWindows 7上で実行されているVMWare Playerを使用して、同様の問題を抱えていました。しかし、ホストからゲストへ、ゲストからホストへは接続できましたが、問題はゲストからインターネットに接続できなかったことでした。@Alaaの回答を読んだ後、DNSサーバー名をインターフェースファイル(dns-nameservers 192.168.150.2)に追加するためにもう1つ微調整する必要があり、その後すべてが一列になりました。

これが機能した私の設定です。

ホストのVMWareインターフェース構成:

イーサネットアダプターVMwareネットワークアダプターVMnet8:(クライアント)

Connection-specific DNS Suffix  . : 
Description . . . . . . . . . . . : VMware Virtual Ethernet Adapter for VMnet8
Physical Address. . . . . . . . . : 00-50-56-C0-00-08
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
Link-local IPv6 Address . . . . . : fe80::9c13:cbf2:1dc:259f%42(Preferred) 

IPv4 Address. . . . . . . . . . . : 192.168.150.1(Preferred) 
Subnet Mask . . . . . . . . . . . : 255.255.255.0

Default Gateway . . . . . . . . . : 
DHCPv6 IAID . . . . . . . . . . . : 704663638
DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-19-06-50-32-88-53-2E-7A-D3-8E
DNS Servers . . . . . . . . . . . : fec0:0:0:ffff::1%1
                                    fec0:0:0:ffff::2%1
                                    fec0:0:0:ffff::3%1
NetBIOS over Tcpip. . . . . . . . : Enabled 

ゲストUbuntuのインターフェースの変更:

auto eth0
iface eth0 inet static
address 192.168.150.10
netmask 255.255.255.0
gateway 192.168.150.2
dns-nameservers 192.168.150.2

192.168.150.2は、ゲストトラフィックをホストに転送するVMWareのプロキシです。


こんにちは、あなたと同じ問題に遭遇しました。問題をどのように解決するかについて詳しく説明していただけますか。まず、「イーサネットアダプターVMwareネットワークアダプターVMnet8:(クライアント)」の情報をどこで取得するかです。/ etc / network / interfacesの変更を更新する必要があるという意味ですか?また、「netmask」、「gateway」などのアドレスについては、マシンによって異なりますか?または、あなたが投稿したものと同じものを使用できます。
user288609
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.