Спрашивающий
Замена основого шлюза в домене

Общие обсуждения
-
Доброго времени суток.
Стоит задача: всем пользователям AD поменять в настройках сетевой карты (единственной) адрес основного шлюза. IP, маску, DNS оставить неизменными.
DHCP поднимать не вариант. Ставим IP руками.
Смотрю в сторону запуска скрипта через Logon, но не могу найти толковую команду, которая не сбросила бы IP, маску, DNS.
Да и батники почему-то не запускаются у пользователей при старте. Был бы благодарен, если бы ткнули носом в статью/форум, где описан порядок действий по запуску батника с админ правами у пользователей.
10 февраля 2021 г. 14:41
Все ответы
-
Если вы ставите пользователям IP руками и не хотите использовать DHCP, то почему бы также руками им и не поменять на новые значения?
От DHCP по религиозным соображениям отказываетесь?
10 февраля 2021 г. 17:34 -
пользователи под своими правами могут менять настройки ip?
добавьте логирование в лог и/или запускайте скрипты через startup и/или тестируйте их локально и/или используйте powershell
а так то да, вы сами себе создаете проблему вместо того чтоб ее решить используя простой механизм в виде dhcp
The opinion expressed by me is not an official position of Microsoft
10 февраля 2021 г. 22:24Модератор -
если все так плохо c DHCP я бы смотрел в сторону утилиты pcexex Макрка Русиновича - удаленная командная строка, под которую можно написать ботник, который пробежится по всем компам и запустит на них какую-то команду вроде netsh по смене ip
Как изменить IP адрес компьютера из пакетного файла | pcnetwork | adminstuff (microsin.net)
11 февраля 2021 г. 18:52 -
Всё гораздо проще: или подключаемся к каждому компу отдельно через Powershell (wmi должен быть включён), или пишим скрипт подключающийся к каждому компу в домене и выполняем команду:
Set-NetIPAddress -InterfaceAlias Ethernet0 -AddressFamily IPv4 -IPAddress 192.168.100.2 -PrefixLength 24 -DefaultGateway 192.168.100.1
IPAddress пишите тот же что и был, DefaultGateway новый
- Изменено Гастарбайтер 11 февраля 2021 г. 20:47
11 февраля 2021 г. 19:57 -
Добрый день,
Можно запилить смену дефолтного шлюза скриптом Powershell через GPO примерно так (стырено и подправлено отсюда)
#variables # задаем маску IP локальной сети (первая часть адреса) $ipaddressmask='192.168' $index = get-netipaddress | where-object {$_.IPAddress -match $ipaddressmask} | select -ExpandProperty InterfaceIndex $gateway = get-netroute -DestinationPrefix '0.0.0.0/0' | select -ExpandProperty NextHop $oldroute = '1.1.1.1' $newroute = '2.2.2.2' $destination = '0.0.0.0/0' #Start Changing the Gateway if needed Function Swap-Gateway() { remove-netroute -interfaceindex $index -NextHop $oldroute -confirm:$false new-netroute -interfaceindex $index -NextHop $newroute -destinationprefix $destination -confirm:$false sleep 3 } if ($gateway -eq $oldroute) { Swap-Gateway }
12 февраля 2021 г. 6:43 -
Добрый день,
Можно запилить смену дефолтного шлюза скриптом Powershell через GPO примерно так (стырено и подправлено отсюда)
#variables # задаем маску IP локальной сети (первая часть адреса) $ipaddressmask='192.168' $index = get-netipaddress | where-object {$_.IPAddress -match $ipaddressmask} | select -ExpandProperty InterfaceIndex $gateway = get-netroute -DestinationPrefix '0.0.0.0/0' | select -ExpandProperty NextHop $oldroute = '1.1.1.1' $newroute = '2.2.2.2' $destination = '0.0.0.0/0' #Start Changing the Gateway if needed Function Swap-Gateway() { remove-netroute -interfaceindex $index -NextHop $oldroute -confirm:$false new-netroute -interfaceindex $index -NextHop $newroute -destinationprefix $destination -confirm:$false sleep 3 } if ($gateway -eq $oldroute) { Swap-Gateway }
Я так понимаю, что в этом скрипте для запуска через GPO необходимо поменять только :
1. $ipaddressmask='192.168' на свою. (например $ipaddressmask='192.168.5')
2. $oldroute = '1.1.1.1' вместо "1.1.1.1" пишем адрес старого шлюза по умолчанию у пользователей.
3. $newroute = '2.2.2.2' вместо "2.2.2.2" пишем адрес нового шлюза по умолчанию для пользователей.
Все ли верно? ничего не пропустил?
не совсем понимаю цель указания 0.0.0.0/0 в DestinationPrefix '0.0.0.0/0' и $destination = '0.0.0.0/0'
12 февраля 2021 г. 9:51 -
не совсем понимаю цель указания 0.0.0.0/0 в DestinationPrefix '0.0.0.0/0' и $destination = '0.0.0.0/0'
12 февраля 2021 г. 10:13 -
1. $ipaddressmask='192.168' на свою. (например $ipaddressmask='192.168.5')
2. $oldroute = '1.1.1.1' вместо "1.1.1.1" пишем адрес старого шлюза по умолчанию у пользователей.
3. $newroute = '2.2.2.2' вместо "2.2.2.2" пишем адрес нового шлюза по умолчанию для пользователей.
Все ли верно? ничего не пропустил?
не совсем понимаю цель указания 0.0.0.0/0 в DestinationPrefix '0.0.0.0/0' и $destination = '0.0.0.0/0'
1. Можно и так и так. Цель - определить правильный адаптер, если их несколько.
2. Да
3. Да
4. Это маршрут по умолчанию для всех сетей
12 февраля 2021 г. 10:35 -
спасибо вам большое!
скрипт локально на компьютере вроде как работает. Буду заводить GPO.
12 февраля 2021 г. 11:06 -
спасибо вам большое!
скрипт локально на компьютере вроде как работает. Буду заводить GPO.
на Windows 10 скрип запускается, на Windows 7 пишет:
PS D:\> ./Безымянный1.ps1 Имя "get-netipaddress" не распознано как имя командлета, функции, файла скрипта или выполняемой программы. Проверьте пр авильность написания имени, а также наличие и правильность пути, после чего повторите попытку. D:\Безымянный1.ps1:4 знак:26 + $index = get-netipaddress <<<< | where-object {$_.IPAddress -match $ipaddressmask} | select -ExpandProperty Interfac eIndex + CategoryInfo : ObjectNotFound: (get-netipaddress:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException Имя "get-netroute" не распознано как имя командлета, функции, файла скрипта или выполняемой программы. Проверьте правил ьность написания имени, а также наличие и правильность пути, после чего повторите попытку. D:\Безымянный1.ps1:6 знак:24 + $gateway = get-netroute <<<< -DestinationPrefix '0.0.0.0/0' | select -ExpandProperty NextHop + CategoryInfo : ObjectNotFound: (get-netroute:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException
12 февраля 2021 г. 12:08 -
попробуйте вначале скрипта добавить
Import-Module NetTCPIP
также убедитесь, что он есть на ПК с Windows 7 (C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules\NetTCPIP\NetTCPIP.psd1)
12 февраля 2021 г. 12:20 -
powershell 2 и windows 7 не поддерживаются, но powershell 2 вы можете без проблем обновить до 5 версии, что крайне рекоммендую сделать
The opinion expressed by me is not an official position of Microsoft
12 февраля 2021 г. 13:56Модератор -
Прошу помочь с обновлением PowerShell на компьютерах AD. Есть ли способ?
Спасибо
18 февраля 2021 г. 9:51 -
Upgrading existing Windows PowerShell - ссылка18 февраля 2021 г. 10:48
-
ссылка на текущий топик?
нужен какой-то скрипт для запуска через тот GPO по обновлению PowerShell на компах юзеров? Есть ли такое? Или может через WSUS это делается?18 февраля 2021 г. 10:54 -
18 февраля 2021 г. 12:01
-
.msu 5.1 версии PowerShell скачал, с ними скрипты powershell. Как запустить тихую установку этих пакетов на компьютерах в AD через GPO?18 февраля 2021 г. 12:19