「深入 Exchange 2013」06 命名空间

在前面的章节中,你可能会注意到“命名空间”这样一个词,会联想到C#语言或是XML文档里的那个命名空间的概念。但是在这里它的意思更偏向于URL或者FQDN,比如一个Exchange 2010的RPC Client Access Array客户端访问阵列可能有这样一个命名空间叫mail.contoso.com,而属于OWA的命名空间是owa.contoso.com,在Exchange 2013里,命名空间的设计规划过程变得不那么复杂。我们来看

使用单一命名空间:

最简单也是最常用的做法就是为除了autodiscover之外的所有服务使用单一命名空间,这就要求你在内部和外部DNS都做好该条命名空间的解析;保证内部用户与外部用户都能解析到正确的地址。

并且如果是单一命名空间应用在Outlook Anywhere上(即你的Outlook Anywhere内部和外部都采用mail.contoso.com连接),你的内部和外部的验证防范必须一样。且看下文分析,在前一章已经提过了,Outlook会优先尝试内部URL,但是当前条件下,你内部和外部使用同一URL,导致Outlook认为自己是在内部网络环境,于是它就采用了内部的验证方法。

为每个服务分配一个命名空间?

在前面的负载均衡章节我们就讨论过这种做法,为每一个服务分配一个命名空间(一般都是配置其外部地址),比如owa.contoso.com,eas.contoso.com,ews.contoso.com。(注意Exchange管理中心的URL和OWA的URL往往是联动的。)这样的优势前面也提到过,一个四层的负载均衡设备就可以针对每一个服务的运行情况进行监控了,节省成本。劣势就是,多一个设置就多一个故障点,同时也增加了用户使用的复杂度,最后是证书,如果你用的是通配符公网证书,你又得额外往里增加一些成本,因为增加了可用域名嘛,同时Exchange上的证书也得加入这些额外的URL到subjectAlternativeName 使用者备用名称。

要达到这个目的,只需要使用Set-*VirtualDirectory系列命令在合适的服务器上对虚拟目录进行更改。类似下面:

Get-ActiveSyncVirtualDirectory | Set-ActiveSyncVirtualDirectory –ExternalURL activesync.contoso.com

为Outlook Anywhere配置单一内部命名

默认情况下,当你刚刚安装好了Exchange 2013之后,使用一个Get-OutlookAnywhere命令去查看默认的Outlook Anywhere配置时,会发现外部主机名是空的,而内部主机名则默认是CAS服务器的FQDN;大概是如下所示:

Get-ClientAccessServer | Get-OutlookAnywhere | select identity, *hostname
Identity ExternalHostname InternalHostname
-------- ---------------- ----------------
CAS01\Rpc (Default Web Site) CAS01.contoso.com
CAS02\Rpc (Default Web Site) CAS02.contoso.com

那么试想一下,只要我搭好了一个负载均衡,有一个命名空间为mail.contoso.com,然后我将这两台CAS的Outlook Anywhere都配置成mail.contoso.com,是不是就可以在内部也进行负载均衡和故障转移了?配置的命令很简单

Get-OutlookAnywhere | Set-OutlookAnywhere -InternalHostname mail.contoso.com –InternalClientsRequireSsl $true

这里要注意一下了,还记得我在前一章里提到过的嘛,内部用户使用Outlook Anywhere连接的时候,默认是走HTTP,也就是不需要SSL加密的。那么这里你可以使用-InternalClientsRequireSsl $True 来设置内部客户端的Outlook Anywhere也需要SSL加密。

为Outlook Anywhere配置外部命名

还是那句话,无论你选择啥命名,要确保他能正常被DNS解析。我见过对此严格要求的环境,内部和外部域名分开,内部使用outlook.contoso.com,外部使用mail.contoso.com。类似下面的结果:

Get-OutlookAnywhere | select identity, *hostname
Identity                     ExternalHostname InternalHostname
--------                     ---------------- ----------------
CAS01\Rpc (Default Web Site) mail.contoso.com outlook.contoso.com
CAS02\Rpc (Default Web Site) mail.contoso.com outlook.contoso.com

非绑定命名空间模型

所谓的Exchange 2013单一命名空间特性又是指啥呢?我们继续来看

2013中CAS只会代理客户端请求给拥有活动数据库副本的MBX服务器,这个代理的逻辑不再受Active Directory站点的限制,换句话说。在上海AD站点里的Exchange 2013的CAS,完全可以将请求代理给北京AD站点里的MBX。这样的话,就不再为每个数据中心分配一个命名,而可以采用一个统一的命名方法。

再加上Exchange 2013的CAS不再需要CAS Array,所以在一定程度上确实减少了命名空间的数量。

看下面这张图,我们再来梳理一下,先看左边绿色的站点里有两个数据中心,DAG1则是跨数据中心对的DAG,SiteA的用户无论连接到哪一个数据中心的CAS,都可以被代理到恰当的MBX上。

然后不要以为DAG就是边界了,如果我们使用了Geo-DNS之类的技术,那么处于不同地理位置的SiteB也不需要额外的命名空间,通过Geo-DNS将用户请求解析给SiteB的CAS,然后再代理给SiteA的DAG里的MBX。

这种场景的后果就是,每个数据中心里有50%的流量是从其他的数据中心代理过来的(你问两个数据中心是怎么用同一个命名空间的?DNS轮询嘛……)

   
官方文档是这样描述的:https://technet.microsoft.com/zh-cn/library/dd638137(v=exchg.150).aspx#Site

Exchange 2013 中的更改之一是使客户端可以获得多个可访问的位置。假设客户端能够使用多个可访问的位置(Exchange 2013 中的几乎所有客户端访问协议都基于 HTTP(示例包括 OutlookOutlook 无处不在、EASEWSOWAEAC 等),并且所有受支持的 HTTP 客户端都能够使用多个 IP 地址),因而可在客户端提供故障转移。可以配置 DNS 以在名称解析过程中将多个 IP 地址传递给客户端。例如,客户端会请求 mail.contoso.com 并取回两个 IP 地址(或四个 IP 地址)。不过,客户端可以可靠地使用客户端取回的许多 IP 地址。这使客户端的情况可显著好转,因为如果某个 IP 地址失败,则客户端可以尝试连接一个或多个其他地址。如果客户端尝试一个地址但是该地址失败,则它会等待大约 20 秒,然后尝试列表中的下一个地址。因此,如果失去客户端访问服务器阵列的 VIP,则客户端的恢复会在大约 21 秒后自动进行。

绑定命名空间模型

在绑定的命名空间模型下,用户会被指定给某个特定的数据中心;也就是说,只有在用户被指定的首要数据中心发生故障转移的时才会切换到另外的数据中心。

说白了,在上面的那张图基础之上给数据中心进行命名,比如datacenter1.contoso.com,datacenter2.contoso.com等等。然后只需要控制邮箱数据库的挂载位置就相当于控制了用户连接。

总结

扯了这么多,虽然感觉上没有多少条理,但是主要目的是为了讲清楚,并且理解,Exchange的命名空间设计目的,在日常规划中为什么要这样或者那样去规划命名空间。关于单一命名空间特性,如果有什么不明白的,可以再看一下文中贴出来的technet链接,讲的非常好。

今天就说到这里,下一章我们会聊聊Autodiscover。

最后照例打一下广告:

http://www.itcharger.com/

你身边的 IT 加油站!

也欢迎关注 ITCharger 的微信公众号,每周更新的文章也会在这上面发布; 同时也有其他关于微软私有云技术的文章的分享。

时间: 2024-10-18 01:16:08

「深入 Exchange 2013」06 命名空间的相关文章

「深入 Exchange 2013」09 证书

今儿咱们来聊Exchange里的证书,CAS与MBX角色都有用到证书的地方,只是CAS角色更依赖证书一些,在一台Exchange服务器刚刚安装完成的时候,安装程序会自动生成一张自签名证书,这张自签名证书往往并不满足咱们的需求,所以咱们一般会向企业CA再去针对Exchange所涉及到的多个IIS服务的DNS备用名称申请合适的额证书. Exchange在哪些地方用到证书 1. 让客户端验证服务器的身份.这是最常规的用法,大多数管理员可能都碰到过证书名称不匹配引起的客户端报错. 2. 服务器去验证客户

「深入 Exchange 2013」05 Outlook Anywhere

这一章来给大家讲Outlook Anywhere,概念比较重要,但是容易混淆,大家得仔细阅读,仔细区分. RPC over HTTP/HTTPS 首先得理解,为何在Exchange 2013当中,仅支持Outlook Anywhere的Outlook MAPI客户端连接方式.早期版本的MAPI访问依赖的是TCP的RPC协议直接连接到MBX服务器,而Exchange2013则使用HTTPS封装的RPC协议.这就意味着,如果你在当前是Ex2007或者Ex2010的环境当中,再增加一台Ex2013的服

「深入 Exchange 2013」08 代理、重定向、共存

回顾一下以前讲过的东西,CAS并不直接为客户端提供邮箱连接,而是以两种方式来保证客户端连接到正确的MBX:代理或和重定向.在代理连接当中,CAS接收客户端连接并且转发给恰当的服务器:在重定向连接当中,CAS仅仅是回应客户端一个恰当的服务器的FQDN以让客户端再次发起连接. 在Exchange2013的环境中,CAS只在少数几种情况下才会进行重定向动作.这是由于重定向迫使客户端进行再次连接,这种情况不是所有的客户端种类都可以接受的. 代理 CAS代理动作在Ex2010与Ex2007被设计的略微复杂

「深入 Exchange 2013」04 负载均衡

客户端关联性(已死~) 由于之前提到的CAS架构的改动,我们提到,Exchange 2013的CAS里不再需要客户端关联性.客户端关联性就是指在一次客户端连接过程中,一直是与同一台CAS服务器进行通信:换句话说,当客户端连接到了一个特定的CAS之后,该CAS会一直对该客户端提供服务直到该连接断开为止.为了达到这个目的,CAS必须维持该会话状态,在连接过程中经过的负载均衡器(支持客户端关联性的Load Balancer)才能知道是哪一个CAS正在处理该连接,从而进行正确的分流.如果负载均衡器或者是

「深入 Exchange 2013」MAPI over HTTP实战配置

在前面我们聊Outlook Anywhere的文章里头,我提到了MAPI over HTTP这个Exchange Server 2013 SP1中新增加的功能,这次这篇文章咱们就详细说说这个新的传输协议是什么,以及实战如何去配置它. 什么是MAPI/HTTP,有什么好处? 以前版本中(Exchange 2010),用的是RPC over HTTP(外部网络outlook anywhere)以及RPC Direct(内部网络)连接,Exchange 2013里,所有的连接都通过Outlook An

「深入 Exchange 2013」07 Autodisocver

微软在Exchange 2007里引入Autodiscover自动发现服务,意图去简化用户配置Outlook与Exchange ActiveSync的过程.Outlook的配置文件虽然可以手动配置,但是从Autodiscover会覆盖手动配置的选项,在你做出一些更改的时候,明显批量的自动下发配置更方便. Autodiscover还负责告诉Outlook当前的邮箱位置信息,Outlook会在与邮箱断开连接之后重新尝试Autodiscover.总而言之,这玩意儿跟Outlook Anywhere一样

「深入 Exchange 2013」14 接收连接器

接收连接器在概念上要比发送连接器简单一点,每个接收连接器只用侦听来自你分配给它的ip地址和端口的请求,然后将SMTP会话传送出去即可.接收连接器使用权限组来决定哪些发送者被允许使用该连接器,权限组则是预先定义好的一系列安全主体对某个对象(当前场景下则是接收连接器)所拥有的权限,比如说是"任何有邮箱账户的用户"即Exchange Users,或者是"组织里的任何Exchange Server"即Exchange Servers.这种模型类似于NTFS权限模型,先把用户

「深入 Exchange 2013」11 传输架构Part1

阅读过TechNet文档的人肯定对下面这张图不陌生,这张图完整诠释了整个Exchange 2013的邮件传输架构,前一章里已经简要讨论过的几个组件都在里头,然而还有一些其他的组件也值得深入讨论.首先咱们来聊聊图里边出现的重要词汇. 1."代理"在这里是指Agents,而非是proxy,即处理或者传输消息的某一块程序代码.图中的agents直接反映出Exchange的Business logic,例如Exchange的反垃圾和恶意软件筛选组件属于协议代理,路由代理.邮件传递代理和邮件提交

「深入 Exchange 2013」03 内部vs外部

这一章我们来讲内部访问与外部访问. CAS是干嘛的,还不就是为了给企业网络里的内部用户,或者是给穿过防火墙连接进来的外部用户提供服务的.一些组织可能对内部和外部用户的访问都不设限制,也有一部分组织限制了外部用户的连接.也就是说,这些部署了Exchange的组织,都有这样一个可以灵活控制内/外访问的需求. 内部vs外部最主要的不同点就是客户端以哪种URL连接,并且用哪种验证方法进行身份验证.在CAS上这些设置是独立于每一种协议的,比方说当前我要查看某前端上OutlookAnyWhere的内部与外部