Перейти к основному содержанию
 

Сбой сети на виртуальной машине Windows Server 2012 R2 в среде VMware

Windows Server

Только недавно писал статью про установку VMware Tools на Windows Server 2012 R2. И сам же говорил:

Если у вас Windows Server, то рекомендую установить VMware Tools для смены сетевой карты на vmxnet3, меньше глюков. Как показала практика, другие сетевые карты работают не очень стабильно.

И вот я наступил на собственные грабли, забыл заменить тип сетевой карты с E1000 на VMXNET 3 на одном из новых серверов. Однако, мне повезло дважды. Во-первых, сервер был ещё не в бою и сбой не повлиял на работу системы. А во-вторых, удалось сделать несколько скриншотов для написания этой статьи. :)

Итак, имеется новый сервер с операционной системой Windows Server 2012 R2 и типом сетевой карты E1000. Через несколько дней работы виртуальная машина перестала отвечать по сети и сама потеряла связь. Повторюсь, что на linux-based виртуальных машинах подобных проблем не наблюдалось.

Когда я первый столкнулся с этой проблемой, то стал копать глубже. Погуглив, можно найти статью Windows 2012 virtual machines using E1000/E1000e driver experience loss of network connectivity (2109922). Примечательно, что я в логах виртуалки описанных в статье событий не увидел. Если ещё глубже покопаться в интернете, то можно найти описание работы сетевого драйвера в windows, который неверно общается с коммутатором и что-то там косячит с ARP. Но это не точно, не помню уже. В любом случае советы от vmware по решению этой проблемы сводятся к следующему:

To work around this issue, use VMXNET3 instead of E1000 or E1000e driver.

Я с ними полностью согласен. Итак, нужно чинить сервер - меняем сетевуху. Для начала убедитесь, что на сервер установлены VMware Tools.

Установка VMware Tools на Windows Server 2012 R2.

Проверяем тип текущего сетевого адаптера виртуальной машины:

e1000

Видим E1000 - плохой, плохой адаптер для Windows Server. Удаляем его, всё равно сервер уже не работает.

e1000

После удаления адаптера заходим на сервер через Remote Console. Если сервер в домене, а это обычно так, то вы сможете залогиниться под учётной записью последнего входившего. Если это вы, то вам повезло, если нет, то придётся входить под учёткой локального администратора. Сервер уже не видит контроллер домена.

Открываем Device Manager.

e1000

Включаем отображение скрытых устройств. View - Show hidden devices.

e1000

Заходим в Network adapters.

e1000

Удаляем все полупрозрачные адаптеры, они уже отсутствуют в системе. Данные адаптеры могут помешать, если у вас ранее были как-то кастомизированы сетевые карты или на них были завязаны какие-то скрипты.

e1000

Далее в оснастке vCenter или ESXi добавляем новую сетевую карту.

e1000

Выбираем тип адаптера VMXNET 3.

e1000

Остается только зайти на сервер через Remote Console и настроить сетевуху согласно вашим требованиям.