Cuando existe un número elevado de buzones que están redirigidos a otros, es necesario tenerlo controlado y disponer de un listado de ellos con su correspondiente configuración en un momento dado.
Puedes realizar este listado con Powershell, en concreto con el cmd-let de Exchange Get-Mailbox, que muestra las propiedades de los buzones. En este caso las propiedades son ForwardingAddress y DeliverToMailboxAndForward.
Con el siguiente script de Powershell puedes conseguir este listado: todas las cuentas de todos los buzones que tengan activado el reenvío, la cuenta del buzón de reenvío y si el reenvío se entrega en ambos buzones o sólo en el buzón de reenvío:
# ignora errores
$ErrorActionPreference = "SilentlyContinue"
function bruto_a_sam($bruto)
{
$bruto2 = $bruto -replace "^.*/", ""
$root = [ADSI]''
$busca = new-object System.DirectoryServices.DirectorySearcher($root)
$busca.Filter = "(&(|(objectCategory=person)(objectCategory=group))(Name=$bruto2))"
$sam = $busca.findone()
return $sam.properties.samaccountname
}
$buzones = Get-Mailbox
$c = 0
foreach ($b in $buzones)
{
$buzon = [string]$b.samaccountname
$reenviar_a = [string]$b.ForwardingAddress
$dual = [string]$b.DeliverToMailboxAndForward
if ( $reenviar_a )
{
Write-Host Buzón: $buzon
$sam = bruto_a_sam($reenviar_a)
write-host Dirección de reenvío: $sam
if ( $dual -eq "True" )
{
write-host Entrega en buzón y en dirección de reenvío
}
else
{
Write-Host Entrega sólo en dirección de reenvío
}
Write-Host -----
$c++
}
}
Write-Host $c registros
$ErrorActionPreference = "SilentlyContinue"
function bruto_a_sam($bruto)
{
$bruto2 = $bruto -replace "^.*/", ""
$root = [ADSI]''
$busca = new-object System.DirectoryServices.DirectorySearcher($root)
$busca.Filter = "(&(|(objectCategory=person)(objectCategory=group))(Name=$bruto2))"
$sam = $busca.findone()
return $sam.properties.samaccountname
}
$buzones = Get-Mailbox
$c = 0
foreach ($b in $buzones)
{
$buzon = [string]$b.samaccountname
$reenviar_a = [string]$b.ForwardingAddress
$dual = [string]$b.DeliverToMailboxAndForward
if ( $reenviar_a )
{
Write-Host Buzón: $buzon
$sam = bruto_a_sam($reenviar_a)
write-host Dirección de reenvío: $sam
if ( $dual -eq "True" )
{
write-host Entrega en buzón y en dirección de reenvío
}
else
{
Write-Host Entrega sólo en dirección de reenvío
}
Write-Host -----
$c++
}
}
Write-Host $c registros