MAPI over HTTP: Exchange 2013
Начиная с Exchange 2013 SP1, мы получили возможность использовать новый протокол: MAPI over HTTP. Еще совсем недавно, его поддержка была только в Outlook 2013, но вот, наконец, было объявлено (по хорошей традиции, дважды : ) о долгожданной поддержке и предыдущей версии клиента. Установив это обновление, мы получаем поддержку и в Outlook 2010.
Итак, давайте перейдем к практике включения протокола, благо сделать это совсем не трудно:
1) Установим .NET framework 4.5.2 для оптимальной производительности MAPI/HTTP.
2) Проверим, свойства новой директории
Get-MapiVirtualDirectory | ft server, *url*
https://cache.mail.yandex.net/mails/4bd5a9c32ef5818950a4f7ed3e9d9876/fromreallife.files.wordpress.com/2015/01/mapi1.jpg
Нам нужно заполнить пустой External Url:
Get-MapiVirtualDirectory | Set-MapiVirtualDirectory -ExternalUrl https://mail.razbornov.ru/mapi
3) Сделано, теперь просто активируем поддержку протокола со стороны сервера:
Проверим
https://cache.mail.yandex.net/mails/6fd4aa0d4f149b878d511c13039648e9/fromreallife.files.wordpress.com/2015/01/mapi2.jpg
и включим:
Set-OrganizationConfig -MapiHttpEnabled $true
Все. Теперь Outlook при запросе авто обнаружения попросит вариант с поддержкой MAPI over HTTP.(X-MapiHttpCapability). И если сервер поддерживает такой протокол, по клиент получит ответ на свой запрос уже с информацией НТТР. Если у клиента два почтовых ящика, один из которых на сервере с RPC/HTTP, а другой с MAPI over HTTP, то Outlook загрузит сведения об обоих протоколах.
Заметим, что после переключения на новый протокол мы увидим знакомое многим предупреждение:
https://cache.mail.yandex.net/mails/c5ea343e05bbfe8283407a000c1f8e95/fromreallife.files.wordpress.com/2015/01/mapi3.jpg
После применения команд нужно подождать вступления их в силу на стороне сервера, примерно 45 минут. Можно посмотреть в журнале Application о событиях autodiscover. Можно для ускорения процесса перезапустить MS Exchange Host Service и перезапустить пул Autodiscover на мейлбоксах.
Что нужно помнить:
Если мы включили поддержку MAPI over HTTP в группе DAG, где не все серверы поддерживают новый протокол, то клиенты НЕ смогут подключиться к своим ящикам.
Клиент, получив новый ответ через авто обнаружение, не буде пытаться использовать "старый" протокол, т.е. никакого downfall не будет. Это нужно крепко помнить, чтобы не было неприятных последствий после развертывания.
Troubleshooting
Где лежат логи нового протокола?
Здесь:
- CAS: %ExchangeInstallPath%\Logging\HttpProxy\Mapi\
- Mailbox: %ExchangeInstallPath%\Logging\MAPI Client Access\
- Mailbox: %ExchangeInstallPath%\Logging\MAPI Address Book Service\
Для проверки подключения быстро можно использовать url подключения, быстро оценив аутентификацию, какой CAS сервер нас аутентифицировал, и место, где лежит наш ящик:
*https://razbornov.ru/mapi/emsmdb
*
Более интересный адрес даст больше диагностической информации:
*https://razbornov.ru/mapi/emsmdb/?showdebug=yes
*
Также помним про Powershell:
*** Test-OutlookConnectivity -RunFromServerId Mail -ProbeIdentity OutlookMapiHttpSelfTestProbe***
Выводы и полезные ссылки
**
**Безусловно, включение нового протокола имеет плюсы производительности для клиентов и большую гибкость с сетевой точки зрения. Если есть возможность, то, безусловно, включаем - почти год использования дает строго положительный опыт, также нужно задуматься при новом развертывании о включении механизма на старте системы.
http://blogs.technet.com/b/exchange/archive/2014/05/09/outlook-connectivity-with-mapi-over-http.aspx
http://channel9.msdn.com/events/TechEd/NewZealand/2014/OFC311
http://channel9.msdn.com/Series/Implementing-Exchange-Server-2013/05
http://channel9.msdn.com/events/TechEd/NorthAmerica/2014/OFC-B216#fbid=
http://channel9.msdn.com/Series/Implementing-Exchange-Server-2013/05