[編集]
本番システムは現在、物理システムとESXiベースのシステムが混在しています。実稼働前の環境であっても、virtualboxを使用することはありません。これは、デスクトップで直接問題をすばやく絞り込むためにのみ使用されました。
メタの「保留中」の説明をありがとう!
[/編集]
私のセットアップ:
vboxnet1
10.0.7.0/24住所レイアウト:
VM
で、次のコマンドを実行しました。
ip netns add mac # create a new nmespace
ip link add link eth0 mac0 type macvlan # create a new macvlan interface
ip link set mac0 netns mac
VM内のmac
名前空間:
ip link set lo up
ip link set mac up
ip addr add 10.0.7.102/24 dev mac0
つまり、基本的には次のようになります:(Like Inception?)
+------------------------+
| Host: 10.0.7.1 |
| |
| +--------------------+ |
| | VM: 10.0.7.101 | |
| | | |
| | +----------------+ | |
| | | NS: 10.0.7.102 | | |
| | | | | |
| | +----------------+ | |
| +--------------------+ |
+------------------------+
機能するもの:
Host
とVM
の間のpingNS
とNS
の間のpingNS
のdhclient機能しないもの:
NS
とVM
の間のpingNS
とHost
の間のping私がナッツに行き始めたところ:
Host
(実際のマシン)のtcpdumpは実際にARP要求と応答を表示しますNS
のtcpdumpは、ホストに送信されたARP要求を示しますVM
のtcpdumpは、全体の混乱を解消します(!)-> tcpdumpがVM?!?だから、私はあなたがそれを熱望していたに違いない、私の質問は:それをどのように機能させるか? NS内のmacvlanのARPに何か問題があると思いますが、正確に何を理解できません...
ところで、私はmac0
VM(名前空間なし)に直接インターフェースし、完璧に動作しました。
わかりましたので、後世のために、tcpdumpが突然すべてを動作させるという事実は、私を軌道に乗せるはずです。内部的には、スイッチeth0
無差別モードに。つまり、eth0
は、サーバーのメインMAC
だけでなく、すべてのネットワークトラフィックを生成します
ただし、これがmacvlan
の動作方法です。「物理」(つまりVM)ネットワークアダプターが認識しない新しいセカンダリ仮想MACアドレスが追加されます。
したがって、簡単な回避策は手動で行うことです:ifconfig eth0 promisc
それが役に立てば幸いです!