首先,让我们从一张照片来说明我的问题。

自然,出于安全原因,IP地址已经被混淆了。
我在ISA Server 2004后面有一个内部局域网192.168.1.x。在这个networking上驻留了许多固定的工作站,一个POP3邮件服务器(不是Exchange)和一个支持移动客户端的WAP。 所有设备都由DHCP服务(尽pipe在适用的情况下保留了地址)。
在互联网上,我有一个ADSL连接的路由器,有一系列的公共IP地址。 路由器的WAN端口的IP地址为123.0.0.241,LAN端口为123.0.0.246。
在这两者之间,我有两个网卡的ISA Server 2004。 第一个连接到路由器,并具有公共IP地址123.0.0.242。 路由器被configuration为路由stream量,而不是使用NAT。 ISA Server在其123.0.0.242公共IP地址上发布POP3邮件服务器。
问题是这个…
当移动设备在现场时,连接到WAP,它们属于192.168.1.x子网,并直接连接到邮件服务器,而不会打扰ISA Server。
但是,在离开现场时,他们现在必须通过123.0.0.242上的ISA Server访问POP3服务器。
我想要的是无论在现场还是非现场的移动设备的单一configuration。
如果我使用ISA Server(123.0.0.242)的公用IP进行configuration,则它们在现场时无法联系邮件服务器,因为IP位于ISA Server的错误端。
很明显,如果我使用邮件服务器的私有IP进行configuration,则它们在离线时不能访问它。
我尝试了一种拆分DNS方法,其中邮件服务器的FQDN在站点parsing为192.168.1.2,在站点parsing为123.0.0.242。 麻烦的是,DNS TTL太长,所以我必须等待设备刷新IP地址的永恒。 面向Internet的DNS服务器不是我的,我无法控制TTL。
我已经尝试将邮件服务器的FQDN与公有和私有IP地址相关联,依靠DNS客户端的循环故障转移来最终select正确的IP地址。 除了在别人的networking上使用私有IP地址是一个非常糟糕的主意之外,有些设备似乎不愿意在从站点移动到站点之外时故障切换到备用地址,反之亦然。
我无法将公共IP地址绑定到ISA Server上的内部和外部适配器,因为ISA Server非常抱怨(我不能说我责怪它)。
所以,我很难过 我想要的是内部和外部客户端都能够使用公共IP地址访问邮件服务器。 我有一些备用的地址,所以我可以使用另一个,如果有帮助的话。
但我不知道下一步该去哪里。 任何build议将非常感激地收到!
拆分DNS应该是可行的。
我认为当切换无线networking时,系统的本地DNScaching会重置..但是现在我想到了,我以前没有尝试过(我找不到任何文档)。
如果是操作系统caching,则很容易克服:
HKLM\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters\MaxCacheTtl
时间在几秒钟之内,所以把它调整到几分钟。 对局域网上的DNS服务器更频繁的查询从不会伤害任何人。
但是,我怀疑这不是问题。 我会怀疑邮件客户端应用程序是保留旧的主机parsing数据的罪魁祸首..这使事情变得更加困难。 取决于您的邮件应用程序,但是,最坏的情况下,如果用户不会从不再连接的networking中丢弃数据,则可能需要重新启动客户端应用程序。
最后,强制性安全提示:
如果您使用的是香草端口110 POP3,没有SSL组件连接,这是一件坏事; 在公共的无线networking上它变得非常非常糟糕。 POP3是一个明文协议; 所有的authentication数据和所有的邮件都是明文forms的,并且可以在同一个wifinetworking上使用。
如果您在使用POP3而没有encryption的情况下卡住了,那么将这个体系结构从窗口中移出并使用远程访问VPN。