Известно, что виртуальные машины через свои vNIC подключаются к vSwitch, который, в свою очередь, подключается к физической машине или сетевому адаптеру хоста ESXI (vmnic). Затем vmnic подключается к фактическому коммутатору L2/L3.
[VM vnnic] <---> [vswitch] <---> [vmnic] <---> [физический коммутатор]
Что я не понимаю, так это как работает vmnic? Я не могу придумать ни одного вопроса, чтобы объяснить мои сомнения, но ниже приведены вопросы, которые я задавал себе ->
- Как можно назначить IP-адрес внутренним виртуальным машинам?
- Когда внешний пакет от физического коммутатора отправляется в vmnic, как он передает его во внутреннюю VMS?
- Как он узнает, что назначенный IP-адрес принадлежит виртуальной машине внутри и передаст его "внутрь" на vswitch?
- Использует ли vmnic IP-адрес или MAC-адрес, чтобы решить, передавать ли пакет внутрь коммутатору?
- Когда запрос arp для IP-адреса виртуальной машины будет отправлен с внешнего устройства, vmnic ответит своим MAC-адресом?
- Когда запрос arp отправляется с внутренней виртуальной машины, vmnic отслеживает MAC-адрес виртуальной машины, чтобы в следующий раз, когда он увидел ответ на этот MAC-адрес, он знал, что "перенаправил" внутрь на vSwitch
- Работает ли что-то вроде "режима моста", соединяющего внутренний коммутатор с внешним физическим коммутатором? Существует ли таблица адресов Mac, принадлежащая vmnic?
- Всякий раз, когда IP-адрес виртуальной машины назначается, будет ли IP привязан к vmnic?
- Как мы перечисляем все IP-адреса или MAC-адреса (если они есть), связанные с vmnic?
Могут ли некоторые гуру более подробно рассказать о фактическом потоке IP-пакета / кадра, поступающего и выходящего из виртуальной машины на физический коммутатор?
Спасибо.
С уважением, Нуб