Applies to: Exchange Server 2007 SP1, Exchange Server 2007
Topic Last Modified: 2007-08-27

Use the Set-SendConnector cmdlet to modify a Send connector on a computer that has the Hub Transport server role or the Edge Transport server role installed.

Syntax

Set-SendConnector -Identity <SendConnectorIdParameter> [-AddressSpaces <MultiValuedProperty>] [-AuthenticationCredential <PSCredential>] [-Comment <String>] [-ConnectionInactivityTimeOut <EnhancedTimeSpan>] [-DNSRoutingEnabled <$true | $false>] [-DomainController <Fqdn>] [-DomainSecureEnabled <$true | $false>] [-Enabled <$true | $false>] [-Force <SwitchParameter>] [-ForceHELO <$true | $false>] [-Fqdn <Fqdn>] [-IgnoreSTARTTLS <$true | $false>] [-LinkedReceiveConnector <ReceiveConnectorIdParameter>] [-MaxMessageSize <Unlimited>] [-Name <String>] [-Port <Int32>] [-ProtocolLoggingLevel <None | Verbose>] [-RequireTLS <$true | $false>] [-SmartHostAuthMechanism <None | BasicAuth | BasicAuthRequireTLS | ExchangeServer | ExternalAuthoritative>] [-SmartHosts <MultiValuedProperty>] [-SourceIPAddress <IPAddress>] [-SourceTransportServers <MultiValuedProperty>] [-UseExternalDNSServersEnabled <$true | $false>]
Set-SendConnector [-AddressSpaces <MultiValuedProperty>] [-AuthenticationCredential <PSCredential>] [-Comment <String>] [-ConnectionInactivityTimeOut <EnhancedTimeSpan>] [-DNSRoutingEnabled <$true | $false>] [-DomainController <Fqdn>] [-DomainSecureEnabled <$true | $false>] [-Enabled <$true | $false>] [-Force <SwitchParameter>] [-ForceHELO <$true | $false>] [-Fqdn <Fqdn>] [-IgnoreSTARTTLS <$true | $false>] [-Instance <SmtpSendConnectorConfig>] [-LinkedReceiveConnector <ReceiveConnectorIdParameter>] [-MaxMessageSize <Unlimited>] [-Name <String>] [-Port <Int32>] [-ProtocolLoggingLevel <None | Verbose>] [-RequireTLS <$true | $false>] [-SmartHostAuthMechanism <None | BasicAuth | BasicAuthRequireTLS | ExchangeServer | ExternalAuthoritative>] [-SmartHosts <MultiValuedProperty>] [-SourceIPAddress <IPAddress>] [-SourceTransportServers <MultiValuedProperty>] [-UseExternalDNSServersEnabled <$true | $false>]

Parameters

Parameter Required Type Description

Identity

Required

Microsoft.Exchange.Configuration.Tasks.SendConnectorIdParameter

The Identity parameter specifies the GUID or connector name that represents the Send connector that you want to modify

AddressSpaces

Optional

Microsoft.Exchange.Data.MultiValuedProperty

This parameter is required unless this connector is linked to a Receive connector. If a linked Receive connector is specified by using the LinkedReceiveConnector parameter, the value of AddressSpaces must be $null. Otherwise, the AddressSpaces parameter specifies the domain names to which the Send connector sends messages. You may specify multiple address spaces by separating the address spaces with commas. The complete syntax for entering each address space is as follows:

<ConnectorScope>:<AddressSpaceType>:<AddressSpace>;<AddressSpaceCost>

  • ConnectorScope   If you specify a value of Local, the connector can only be used by other Hub Transport servers that exist in the same Active Directory site as the source Hub Transport server on which you are running the New-SendConnector cmdlet. If you omit the ConnectorScope qualifier, the connector can be used by all Hub Transport servers that exist in the whole Exchange 2007 organization.

  • AddressSpaceType   For SMTP address spaces, this value must be SMTP. For non-SMTP address spaces, this value may be any descriptive text string, such as "Lotus Notes".

  • AddressSpace   For SMTP address spaces, the domain name system (DNS) wildcard character (*) as defined in RFC 1035 can be used. For example, you can use "*", "*.com.", or *.contoso.com". For non-SMTP address spaces, you can use wildcard characters (*) and other characters, such as "*contoso.com" or "@contoso".

  • AddressSpaceCost   The valid input range for the cost is 1 to 100. A lower cost indicates a better route. This parameter is optional. If you omit the AddressSpaceCost qualifier when you enter an address space by using the complete syntax, a cost of 1 is assumed.

You only need to use the complete syntax for the AddressSpaces parameter for the following conditions:

  • Scoped connectors that have the Local qualifier

  • Non-SMTP address spaces

  • SMTP address spaces with a cost other than 1

If you enter a domain name or a comma separated list of domain names for the value of the AddressSpaces parameter, the address space type of SMTP and a cost of 1 is assumed for each domain name. Send connectors that are configured on Edge Transport servers only support SMTP address spaces. Send connectors that are configured on Hub Transport servers support SMTP and non-SMTP address spaces.

AuthenticationCredential

Optional

System.Management.Automation.PSCredential

This parameter requires the creation and passing of a credential object. This credential object is created by using the Get-Credential cmdlet. For more information about the Get-Credential cmdlet, type Get-Help Get-Credential in the Exchange Management Shell.

Comment

Optional

System.String

You must enclose the Comment parameter in double quotation marks, for example: "this is an admin note".

ConnectionInactivityTimeOut

Optional

Microsoft.Exchange.Data.EnhancedTimeSpan

This parameter specifies the maximum time that an idle connection can remain open. The default value is 10 minutes. To specify a value, enter the value as a time span: dd.hh:mm:ss, where d = days, h = hours, m = minutes, and s = seconds. The valid input range for this parameter is 00:00:01 to 1.00:00:00.

DNSRoutingEnabled

Optional

System.Boolean

This parameter specifies whether Domain Name System (DNS) routing should be used, or if all messages should be sent through the smart host that is configured by using the SmartHosts parameter. The default value is $True. If you want to set the value to $False, you must first set a value on the SmartHosts parameter.

DomainController

Optional

Microsoft.Exchange.Data.Fqdn

To specify the fully qualified domain name (FQDN) of the domain controller that writes this configuration change to the Active Directory directory service, include the DomainController parameter on the command. The DomainController parameter is not supported on computers that run the Edge Transport server role. The Edge Transport server role reads and writes only to the local ADAM instance.

DomainSecureEnabled

Optional

System.Boolean

This parameter is part of the process to enable mutual Transport Layer Security (TLS) authentication for the domains that are serviced by this Send connector. Mutual TLS authentication will function correctly only when the following conditions are met:

  • The value of the DomainSecureEnabled parameter must be $True.

  • The value of the DNSRoutingEnabled parameter must be $True.

  • The value of the IgnoreStartTLS parameter must be $False.

The wildcard character (*) is not supported in domains that are configured for mutual TLS authentication. The same domain must also be defined on the corresponding Receive connector, and in the value of the TLSReceiveDomainSecureList parameter in the Get-TransportConfig cmdlet.

The default value for DomainSecureEnabled is $False for the following types of Send Connectors:

  • All Send connectors that are defined on a Hub Transport Server.

  • User-created Send connectors that are defined on an Edge Transport server.

The default value for DomainSecureEnabled is $True for the following types of Send Connectors:

  • Default Send connectors that are defined on an Edge Transport server.

Enabled

Optional

System.Boolean

Valid input for this parameter is $True or $False. The default value is $True. Use the Enabled parameter to enable or disable the ability for the connector to process e-mail messages.

Force

Optional

System.Management.Automation.SwitchParameter

This parameter suppresses the warning or confirmation messages that appear during specific configuration changes.

ForceHELO

Optional

System.Boolean

Valid input for this parameter is $True or $False. The default value is $False. By default, EHLO is used. If this parameter is set to $True, HELO is sent instead of EHLO.

Fqdn

Optional

Microsoft.Exchange.Data.Fqdn

This parameter specifies the FQDN that is used as the source server for connected messaging servers that use the Send connector to receive outgoing messages. The value of this parameter is displayed to connected messaging servers whenever a source server name is required, as in the following examples:

  • In the EHLO/HELO command when the Send connector communicates with the next hop messaging server

  • In the most recent Received: header field of the message that is added to the message by the next hop messaging server after the message leaves the Hub Transport server or Edge Transport server

  • During TLS authentication

The default value of the Fqdn parameter is $Null. This means the actual default FQDN value is the FQDN of the Hub Transport server or Edge Transport server that contains the Send connector.

Note:
If the Send connector is configured on a Hub Transport server that also has the Mailbox server role installed, any value that you specify for the Fqdn parameter is not used. Instead, the FQDN of the server that is displayed by using the Get-ExchangeServer cmdlet is always used.

For servers that have both the Hub Transport server role and the Mailbox server role installed, the only way to remove the server name from the Received: headers of the outgoing message is to use the Remove-ADPermission cmdlet to remove the Ms-Exch-Send-Headers-Routing permission from the security principals that use the connector. This action will remove all the Received: headers from the message as the message leaves the Hub Transport server. We recommend that you don't remove the Received: headers for internal messages, because the Received: headers are used for maximum hop count calculations. For more information about the Remove-ADPermission cmdlet and the Get-ExchangeServer cmdlet, see the following topics:

Remove-ADPermission (RTM)

Get-ExchangeServer (RTM)

IgnoreSTARTTLS

Optional

System.Boolean

Valid input for this parameter is $True or $False. This parameter specifies whether to ignore the StartTLS option that is offered by a remote sending server. This parameter is used with remote domains. This parameter must be set to $False if the RequireTLS parameter is set to $True.By default, a Send connector with the value of the DNSRoutingEnabled parameter set to $True also has the value of the IgnoreStartTLS parameter set to $False. This means that the Send connector will always negotiate TLS if TLS is offered by the receiving server. If you set the value of the IgnoreStartTLS parameter to $True, the Send connector never tries to negotiate TLS with the receiving server.

Instance

Optional

Microsoft.Exchange.Data.Directory.SystemConfiguration.SmtpSendConnectorConfig

This parameter enables you to pass an entire object to the command to be processed. It is mainly used in scripts where an entire object must be passed to the command.

LinkedReceiveConnector

Optional

Microsoft.Exchange.Configuration.Tasks.ReceiveConnectorIdParameter

This parameter forces all messages that are received by the specified Receive connector out through this Send connector. The value of LinkedReceivedConnector can use any of the following identifiers to specify the Receive connector:

  • GUID

  • Distinguished name (DN)

  • Servername\ConnectorName

When you use the LinkReceiveConnector parameter with the Set-SendConnector cmdlet, you must also use the following parameters with the specified values:

  • AddressSpaces $null

  • DNSRoutingEnabled $False

  • MaxMessageSize unlimited

  • Smarthosts <SmarthostID>

  • SmarthostAuthMechanism <AuthMechanism>

MaxMessageSize

Optional

Microsoft.Exchange.Data.Unlimited

This parameter specifies the maximum size of a message that can pass through a connector. The default value is 10MB. When you enter a value, qualify the value with one of the following units:

  • B (bytes)

  • KB (kilobytes)

  • MB (megabytes)

  • GB (gigabytes)

Unqualified values are treated as bytes. The valid input range for this parameter is 0 to 2147483647 bytes. To remove the message size limit on a Send connector, enter a value of unlimited.

Name

Optional

System.String

The Name parameter is the administrator-supplied name of the connector. You must enclose the Name parameter in double quotation marks if the name contains spaces, as follows, for example: "New Send Connector".

Port

Optional

System.Int32

The valid input range for this parameter is an integer between 0 and 65535. The default value is 25. If you specify a value in the SmartHosts parameter, the Port value specifies the port number that is used for smart host forwarding. In most organizations, the port number is set to 25.

ProtocolLoggingLevel

Optional

Microsoft.Exchange.Data.ProtocolLoggingLevel

This parameter enables or disables protocol logging for the specified Send connector. A value of Verbose enables protocol logging for the connector. A value of None disables protocol logging for the connector. The default value is None. The location of the Send connector protocol logs for all Send connectors that are configured on a Hub Transport server or an Edge Transport server files is specified by using the SendProtocolLogPath parameter of the Set-TransportServer command.

RequireTLS

Optional

System.Boolean

This parameter specifies whether all messages that are sent through this connector must be transmitted by using TLS. The default value is $False.

SmartHostAuthMechanism

Optional

Microsoft.Exchange.Data.Directory.SystemConfiguration.SmtpSendConnectorConfig+AuthMechanisms

This parameter is used during authentication with a remote server. This parameter is used only when a smart host is configured and the DNSRoutingEnabled parameter is set to $False. Valid values are None, BasicAuth, BasicAuthRequireTLS, ExchangeServer, or ExternalAuthoritative. All values are mutually exclusive. If you select BasicAuth or BasicAuthRequireTLS, you must use the AuthenticationCredential parameter to specify the authentication credential.

SmartHosts

Optional

Microsoft.Exchange.Data.MultiValuedProperty

This parameter takes one or more FQDNs, such as server.contoso.com, or one or more IP addresses, separated by commas. If you enter an IP address, you must enter the IP address as a literal as follows, for example: 10.10.1.1. The smart host identity can be the FQDN of a smart host server, a mail exchange (MX) record, or an address (A) record. If you configure an FQDN as the smart host identity, the source server for the Send connector must be able to use DNS name resolution to locate the smart host server.

SourceIPAddress

Optional

System.Net.IPAddress

This parameter specifies the local IP address to use as the endpoint for an SMTP connection to a remote messaging server. The default IP address is 0.0.0.0. This value tells the server to use any available local IP address. This parameter is only valid for Send connectors that are configured on Edge Transport servers.

SourceTransportServers

Optional

Microsoft.Exchange.Data.MultiValuedProperty

This parameter specifies the names of the Hub Transport servers that can use this Send connector. You can specify the names of more than one Hub Transport server by separating the names with commas. This parameter is not valid for Send connectors that are configured on Edge Transport servers.

UseExternalDNSServersEnabled

Optional

System.Boolean

This parameter specifies whether this Send connector should use the external DNS list that is specified by using the ExternalDNSServers parameter of the Set-TransportServer cmdlet. The default value is $False. The valid values of this parameter are $True and $False.

Detailed Description

The Set-SendConnector cmdlet modifies an existing Send connector. The Name parameter is required when you run the Set-SendConnector cmdlet. The Identity parameter is required only when you modify the Name parameter value.

After this task is completed, the Send connector is modified.

To run the Set-SendConnector cmdlet, the account you use must be delegated the Exchange Server Administrator role and local Administrators group for the target server.

To run the Set-SendConnector cmdlet on a computer that has the Edge Transport server role installed, you must log on by using an account that is a member of the local Administrators group on that computer.

For more information about permissions, delegating roles, and the rights that are required to administer Microsoft Exchange Server 2007, see Permission Considerations.

Input Types

Return Types

Errors

Error Description

 

 

Example

The first code sample shows a Set-SendConnector command that modifies an existing Send connector. The command sets the MaxMessageSize limit to 10 MB and the ConnectionInactivityTimeOut to 15 minutes.

The second example shows the commands that modify an existing Send connector to use authentication when the Send connector sends an e-mail message to Contoso.com. The Contoso.com e-mail server requires that the local Exchange Server 2007 server authenticate with it to submit e-mail messages. To configure the Send connector to use authentication, you must first run the Get-Credential command and assign the command to a variable. When you run the Get-Credential command, the command asks for the user name and password of the account that will be used during authentication with the Contoso.com e-mail server.

In the example, the Get-Credential command is assigned to the $CredentialObject variable. After the authentication credentials are assigned to the $CredentialObject variable, the Send connector can be modified by using the Set-SendConnector cmdlet. The $CredentialObject variable is passed to the AuthenticationCredential parameter. In addition to setting the credentials that will be used, you must set the SmartHostAuthMechanism parameter to BasicAuth to instruct the Send connector to authenticate with the Contoso.com e-mail server by using the supplied credentials.

Copy Code
Set-SendConnector "Contoso.com Send Connector" -MaxMessageSize 10MB -ConnectionInactivityTimeOut 00:15:00 
$CredentialObject = Get-Credential
Set-SendConnector "E-Mail to Contoso.com" -AuthenticationCredential $CredentialObject -SmartHostAuthMechanism BasicAuth