
2つの仮想マシンがあります。 1つはクライアントとして機能し、もう1つはサーバーとして機能します。サーバーVMの場合は、次のIPアドレスを設定しました。
sudo ifconfig enp0s8 192.168.0.73/24 up
クライアントVMの場合、IPアドレスを次のように設定しました。
sudo ifconfig enp0s8 192.168.0.77/24 up
クライアントとサーバーの両方が内部ネットワークの同じサブネット上にあることを確認したいと思います。
その後、次のようにクライアントVMでサーバーのIPをpingしようとしました。
ping 192.168.0.73
しかし、私は宛先ホストに接続できません。間違い
両方の仮想マシンには2つのネットワークアダプタがあります。最初のネットワークアダプタはホスト専用アダプタ(両方の仮想マシンは同じMACアドレスを持っています)、2番目のネットワークアダプタは内部ネットワークアダプタ(両方の仮想マシンは同じネットワーク名とMACアドレスを持っています)です。
私は何が間違っていましたか?
答え1
あなたが間違っているのは、両方のコンピュータが同じMACを持っているということです。しないでください。同じネットワーク上の他のシステムで同じMAC-IDを使用すると、驚くほど予測不可能なさまざまな結果が生じる可能性があります。
だから何が起こっているのかと思います。
- ping 192.168.0.73
- 192.168.0.73のMAC-IDとは何ですか? ARPリクエストの実行
- ああ! MAC-IDは独自のアダプタなので、ネットワーク経由で送信する必要はありません。
- 私のアダプタは192.168.0.73のICMPエコー要求を受け取りましたが、私のアダプタは192.168.0.77です。だから私はこの要求に答えません(卓球はしません)。
Linux(私の知っているすべてのオペレーティングシステムと同様)はARPキャッシュを維持しているので、次のコマンドを使用してそのシステムのIPアドレスとMAC ID変換を表示できます。
arp -a