We wanted an overview of which domains our users were using in a certain country (Netherlands in this case). So, a simple Powershell snippet that counts all unique domains it encounters in the ProxyAddresses field of all users under a certain OU.
Note that if you have set contacts / forwarders, some domains that appear may not actually be accepted domains in your exchange organization.
#Author: Jos Lieben (OGD) #Date: 13-06-2016 #Script help: www.liebensraum.nl #Purpose: retrieve all unique domains in use under a specific OU and count them #Requirements: #active directory PS module ######## ipmo activedirectory $users = get-aduser -Filter * -Properties * -SearchBase "OU=Netherlands,OU=Countries,DC=lieben,DC=nu" -SearchScope SubTree $domains = @{} foreach($user in $users){ $emails = $user.ProxyAddresses foreach($email in $emails){ $domain = $email.Split("@")[1] if($domain){ $domains[$domain] += 1 } } } Write-Output $domains