Назад | Перейти на главную страницу

Установить организационную единицу по IP-адресу в Active Directory

Наша AD - беспорядок, и я пытался найти способ автоматически назначать компьютеры / рабочие станции организационной единице на основе их IP-адреса. Однако мне не удалось найти какую-либо информацию о том, как это сделать.

Есть ли способ сделать это? Если да, то как можно назначить компьютеры подразделению на основе их IP-адреса?

Зачем вам это нужно? Если вашей целью является применение определенных объектов групповой политики к компьютерам в зависимости от их сетевого расположения, вы можете сделать это намного проще, связав объекты групповой политики с сайтами Active Directory.

если ты действительно есть веская причина для этого, встроенного способа нет; вы, вероятно, можете что-то взломать с помощью PowerShell в следующих строках:

  • Получите компьютер из AD
  • Запросить у DNS его IP-адрес
  • Переместите его в нужное OU

Но я настоятельно не рекомендую этого делать; внимательно посмотрите на актуальный проблема, которую вы пытаетесь решить, и, скорее всего, вы найдете лучший способ ее решить.

Да, вам нужно написать что-то подобное, но это, безусловно, можно сделать. Если вы действительно хотите сходить с ума, вы можете запустить его как сценарий входа (компьютер) через GPO и автоматически перемещать его, если компьютер перемещается в другую подсеть.

Скрипт будет использовать что-то вроде этого плюс словоблудие, чтобы определить, куда вы хотите его отправить:

$ips = [System.Net.Dns]::GetHostAddresses("hostname-here") 

Insert logic here

$hostname = get-adcomputer("hostname-here")

Move-ADObject '$hostname' -TargetPath 'OU=Accounting,DC=Fabrikam,DC=com'