Link to home
Start Free TrialLog in
Avatar of aucklandnz
aucklandnzFlag for New Zealand

asked on

OAB not updating in outlook 2010 cache mode

Hi All,

I have Exchange 2010, all users are on office 2010. I have noticed that Offline address book is not updating properly on clients running in cache mode. if you uncheck cache mode address book looks up to date.

ps. note that i have migrated to 2010 from 2007 exchange.

Cheers
Avatar of MegaNuk3
MegaNuk3
Flag of United Kingdom of Great Britain and Northern Ireland image

What error do the cached mode clients get? 0x8004010F?
Ensure Exchange 2010 is your OAB generating server and ensure the OAB is set for web distribution, then go into EMs and do:
Get-offlineaddressbook | update-offlineaddressbook

Wait 15 minutes and then restart the MsExchangeFDS service on your CAS servers

Wait 5 minutes and then going into Outlook and try and download the OAB again
Avatar of aucklandnz

ASKER

[PS] C:\Windows\system32>Get-offlineaddressbook | update-offlineaddressbook
Failed to generate the content of the offline address book '\Default Offline Address Book'. Two possible reasons for the failure are that the System Attendant Service is
 not running or you do not have permission to perform this operation. Error message : 'Error 0x6ba (The RPC server is unavailable) from RpcEpResolveBinding'.
    + CategoryInfo          : InvalidResult: (\Default Offline Address Book:OfflineAddressBookIdParameter) [Update-OfflineAddressBook], LocalizedException
    + FullyQualifiedErrorId : F60AAB49,Microsoft.Exchange.Management.SystemConfigurationTasks.UpdateOfflineAddressBook

System Attendant Service is started and running
Do
Get-offlineaddressbook | fl
And post the results, hide your domain/server names if you want
You will probably find that your Exchange 2010 server is not the OAB generating server... Then you will need to select the Offline Address list in the EMC, right click on it and 'Move' it to your E2k10 server
you were right. generating server was not exchange 2010. i have moved it, made it a default (2 days ago) but it still doesnt update properly.

What error do the cached mode clients get? Ensure the OAB is set for web distribution, then go into EMS and do:
Get-offlineaddressbook | update-offlineaddressbook

Wait 15 minutes and then restart the MsExchangeFDS service on your CAS servers

Wait 5 minutes and then going into Outlook and try and download the OAB again
Client doesn't give me any errors, it just hangs half way thru downloading address book.

I have ran
Get-offlineaddressbook | update-offlineaddressbook

waited 30 mins and restarted server

no luck
Run EMC-->Toolbox--> ExBPA on there and see if it highlights any OAB issues on there, especially permissions.

If that fails, try create a new user and mailbox, login as that user and see if it can download the OAB. Then we know if it is a server or user/client issue.

Are you getting any OAL Generator events in the APplication event log on the OAB Generating server?
i ran ExBPA

Offline Address Boob replica not found
Didn't find a replica of folder 'OAB Version 4' for offline address book 'Default Offline Address Book SNZMX2'. Either a replica doesn't exist, or this folder hasn't been created yet. If an OAB generation attempt has not yet been made, you can ignore this error.
If you don't have any Pre Outlook 2007 clients then turn off PF distribution of the OAB and only use web distribution
will do that.

i thought i will mention that i have 2 OAB. One was original from exchange 2007 and second one was created when i have installed 2010. I have made 2010 as default, and both have exchange 2010 as a generating server.
Also on DB for exchange 2010 i have pointed to OAB that have been created by exchange 2010

Once you have turned off PF distribution of the OAB
Go into EMS again and do:
Get-offlineaddressbook | update-offlineaddressbook

Watch the event logs on the OAB generating server for 'OAL Generator' events
Failed to save admin audit log for this cmdlet invocation.
Organization:  
Log content:
Subject: ta.local/Administrator : Set-OfflineAddressBook
Body:
Cmdlet Name: Set-OfflineAddressBook
Object Modified: \Default Offline Address Book SNZMX2
Parameter: Identity = \Default Offline Address Book SNZMX2
Parameter: PublicFolderDistributionEnabled = False
Property Modified: OabFlags = 0
Property Modified: PublicFolderDistributionEnabled = False
Property Original: OabFlags = 1
Property Original: PublicFolderDistributionEnabled = True
Caller:  ta.local/Administrator
Succeeded: True
Error: None
Run Date: 2011-03-14T20:30:54
OriginatingServer: SNZMX2 (14.01.0218.011)
 
Error:
Microsoft.Exchange.Data.Storage.ConnectionFailedTransientException: Cannot open mailbox /o=TA/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Configuration/cn=Servers/cn=SNZMX2/cn=Microsoft System Attendant. ---> Microsoft.Mapi.MapiExceptionLogonFailed: MapiExceptionLogonFailed: Unable to open message store. (hr=0x80040111, ec=-2147221231)
Diagnostic context:
    Lid: 55847   EMSMDBPOOL.EcPoolSessionDoRpc called [length=244]
    Lid: 43559   EMSMDBPOOL.EcPoolSessionDoRpc returned [ec=0x0][length=272][latency=15]
    Lid: 23226   --- ROP Parse Start ---
    Lid: 27962   ROP: ropLogon [254]
    Lid: 17082   ROP Error: 0x80040111
    Lid: 26937  
    Lid: 21921   StoreEc: 0x80040111
    Lid: 27962   ROP: ropExtendedError [250]
    Lid: 1494    ---- Remote Context Beg ----
    Lid: 26426   ROP: ropLogon [254]
    Lid: 44215  
    Lid: 60049   StoreEc: 0x8004010F
    Lid: 49469  
    Lid: 65341   StoreEc: 0x8004010F
    Lid: 56125  
    Lid: 47933   StoreEc: 0x8004010F
    Lid: 32829  
    Lid: 49213   StoreEc: 0x8004010F
    Lid: 48573  
    Lid: 64957   StoreEc: 0x8004010F
    Lid: 59409  
    Lid: 45073  
    Lid: 11173   StoreEc: 0x80040111
    Lid: 22970  
    Lid: 8620    StoreEc: 0x80040111
    Lid: 1750    ---- Remote Context End ----
    Lid: 26849  
    Lid: 21817   ROP Failure: 0x80040111
    Lid: 26297  
    Lid: 16585   StoreEc: 0x80040111
    Lid: 32441  
    Lid: 1706    StoreEc: 0x80040111
    Lid: 24761  
    Lid: 20665   StoreEc: 0x80040111
    Lid: 25785  
    Lid: 29881   StoreEc: 0x80040111
   at Microsoft.Mapi.MapiExceptionHelper.ThrowIfError(String message, Int32 hresult, SafeExInterfaceHandle iUnknown, Exception innerException)
   at Microsoft.Mapi.ExRpcConnection.OpenMsgStore(OpenStoreFlag storeFlags, String mailboxDn, Guid mailboxGuid, Guid mdbGuid, MapiStore msgStorePrivate, String& correctServerDn, ClientIdentityInfo clientIdentityAs, String userDnAs, String applicationId, CultureInfo cultureInfo)
   at Microsoft.Mapi.MapiStore.OpenMapiStore(String serverDn, String userDn, String mailboxDn, Guid guidMailbox, Guid guidMdb, String userName, String domainName, String password, String httpProxyServerName, ConnectFlag connectFlags, OpenStoreFlag storeFlags, CultureInfo cultureInfo, Boolean wantRedirect, String& correctServerDN, ClientIdentityInfo clientIdentity, String applicationId, Client xropClient, Boolean wantWebServices, Byte[] clientSessionInfo, TimeSpan connectionTimeout)
   at Microsoft.Mapi.MapiStore.OpenMailbox(String serverDn, String userDn, String mailboxDn, String userName, String domainName, String password, ConnectFlag connectFlags, OpenStoreFlag storeFlags, CultureInfo cultureInfo, WindowsIdentity windowsIdentity, String applicationId)
   at Microsoft.Exchange.Data.Storage.MailboxSession.ForceOpen(MapiStore linkedStore)
   --- End of inner exception stack trace ---
   at Microsoft.Exchange.Data.Storage.MailboxSession.ForceOpen(MapiStore linkedStore)
   at Microsoft.Exchange.Data.Storage.MailboxSession.Initialize(MapiStore linkedStore, LogonType logonType, ExchangePrincipal owner, DelegateLogonUser delegateUser, Object identity, OpenMailboxSessionFlags flags, GenericIdentity auxiliaryIdentity)
   at Microsoft.Exchange.Data.Storage.MailboxSession.<>c__DisplayClass12.<CreateMailboxSession>b__10(MailboxSession mailboxSession)
   at Microsoft.Exchange.Data.Storage.MailboxSession.InternalCreateMailboxSession(LogonType logonType, ExchangePrincipal owner, CultureInfo cultureInfo, String clientInfoString, IAccountingObject budget, Action`1 initializeMailboxSession, InitializeMailboxSessionFailure initializeMailboxSessionFailure)
   at Microsoft.Exchange.Data.Storage.MailboxSession.CreateMailboxSession(LogonType logonType, ExchangePrincipal owner, DelegateLogonUser delegateUser, Object identity, OpenMailboxSessionFlags flags, CultureInfo cultureInfo, String clientInfoString, PropertyDefinition[] mailboxProperties, IList`1 foldersToInit, GenericIdentity auxiliaryIdentity, IAccountingObject budget)
   at Microsoft.Exchange.Data.Storage.MailboxSession.ConfigurableOpen(ExchangePrincipal mailbox, MailboxAccessInfo accessInfo, CultureInfo cultureInfo, String clientInfoString, LogonType logonType, PropertyDefinition[] mailboxProperties, InitializationFlags initFlags, IList`1 foldersToInit, IAccountingObject budget)
   at Microsoft.Exchange.Data.Storage.MailboxSession.OpenAsSystemService(ExchangePrincipal mailboxOwner, CultureInfo cultureInfo, String clientInfoString)
   at Microsoft.Exchange.ProvisioningAgent.MailboxLoggerFactory.XsoMailer.Log(AdminLogMessageData data, LogMessageDelegate logMessage)
   at Microsoft.Exchange.ProvisioningAgent.AdminLogProvisioningHandler.OnComplete(Boolean succeeded, Exception e)
Have you attempted turning off PF distribution of the OAB from EMC? Or did you only attempt it from EMS?

If you still cannot turn off the PF distribution, then delete the OABs and create a new one with Web Distribution only
i only tried to deleted from EMC not EMS.

what would be command to rurn public folders off in the shell ?

Would i cause any problems if i delete all OAB and create new one ?

thanks
Get-OfflineAddressBook | set-OfflineAddressBook -PublicFolderDistributionEnabled:$false

The above should all be on one line.

As for deleting the OAB - well, it isn't working currently so you can't make it worse than it is now. ;-)
i was trying to create ne OAB and i got thi error.

i guess this would be the reason why my existing OAB is not working User generated image
when i go to
https://mail.mydomain.com/oab/

and log in as admin


im getting
403 - Forbidden: Access is denied.
You do not have permission to view this directory or page using the credentials that you supplied.
When i run get-oabvirtualdirectory it seems ;like it is looking for it on snzmx1 which is my old 2007 server (its turned off) my exchange 2010 is SNZMX2

[PS] C:\Windows\system32>get-oabvirtualdirectory
The task wasn't able to connect to IIS on the server 'SNZMX1.ta.local'. Make sure that the server exists and can be reached from this computer: The RPC server is unavailable.
    + CategoryInfo          : ReadError: (SNZMX1\OAB (Default Web Site):ADObjectId) [Get-OabVirtualDirectory], IISNotReachableException
    + FullyQualifiedErrorId : BD52C1F,Microsoft.Exchange.Management.SystemConfigurationTasks.GetOabVirtualDirectory
Have you managed to delete the old OABs and create a new one yet or are you stil getting the same error do you have separate CAS and MB servers? or are both roles on the same server?
all roles are on the same server

i havent deleted old OABs, i was trying to create a new one when i got an error in virtual directory section
Can you select the snzmx2 server during the OAB creation and create a new OAB or won't it let you because of the error?
in new OAB wizard in Select Mailbox Server only SNZMX2 is showing. so i select it , click next, select Enable Web-Based distribution and click Add ..... then its searching searching and gives me an error
Any chance you are going to turn the Exchange 2007 server back on to sort out this OAB issue?

Is the Exchange 2010 server a PF server?

You can try the new-offlineaddressbook command and see if that gets further than the wizard(Have a look at the example at the bottom of the page)
http://technet.microsoft.com/en-us/library/bb123692.aspx
i have removed 2007 from exchange organisation, deleted OAB and created new one.

When manually trying to download offline address book within Outlook, it just hangs.

Under server configuration>Client Access> Offline Address Book Distribution i have:
Internal: https://snzmx2/oab

external :https://mail.mydomain.com/oab

when i try to open https://snzmx2/oab
im getting :
403 - Forbidden: Access is denied.

thanks
Is there a web.config file in ClientAccess\OAB folder? If there is then rename it.

You can change the internalURL to Http:// and Untick the 'Require SSL' box so internal clients can download it over http. If the external URL is https then the external clients will still download the OAB over HTTPs
do you mean in OAB virtual directory on IIS ?
On the CAS check the clientaccess\OAB folder in windows explorer for the web.config

Untick 'Require SSL' from IIS management

Set the internalURL with set-OABVirtualDirectory from EMS

Is there a <GUID> folder under clientAccess\OAB on the CAS server and do 'Authenticated Users' have Read permissions on the <GUID> folder
there are .lzx file and 1 oab.xml

no web.config
ASKER CERTIFIED SOLUTION
Avatar of MegaNuk3
MegaNuk3
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial


yes

in IIS on OAB virtual directory i have unchecked Require SSL

Under server configuration>Client Access> Offline Address Book Distribution i have:
Internal: http://snzmx2/oab
Ok and what happens now when you try download the OAB from outlook 2010 cached mode clients?
Clients try to connect and just hangs there with no progress or any errors
You may need to restart Outlook for it to pick up the URL change
all working now.

Is it safe to have SSL unchecked ?
Time to test outlook autoconfig:
With outlook open, hold down CTRL key and right click on the Outlook icon in the bottom right hand side of your screen, then on the popup menu select the "Test Autoconfiguration". Select that, enter valid credentials and select the "autodiscover" option only and test.

See what OAB URLs are being returned and the try and open the full URL in IE, it should be something like http://Snzmx2/OAB/<GUID>/OAB.XML
Ignore my comment above.

Since the internalURL is only used by internal clients, you trust thosemachines so HTTP is fine. The externalURL will be used by OutlOok anywhere so you want HTTPS on that one.

You can try putting the Require SSL and internalURL back again if you want and see if it breaks OAB download again...
all works fine.

i checked SSL again and change internal URl back to https and its working fine now.

Thanks a lot for all you help. really appreciate it.

nice work

Chris
Ok, so your SCP must have been corrupt.
Ignore my comment above, SCP has nothing to do with it. Glad to hear it is all working even with SSL on.
If you go into Outlook and try and download the OAB it does it fine now?
Just a thought I ran into the same problem take a look at this link

http://support.microsoft.com/kb/831124#LetMeFixItMyselfAlways