--- - name: Auto Configure DNS on Active Adapters hosts: windows gather_facts: no vars: dns_servers: - 192.168.1.250 - 192.168.1.254 - 77.88.8.8 tasks: # 1. Ищем имена активных адаптеров - name: Find active physical network adapters ansible.windows.win_shell: | Get-NetAdapter | Where-Object { $_.Status -eq 'Up' -and $_.HardwareInterface -eq $true } | Select-Object -ExpandProperty Name register: net_adapters changed_when: false # 2. Показываем, какие адаптеры нашли (для логов) - name: Debug - Found Adapters debug: msg: "Найдены активные адаптеры: {{ net_adapters.stdout_lines }}" # 3. Применяем DNS ко всем найденным адаптерам - name: Set DNS Servers ansible.windows.win_dns_client: adapter_names: "{{ item }}" ipv4_addresses: "{{ dns_servers }}" # Цикл пройдется по каждому найденному адаптеру (например, и Ethernet, и Wi-Fi) loop: "{{ net_adapters.stdout_lines }}" # 4. Очищаем кэш - name: Flush DNS Cache ansible.windows.win_shell: ipconfig /flushdns