Skip to content

Instantly share code, notes, and snippets.

@bill-long
Last active November 13, 2020 00:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bill-long/334c6c91041908861e56065998fe9ac2 to your computer and use it in GitHub Desktop.
Save bill-long/334c6c91041908861e56065998fe9ac2 to your computer and use it in GitHub Desktop.
$lastByteOfHash = ((New-Object -TypeName System.Security.Cryptography.MD5CryptoServiceProvider).ComputeHash((New-Object -TypeName System.Text.UTF8Encoding).GetBytes($env:computername))) | Select-Object -Last 1
$site = [System.DirectoryServices.ActiveDirectory.ActiveDirectorySite]::GetComputerSite()
$domainDCsInSite = @([System.DirectoryServices.ActiveDirectory.Domain]::GetComputerDomain().FindAllDiscoverableDomainControllers($site.Name)) | Sort-Object Name
$domainNetbiosName = (Get-ADDomain -Current LocalComputer).NetBIOSName
$myDCOffset = $lastByteOfHash % $domainDCsInSite.Count
$myDC = $domainDCsInSite[$myDCOffset]
$dcShortName = $myDC.Name.Substring(0, $myDC.Name.IndexOf("."))
$secureChannelTarget = "$domainNetbiosName\$dcShortName"
Write-Host "Setting secure channel to" $secureChannelTarget
nltest /sc_reset:$secureChannelTarget
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment