Виправлення проблеми з призначенням APIPA-адрес у Windows Server 2019
Цей посібник пояснює, як вирішити ситуацію, коли Windows Server 2019, що працює на віртуальній машині VMware ESXi, автоматично призначає собі адресу з діапазону 169.254.x.x (APIPA) замість використання налаштованої статичної IP-адреси.
Огляд
APIPA (Automatic Private IP Addressing) — це резервний механізм: коли Windows не може зв’язатися з DHCP-сервером, система автоматично призначає собі адресу з діапазону 169.254.x.x. Така поведінка сама по собі є нормальною — проблема, яку розглянуто в цьому посібнику, полягає в тому, що APIPA активується навіть тоді, коли статичну IP-адресу вже налаштовано. У деяких середовищах ESXi це призводить до того, що сервер ігнорує свою статичну адресу та стає недоступним.
Перед початком
Перш ніж виконувати наведені нижче дії, переконайтеся, що:
- статична IP-адреса, маска підмережі та шлюз за замовчуванням правильно налаштовані в параметрах мережевого адаптера;
- віртуальний мережевий адаптер VMware підключений і увімкнений;
- віртуальна машина підключена до правильної групи портів або VLAN;
- у мережі немає дубльованої IP-адреси.
Якщо після цих перевірок проблема не зникає, виконайте наведені нижче кроки.
Крок 1: Перевірте поточну конфігурацію мережі
Відкрийте командний рядок від імені адміністратора та виконайте:
ipconfig /all
У виведених даних знайдіть рядки, подібні до наведених нижче:
Autoconfiguration IPv4 Address. . : 169.254.248.201(Preferred) Subnet Mask . . . . . . . . . . . : 255.255.0.0 IPv4 Address. . . . . . . . . . . : 192.168.1.136(Duplicate)
Якщо адреса з діапазону 169.254.x.x відображається як (Preferred), сервер використовує адресу APIPA. Налаштована статична IP-адреса (у цьому прикладі 192.168.1.136) позначена як (Duplicate), що означає, що Windows виявила, що ця адреса вже використовується, і відмовилася її активувати. Тому система використовує адресу APIPA. У результаті сервер може стати недоступним через мережу.
Крок 2: Знайдіть індекс мережевого інтерфейсу
Виконайте наведену нижче команду, щоб переглянути активні мережеві інтерфейси:
netsh interface ipv4 show interfaces
Приклад результату:
Idx Met MTU State Name --- ----- ----------- ---------- --------------------------- 1 75 4294967295 connected Loopback Pseudo-Interface 1 2 1 1500 disconnected VPN - VPN Client 12 25 1500 connected Ethernet 2
Знайдіть інтерфейс зі статусом «connected», який відповідає вашому мережевому адаптеру. Запишіть індекс інтерфейсу — він знадобиться на наступному кроці.
Крок 3: Вимкніть передачу DAD на інтерфейсі (обхідне рішення)
У деяких середовищах VMware ESXi Windows Server може продовжувати використовувати адресу APIPA навіть після налаштування статичної IP-адреси. Вимкнення передачі DAD (Duplicate Address Detection) може допомогти запобігти такій поведінці на проблемних віртуальних машинах.
Виконайте наведену нижче команду, замінивши 12 на індекс інтерфейсу з попереднього кроку:
netsh interface ipv4 set interface 12 dadtransmits=0 store=persistent
Альтернативно такого самого результату можна досягти за допомогою PowerShell:
Set-NetIPInterface -InterfaceIndex 12 -AddressFamily IPv4 -DadTransmits 0 -PolicyStore PersistentStore
Вимкнення DAD не дозволяє Windows перевіряти, чи вже використовується налаштована IPv4-адреса в мережі, перш ніж призначити її інтерфейсу.
Після виконання будь-якої з цих команд вимкніть і знову увімкніть адаптер, щоб застосувати зміни. Замініть Ethernet 2 на назву вашого адаптера:
netsh interface set interface "Ethernet 2" admin=disabled netsh interface set interface "Ethernet 2" admin=enabled
Якщо ви не впевнені в точній назві адаптера, скористайтеся командою netsh interface ipv4 show interfaces, щоб перевірити її перед виконанням цих команд.
Це обхідне рішення для певних середовищ ESXi, а не стандартний спосіб вирішення проблеми. Вимкнення DAD означає, що Windows більше не перевірятиме, чи використовується IP-адреса в мережі. Не застосовуйте це налаштування, якщо у вашій мережі можливі дубльовані IP-адреси.
Крок 4: Перевірте результат
Знову виконайте ipconfig /all і переконайтеся, що:
- адреса 169.254.x.x більше не відображається як пріоритетна;
- ваша статична IP-адреса активна.
Необов’язково: Вимкнення служби DHCP Client
У деяких випадках адміністратори вирішують вимкнути службу DHCP Client, щоб Windows не намагалася виконувати пошук DHCP під час запуску.
Microsoft не рекомендує вимикати службу DHCP Client навіть на серверах зі статичною IP-адресою. Служба використовується для автоматичної реєстрації DNS, визначення розташування мережі та інших мережевих функцій. Її вимкнення може спричинити непередбачувану поведінку. Виконуйте цей крок лише в тому випадку, якщо проблема зберігається після кроків 1–4 і ви повністю розумієте наслідки для свого середовища.
Щоб вимкнути службу, перейдіть до Панель керування > Адміністрування > Служби, знайдіть DHCP Client і встановіть для типу запуску значення «Вимкнено».