My best practice is to create dedicated receive connectors
in Exchange for each receive purpose. For
example, I'll create one receive connector for inbound SMTP email from the Internet
or from inbound gateway servers and another for internal application
servers that relay email though Exchange. Each connector has different
properties, such as source networks, authentication and permission group
settings. By doing this you have better
control over these connectors and can apply different behaviors, such as
throttling settings. It also allows you
to disable individual connectors if necessary without affecting other SMTP
traffic.
Since receive connectors are server-specific, you will
probably create the same connectors on most or all of your hub transport
servers. When you have a number of
receive connectors spread across several hub transports, it’s useful to know
which server and receive connector is accepting the traffic. I do this by configuring the banner property
of each receive connector to match the connector name and enable verbose
logging.
The SMTP banner property specifies the string that Exchange answers
with on SMTP connections to the specific connector. By default, Exchange answers with the FQDN of
the server, the Microsoft ESMTP MAIL service string, and the date and time,
like this:
Default SMTP banner |
I wrote a two-line script that configures each receive
connector to reply with the server and connector name, like this:
New SMTP banner showing server name and connector name |
Run the following script from EMS to change the receive
connector SMTP banners to match the server\connector name:
$rc = Get-ReceiveConnector
$rc | % {Set-ReceiveConnector $_.Identity -ProtocolLoggingLevel Verbose -Banner "220 $_"}
This script will configure the SMTP banner for all of the receive
connectors in the organization. It also
enables verbose logging for each connector, which creates receive connector log
files in C:\Program
Files\Microsoft\Exchange Server\V14\TransportRoles\Logs\ProtocolLog\SmtpReceive. These log files are useful to see how your receive
connectors are operating. They also show
the connector name for each connection.
As you can see above, the SMTP Receive log is taking
connections using the HUB01\Default
and HUB01\Internal Relay receive
connectors.
That's fantastic! What a great use for SMTP banners! Why has no-one thought of it before?
ReplyDeleteBrilliant!
ReplyDeleteThanks Jeff.. Awesome! Never thought about creating multiple smtp banners.. makes perfect sense!
ReplyDeleteI cant run script I get an error below in EMS
ReplyDeleteThe term 'Get-ReceiveConnector$rc' is not recognized as the name of a cmdlet,
Am I doing something wrong
Looks like Blogger messed up the formatting on my script. I fixed it, so please try again.
DeleteJeff, I have a similar configuration with one receive connector per device needing to relay. Much easier to manage.
ReplyDeleteMy question is: does multiple receive connectors affect mail flow performances?
No, multiple receive connectors have no bearing on performance.
Delete