diff --git a/test-playbooks/change_dns.yml b/test-playbooks/change_dns.yml new file mode 100644 index 0000000..dd363b3 --- /dev/null +++ b/test-playbooks/change_dns.yml @@ -0,0 +1,35 @@ +--- +- name: Auto Configure DNS on Active Adapters + hosts: windows + gather_facts: no + vars: + dns_servers: + - 8.8.8.8 + - 1.1.1.1 + + 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 \ No newline at end of file