Powershell и SCCM – проверка опубликованных сетей


При миграции SCCM одна из операций заключалась в переносе Boundary – сетей границ сайта. Сети описывались как IP Ranges. После переноса сетей и прочих настроек SCCM была включена публикация в лес. В результате в контейнере CN=System Management,CN=System должны были появится объекты вида SMS-<код сайта>-<число1>-<число2>, клиенты получить эту информацию, подключиться к сайту и т.д.

Но ничего подобного не произошло. Выяснилось, что при переносе границ в скрипте Powershell мой была допущена ошибка.

Если вы посмотрите командлеты Get/SetCMBoundary, то увидите, что значение сети или диапазона записывается в атрибут Value. Оказалось, что при записи в этот атрибут системой не выполняется должным образом контроль значения. В результате вместо значения <начало сети>-<конец сети> я записал вместе  с тире пару пробелов по обе стороны от него <начало сети><пробел>-<пробел><конец сети>. Получилось красиво… Командлет это проглотил, GUI отобразил значение правильно (!!!) – вот она засада!- но само ядро системы не стало обрабатывать такое значение и просто его игнорировало!

Так сетей и диапазонов было много, и глазами все проверить было сложно, то при поиске проблемы пригодился такой скрипт, который выводит список опубликованных в AD диапазонов сетей:

$sitecode=«S12121212«

$baseSMS = [ADSI]«LDAP://CN=System Management,CN=System,DC=domain,DC=ru»

 

$filter = «(&(objectClass=mSSMSRoamingBoundaryRange)(cn=SMS-$($sitecode)*))»

$findSMS = new-object System.DirectoryServices.DirectorySearcher($baseCTE, $filter)

$SMSRanges = $findSMS.findAll()

#$SMSRanges

$SMSRanges[0] | % {[pscustomobject]@{cn=$_.properties.cn[0]; `

              mssmsrangediplow=[Net.IPAddress]([Net.IPAddress]::NetworkToHostOrder(([int64]$_.properties.mssmsrangediplow[0])*256*256*256*256)); `

              mssmsrangediphigh=[Net.IPAddress]([Net.IPAddress]::NetworkToHostOrder(([int64]$_.properties.mssmsrangediphigh[0]*256*256*256*256)))}}

 

 

Реклама

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s

%d такие блоггеры, как: