Переключение smarthosts в Exchange при использовании двойной глобальной сети

Я хотел бы знать, возможно ли настроить Exchange 2003/2007 для переключения между smarthosts на основе используемого в настоящее время соединения WAN.

Пример сценария: у меня есть два WAN-соединения с разными провайдерами. Exchange работает за двойным маршрутизатором WAN. Маршрутизатор настроен на возврат к вторичной глобальной сети в случае сбоя основной глобальной сети. Смарт-хост, установленный в Exchange, является SMTP-сервером основного провайдера. Поскольку набор интеллектуальных хостов в Exchange позволяет только ретрансляцию с IP-адресов основной WAN, отправка почты не будет работать, когда маршрутизатор возвращается к вторичной WAN.

Отправка почты напрямую через DNS MX - это вариант, но у интернет-провайдеров есть динамические IP-адреса, которые часто попадают в черный список.

Заранее спасибо!

4 ответа

Нет ничего встроенного в Exchange 2003 или 2007, чтобы сделать это для вас. Однако Exchange 2007 можно управлять с помощью Powershell, а компонент, который управляет вашим smarthost, является соединителем отправки в Exchange 2007, и вы можете написать скрипт Powershell, который изменяет этот атрибут без особых усилий. То, хотите ли вы, чтобы это каким-то образом запускалось автоматически, или нет, будет определять, насколько сложным это должно быть.

#Adding Exchange Snap In to execute Exchange CmdLets in this script
Add-PSSnapin Microsoft.Exchange.Management.PowerShell.Admin

#Enter an IP to use as the monitor, you may need to put a static entry on your router
$Srvname = "4.2.2.2"
$ping = new-object System.Net.NetworkInformation.Ping

#enter your primary smarthost IP
$primary = "1.1.1.1"

#enter your failover smarthost IP
$failover = "2.2.2.2"

$test = $ping.send($Srvname)

if (!$test)
 {
  Set-SendConnector "INDENTITY OF SEND-CONNECTOR" -SmartHosts $failover
  Write-host "Changed outbound send connector to $failover"
 }
elseif ($test.status -eq "Request timed out.")
 {
  Set-SendConnector "INDENTITY OF SEND-CONNECTOR" -SmartHosts $failover
  Write-host "Changed outbound send connector to $failover"
 }
elseif ($test.status -eq "Success")
 {
  Set-SendConnector "INDENTITY OF SEND-CONNECTOR" -SmartHosts $primary
  Write-host "$primary is up, no changes were made"
 }
Else
 {
  Write-Host "Failed with status..."
  $test.status
 }

Я предполагаю, что вы имеете в виду динамический IP, назначенный вам вашим провайдером. Если это так, это не должно иметь никакого отношения к способности вашего сервера Exchange использовать DNS для выполнения поиска MX для исходящей электронной почты. Ловкий ip от вашего провайдера может привести к тому, что вы попадете в черный список, но это не вызовет проблем на вашем сервере Exchange при поиске записей MX или создании исходящих SMTP-соединений.

Но здесь есть хитрость - вы должны быть в состоянии сделать это на маршрутизаторе. В такой настройке. например, exchange переадресует внутренний IP-адрес маршрутизатора. Оттуда маршрутизатор будет двигаться вперед в зависимости от условий соединения wan.

По крайней мере, с RouterOS, который находится в возможных конфигурациях.

Другие вопросы по тегам