Jan 09 2019 03:21 AM - edited Jan 09 2019 10:41 PM
Hello Good People,
I am migrating from Exchange 2010 SP3 RU17 to Exchange 2016 CU 11.
My setup is two Exchange 2010(MBX,HT,CA roles ) with DAG setup.
I have completed all the prerequisites and installed Exchange 2016 CU11 in two new VM's
Configured the exchange 2016 for URl's, Autodiscover SCP, SSl Certificate, MB databases.
Configured the exchange 2010 for coexistence mode ( SP3 RU11, Outlook Anywhere is enabled with IIS Authentication (NTLM),Offline Address Book point to Exchange 2010 Databases)
As everything is ready to cutover the client access namespace and mail flow
I want to test before taking the new servers to production
So i have my test laptop where i have edited the hosts file and pointed it to new exchange server 2016
My outlook 2016 client on test laptop has two mailbox configured one from Exchange 2010 and other from Exchange 2016
Exchange 2016 Mailbox users ( test.exch2016 ) is connecting to new exchange 2016 but Exchange 2010 is not connecting to Exchange 2010 Mailbox user
When Accessing from OWA i can open the mailbox from exchange 2010 server
Actually we want all outlook clients to connect to exchange 2016 server and from exchange 2016 request will be proxied to exchange 2010 servers for mailbox databases until we start migrating mailboxes
Because when we are in coexistence mode ( Exchange 2010 and 2016 ) higher version of exchange should be facing the client connections and i understand exchange 2016 will proxy to exchange 2010 for retrieving the mailbox database
Appreciate your suggestions
Did i miss anything from my preparation ?
Hello Good People,
I have found something which could be the issue, Please suggest me how to solve it.
%Exchangeinstalldirectory%\v15\logging\httpproxy\rpchttp
2019-01-09T07:46:17.959Z,17f2fbb1-cff4-47b9-bb62-6dcd59e50a1d,15,1,1591,10,,RpcHttp,email.abc.com,/rpc/rpcproxy.dll,,NTLM,true,ABC\test.exch2010,,Url~https://hqex02.abc.local/rpc/rpcproxy.dll?email.abc.com:6004,MSRPC,172.20.7.24,HQEX-01,200,,,RPC_IN_...: The remote server returned an error: (503) Server Unavailable. at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at Microsoft.Exchange.HttpProxy.RpcHttpProxyRequestHandler.<>c__DisplayClass29_0.<OnValidateBackendServerCacheCompleted>b__0();SharedCache=AMCacheRemovalFailure;StreamProxy=StreamProxy-Request-ExpectReadCallback;,,,,,CafeV1
Exchange 2010 Sp3 are win 2008 r2 SP1 - OS details
Exchange 2016 are win 2016 ver 1607 - OS Details
Also if i try UNC path (\\10.x.x.x ) or Name (\\XXXX) to old server from new 2016 servers i get error like Network name not available
When i try to find the details of old servers from exchange 2016 ECP Admin center i get the below error for both of the exchange 2010 servers
Jan 22 2019 02:09 AM
I have the exact same scenario and same/ditto issue. Brother please let me know how you have managed to resolve this case and how you have make sure that everything is working fine before name space cutover.
Jan 22 2019 03:26 AM
Hi Asif,
Please follow this link for migration
https://practical365.com/exchange-server/migrating-exchange-server-2016/
Please follow this link for troubleshooting the issue
In my case solution is forcing outlook anywhere for outlook clients.
By default with Outlook Anywhere enabled in the environment your clients prefer RPC/TCP connections when on Fast Networks as seen below.<o:p></o:p>
The trick we use to force Outlook Anywhere to also be used internally is via Autodiscover. Using Autodiscover we can make Windows Outlook clients prefer RPC/HTTPS on both Fast and Slow networks as seen here.<o:p></o:p>
The method used to make clients always prefer HTTPS is configuring the OutlookProviderFlags option via the Set-OutlookProvider cmdlet. The following commands are executed from the Exchange 2010 Management Shell.<o:p></o:p>
Set-OutlookProvider EXPR -OutlookProviderFlags:ServerExclusiveConnect<o:p></o:p>
Set-OutlookProvider EXCH -OutlookProviderFlags:ServerExclusiveConnect<o:p></o:p>
If for any reason you need to put the configuration back to its default settings, issue the following commands and clients will no longer prefer HTTP on Fast Networks.<o:p></o:p>
Set-OutlookProvider EXPR -OutlookProviderFlags:None<o:p></o:p>
Set-OutlookProvider EXCH -OutlookProviderFlags:None
Hope it helps to others who are doing migrations.
Jan 23 2019 05:52 AM
Hi @arifsohail92 ,
Thank you so much for providing me such a valuable information. Right now only BASIC authentication is enabled of IIS Authentication Method on Exchange 2010 CAS servers. However, I am able to connect now with Exchange 2010 mailboxes after pointing the name space to Exchange 2016.
I am able to connect to Exchange 2010 mailboxes through outlook even on Local LAN after enabling the checking the option provided by you ( on fast networks, connect using http first).
However, in RPCHTTP logs I am getting following error that server is not available. I am confused now that if error is coming in logs then how outlook is connecting fine.
Question: Can I ignore the logs if outlook is connecting fine for Exchange 2010 mailboxes after pointing the name space to Exchange 2016? If not then i am not sure how outlook is connecting successfully?
Note: For security reason, I have replaced the domain name with mydomain.
2019-01-22T07:26:07.281Z,da5e7680-86ec-4c54-9f23-3d818d1c7e8b,15,1,1591,10,,RpcHttp,webmail.mydomain.com,/rpc/rpcproxy.dll,,Basic,true,mydomain
\test.migration4,,Url~https://servervpexhc1.mydomain.local/rpc/rpcproxy.dll?
"webmail.mydomain.com:6002,MSRPC,10.80.90.11,PVEXMB01,200,,,RPC_IN_DATA,Proxy,servervpexhc1.mydomain.local,15.00.0000.000,IntraForest,RpcHttpProxyRules,,,,1073741824,,,,0,457,,0,,0,,0,0,,0,3376,0,2831,6,0,,,,,0,1,3376,0,,539,,545,3376,,?
webmail.mydomain.com:6002,,BeginRequest=2019-01-22T07:26:03.904Z;CorrelationID=<empty>;ProxyState-Run=None;FEAuth=BEVersion-
1941962752;NewConnection=10.0.0.115&0;H-BeginGetResponse=2019-01-22T07:26:04.362Z;H-OnResponseReady=2019-01-22T07:26:04.373Z;H-
EndGetResponse=2019-01-22T07:26:04.373Z;NewConnection=10.0.0.115&0;BeginGetRequestStream=2019-01-
22T07:26:04.374Z;OnRequestStreamReady=2019-01-22T07:26:04.380Z;ProxyState-Complete=ProxyRequestData;SharedCacheGuard=0;EndRequest=2019-
01-22T07:26:07.281Z;,WebExceptionStatus=ProtocolError;ResponseStatusCode=503;WebException=System.Net.WebException: The remote server
returned an error: (503) Server Unavailable. at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at
Microsoft.Exchange.HttpProxy.RpcHttpProxyRequestHandler.<>c__DisplayClass29_0.<OnValidateBackendServerCacheCompleted>b__0
();SharedCache=AMCacheRemovalFailure;StreamProxy=StreamProxy-Request-ExpectReadCallback;,,,,,CafeV1"
Jan 23 2019 05:54 AM
Hi @arifsohail92 ,
Thank you so much for providing me such a valuable information. Right now only BASIC authentication is enabled of IIS Authentication Method on Exchange 2010 CAS servers. However, I am able to connect now with Exchange 2010 mailboxes after pointing the name space to Exchange 2016.
I am able to connect to Exchange 2010 mailboxes through outlook even on Local LAN after enabling the checking the option provided by you ( on fast networks, connect using http first).
However, in RPCHTTP logs I am getting following error that server is not available. I am confused now that if error is coming in logs then how outlook is connecting fine.
Question: Can I ignore the logs if outlook is connecting fine for Exchange 2010 mailboxes after pointing the name space to Exchange 2016? If not then i am not sure how outlook is connecting successfully?
Note: For security reason, I have replaced the domain name with mydomain.
"2019-01-22T07:26:07.281Z,da5e7680-86ec-4c54-9f23-3d818d1c7e8b,15,1,1591,10,,RpcHttp,webmail.mydomain.com,/rpc/rpcproxy.dll,,Basic,true,mydomain
\test.migration4,,Url~https://servervpexhc1.mydomain.local/rpc/rpcproxy.dll?
"webmail.mydomain.com:6002,MSRPC,10.80.90.11,PVEXMB01,200,,,RPC_IN_DATA,Proxy,servervpexhc1.mydomain.local,15.00.0000.000,IntraForest,RpcHttpProxyRules,,,,1073741824,,,,0,457,,0,,0,,0,0,,0,3376,0,2831,6,0,,,,,0,1,3376,0,,539,,545,3376,,?
webmail.mydomain.com:6002,,BeginRequest=2019-01-22T07:26:03.904Z;CorrelationID=<empty>;ProxyState-Run=None;FEAuth=BEVersion-
1941962752;NewConnection=10.0.0.115&0;H-BeginGetResponse=2019-01-22T07:26:04.362Z;H-OnResponseReady=2019-01-22T07:26:04.373Z;H-
EndGetResponse=2019-01-22T07:26:04.373Z;NewConnection=10.0.0.115&0;BeginGetRequestStream=2019-01-
22T07:26:04.374Z;OnRequestStreamReady=2019-01-22T07:26:04.380Z;ProxyState-Complete=ProxyRequestData;SharedCacheGuard=0;EndRequest=2019-
01-22T07:26:07.281Z;,WebExceptionStatus=ProtocolError;ResponseStatusCode=503;WebException=System.Net.WebException: The remote server
returned an error: (503) Server Unavailable. at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at
Microsoft.Exchange.HttpProxy.RpcHttpProxyRequestHandler.<>c__DisplayClass29_0.<OnValidateBackendServerCacheCompleted>b__0
();SharedCache=AMCacheRemovalFailure;StreamProxy=StreamProxy-Request-ExpectReadCallback;,,,,,CafeV1"
Jan 26 2019 07:00 AM
Hello Asif,
In my case i have ignored that error and started my migration and all users were connecting to 2016 mailbox databases.
However if you want to check the root cause of the issue, check with microsoft.
Thanks,
Arif