I always run the Exchange Best Practices Analyzer at the end of a transition project to Exchange Server 2007 or 2010, just to catch any issues that still might exist in the organization.
One of the issues I have encounted a few times is that the ExBPA will report the Default Global Address List missing.
This error is confusing if you simply look at your Address Lists in the organization and can clearly see the Default Global Address List is present. However if you dig a little deeper in the Exchange Management Shell you can see the problem:
[PS] C:\Admin>Get-GlobalAddressList | fl IsDefaultGlobalAddressList : False Name : Default Global Address List
As you can see the IsDefaultGlobalAddressList attribute is set to false. Unfortunately this is not as simple to fix as just running Set-GlobalAddressList, as there is no argument for that cmdlet to change that attribute.
Instead you must modify the attribute using ADSIEdit.msc. Launch ADSIEdit.msc and connect to the Configuration naming context.
Navigate to the Default Global Address List object. You’ll find it in CN=Configuration,dc=yourdomain/CN=Services/CN=Microsoft Exchange/CN=yourorganization/CN=Address Lists Container/CN=All Global Address Lists. Open the properties of the GAL object.
Find the msExchRecipientFilterFlags attribute in the list.
Edit the attribute value and set it to 3.
Press OK and then apply the changes.
You may need to wait a short time for Active Directory to replicate the change. When you query the Default Global Address List properties now you should see that IsDefaultGlobalAddressList is set to True, and ExBPA will not report this error in future scans.
[PS] C:\Admin>Get-GlobalAddressList | fl IsDefaultGlobalAddressList : True Name : Default Global Address List