locked
SMTP Mail Flow and Telnet is not working RRS feed

  • Question

  • Hello,

    We currently have an Exchange 2010 environment with three CAS/HT servers. We just relized that two of the three appear to not be processing SMTP mail properly. Upon further investigation, we are unable to telnet to these servers from a workstation over port 25.

    Error Message:
    H:\>telnet DRexcas01 25
    Connecting To excas01...Could not open connection to the host, on port 25: Connect failed

    Does anyone have some suggestions on where I can start looking? All of the services are running just fine.

    ##################################################################

    From the Application Log:

    Log Name:      Application
    Source:        MSExchange Common
    Date:          9/28/2012 5:42:27 PM
    Event ID:      4999
    Task Category: General
    Level:         Error
    Keywords:      Classic
    User:          N/A
    Computer:      DREXCAS01.lawfirm.local
    Description:
    Watson report about to be sent for process id: 3320, with parameters: E12, c-RTL-AMD64, 14.02.0283.003, edgetransport, M.Exchange.Transport, M.E.P.S.SmtpInSession.get_Capabilities, System.InvalidOperationException, e4dd, 14.02.0283.003.
    ErrorReportingEnabled: False
    Event Xml:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="MSExchange Common" />
        <EventID Qualifiers="16388">4999</EventID>
        <Level>2</Level>
        <Task>1</Task>
        <Keywords>0x80000000000000</Keywords>
        <TimeCreated SystemTime="2012-09-28T21:42:27.000000000Z" />
        <EventRecordID>100018</EventRecordID>
        <Channel>Application</Channel>
        <Computer>DREXCAS01.lawfirm.local</Computer>
        <Security />
      </System>
      <EventData>
        <Data>3320</Data>
        <Data>E12</Data>
        <Data>c-RTL-AMD64</Data>
        <Data>14.02.0283.003</Data>
        <Data>edgetransport</Data>
        <Data>M.Exchange.Transport</Data>
        <Data>M.E.P.S.SmtpInSession.get_Capabilities</Data>
        <Data>System.InvalidOperationException</Data>
        <Data>e4dd</Data>
        <Data>14.02.0283.003</Data>
        <Data>False</Data>
        <Data>
        </Data>
      </EventData>
    </Event>

    Log Name:      Application
    Source:        MSExchangeTransport
    Date:          9/28/2012 5:42:27 PM
    Event ID:      10003
    Task Category: PoisonMessage
    Level:         Error
    Keywords:      Classic
    User:          N/A
    Computer:      DREXCAS01.lawfirm.local
    Description:
    The transport process failed during message processing with the following call stack: System.InvalidOperationException: Capabilities property is accessed in STARTTLS mode before DetermineTlsDomainCapabilities() is invoked
       at Microsoft.Exchange.Protocols.Smtp.SmtpInSession.get_Capabilities()
       at Microsoft.Exchange.Protocols.Smtp.BaseDataSmtpCommand.SetOorg()
       at Microsoft.Exchange.Protocols.Smtp.BaseDataSmtpCommand.ParserEndOfHeadersCallback(MimePart part, Boolean& stopLoading)
       at Microsoft.Exchange.Data.Mime.MimeDocument.EndPartHeaders()
       at Microsoft.Exchange.Data.Mime.MimeDocument.BuildDom(Byte[] buffer, Int32 offset, Int32 length, Boolean eof, Boolean parseHeaders)
       at Microsoft.Exchange.Data.Mime.MimeDocument.Write(Byte[] buffer, Int32 offset, Int32 count)
       at Microsoft.Exchange.Data.Mime.MimeDocument.PushStream.Write(Byte[] buffer, Int32 offset, Int32 count)
       at Microsoft.Exchange.Protocols.Smtp.SmtpInParser.Write(Byte[] data, Int32 offset, Int32 count)
       at Microsoft.Exchange.Protocols.Smtp.SmtpInDataParser.ParseAndWrite(Byte[] data, Int32 offset, Int32 numBytes, Int32& numBytesConsumed)
       at Microsoft.Exchange.Protocols.Smtp.BaseDataSmtpCommand.RawDataReceived(Byte[] data, Int32 offset, Int32 numBytes)
       at Microsoft.Exchange.Protocols.Smtp.SmtpInSession.ReadComplete(IAsyncResult asyncResult)
       at Microsoft.Exchange.Net.LazyAsyncResult.Complete(IntPtr userToken)
       at Microsoft.Exchange.Net.NetworkConnection.InvokeRecvCallback(LazyAsyncResultWithTimeout asyncResult, Object result)
       at Microsoft.Exchange.Net.NetworkConnection.ReadDataAvailable(IAsyncResult asyncResult)
       at System.Net.LazyAsyncResult.Complete(IntPtr userToken)
       at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       at System.Net.ContextAwareResult.Complete(IntPtr userToken)
       at System.Net.LazyAsyncResult.ProtectedInvokeCallback(Object result, IntPtr userToken)
       at System.Net.Sockets.BaseOverlappedAsyncResult.CompletionPortCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* nativeOverlapped)
       at System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)
    Event Xml:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="MSExchangeTransport" />
        <EventID Qualifiers="49156">10003</EventID>
        <Level>2</Level>
        <Task>10</Task>
        <Keywords>0x80000000000000</Keywords>
        <TimeCreated SystemTime="2012-09-28T21:42:27.000000000Z" />
        <EventRecordID>100017</EventRecordID>
        <Channel>Application</Channel>
        <Computer>DREXCAS01.lawfirm.local</Computer>
        <Security />
      </System>
      <EventData>
        <Data>System.InvalidOperationException: Capabilities property is accessed in STARTTLS mode before DetermineTlsDomainCapabilities() is invoked
       at Microsoft.Exchange.Protocols.Smtp.SmtpInSession.get_Capabilities()
       at Microsoft.Exchange.Protocols.Smtp.BaseDataSmtpCommand.SetOorg()
       at Microsoft.Exchange.Protocols.Smtp.BaseDataSmtpCommand.ParserEndOfHeadersCallback(MimePart part, Boolean&amp; stopLoading)
       at Microsoft.Exchange.Data.Mime.MimeDocument.EndPartHeaders()
       at Microsoft.Exchange.Data.Mime.MimeDocument.BuildDom(Byte[] buffer, Int32 offset, Int32 length, Boolean eof, Boolean parseHeaders)
       at Microsoft.Exchange.Data.Mime.MimeDocument.Write(Byte[] buffer, Int32 offset, Int32 count)
       at Microsoft.Exchange.Data.Mime.MimeDocument.PushStream.Write(Byte[] buffer, Int32 offset, Int32 count)
       at Microsoft.Exchange.Protocols.Smtp.SmtpInParser.Write(Byte[] data, Int32 offset, Int32 count)
       at Microsoft.Exchange.Protocols.Smtp.SmtpInDataParser.ParseAndWrite(Byte[] data, Int32 offset, Int32 numBytes, Int32&amp; numBytesConsumed)
       at Microsoft.Exchange.Protocols.Smtp.BaseDataSmtpCommand.RawDataReceived(Byte[] data, Int32 offset, Int32 numBytes)
       at Microsoft.Exchange.Protocols.Smtp.SmtpInSession.ReadComplete(IAsyncResult asyncResult)
       at Microsoft.Exchange.Net.LazyAsyncResult.Complete(IntPtr userToken)
       at Microsoft.Exchange.Net.NetworkConnection.InvokeRecvCallback(LazyAsyncResultWithTimeout asyncResult, Object result)
       at Microsoft.Exchange.Net.NetworkConnection.ReadDataAvailable(IAsyncResult asyncResult)
       at System.Net.LazyAsyncResult.Complete(IntPtr userToken)
       at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       at System.Net.ContextAwareResult.Complete(IntPtr userToken)
       at System.Net.LazyAsyncResult.ProtectedInvokeCallback(Object result, IntPtr userToken)
       at System.Net.Sockets.BaseOverlappedAsyncResult.CompletionPortCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* nativeOverlapped)
       at System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)</Data>
      </EventData>
    </Event>


    Jason

    Friday, September 28, 2012 10:06 PM

Answers

  • You dont really need to suspend replication, just the automatic activation of the stores on the server you are upgrading.

    The only time its really necessary IMO to suspend log replication is if you are replacing the storage, or for perhaps troubleshooting some particular issue. Let the script do what it does and you will be good. But you can of course suspend log replication if you want, but not required when doing upgrades.

    For the other question, why do want the servers in the DAG to be at different levels? How long do you plan to leave them that way?

    • Proposed as answer by Castinlu Monday, October 1, 2012 8:41 AM
    • Marked as answer by Castinlu Friday, October 5, 2012 1:41 AM
    Saturday, September 29, 2012 8:04 PM
  • Hello,

    I installed update rollup 4 for Exchange 2010 SP2 over the weekend and I think this has resolved my issue. I will apply the updates to the main Exchange servers this evening.


    Jason

    Friday, October 5, 2012 1:24 PM

All replies

  • Hi Jason,

    Mostly, this is a firewall issue. Allow the port 25 through firewall (test by temporarily disabling the firewall also) and test again


    Regards from ExchangeOnline | Windows Administrator's forums

    Saturday, September 29, 2012 2:21 AM
  • Hello ManU,

    When you say firewall, do you mean on Windows or the organization's firewall? Also, do you think this error message may not be the issue below?

    Log Name:      Application
    Source:        MSExchange Common
    Date:          9/29/2012 7:54:03 AM
    Event ID:      4999
    Task Category: General
    Level:         Error
    Keywords:      Classic
    User:          N/A
    Computer:      DREXCAS01.lawfirm.local
    Description:
    Watson report about to be sent for process id: 3124, with parameters: E12, c-RTL-AMD64, 14.02.0283.003, edgetransport, M.Exchange.Transport, M.E.P.S.SmtpInSession.get_Capabilities, System.InvalidOperationException, e4dd, 14.02.0283.003.
    ErrorReportingEnabled: False
    Event Xml:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="MSExchange Common" />
        <EventID Qualifiers="16388">4999</EventID>
        <Level>2</Level>
        <Task>1</Task>
        <Keywords>0x80000000000000</Keywords>
        <TimeCreated SystemTime="2012-09-29T11:54:03.000000000Z" />
        <EventRecordID>108546</EventRecordID>
        <Channel>Application</Channel>
        <Computer>DREXCAS01.lawfirm.local</Computer>
        <Security />
      </System>
      <EventData>
        <Data>3124</Data>
        <Data>E12</Data>
        <Data>c-RTL-AMD64</Data>
        <Data>14.02.0283.003</Data>
        <Data>edgetransport</Data>
        <Data>M.Exchange.Transport</Data>
        <Data>M.E.P.S.SmtpInSession.get_Capabilities</Data>
        <Data>System.InvalidOperationException</Data>
        <Data>e4dd</Data>
        <Data>14.02.0283.003</Data>
        <Data>False</Data>
        <Data>
        </Data>
      </EventData>
    </Event>


    Jason

    Saturday, September 29, 2012 11:57 AM
  • Microsoft is recommending the installation of RU1 to resolve the problem but we already have this installed. I was thinking of installing update RU4 since it addresses some edgetransport.exe service crashes. I do have a few questions.

    We currently operate in a DAG. Two mailbox servers in our primary location and one mailbox server in the DR. I want to install the update RU4 on the DR servers first. Is there anything special I need to do to the DAG before starting the process? Should I stop the DAG replication to the mailbox server? Does update RU4 include the updates from RU2 and RU3? Thanks


    Jason

    Saturday, September 29, 2012 12:27 PM
    • Proposed as answer by Castinlu Monday, October 1, 2012 8:40 AM
    • Marked as answer by Castinlu Friday, October 5, 2012 1:41 AM
    • Unmarked as answer by Jason B. Williams Thursday, October 18, 2012 7:27 PM
    Saturday, September 29, 2012 12:42 PM
  • Ok... answered another one of my questions but this issue is odd. I see now that I should place the DAG into maintenance mode.

    http://blogs.technet.com/b/mbaher/archive/2010/09/13/installing-update-rollups-on-database-availability-group-members.aspx

    I run the script (StartDagServerMaintenance.ps1 ) but it actually never pauses any of my database replications. It does place the DatabaseCopyAutoActivationPolicy to a blocked state. I have to go in and pause the databases manually.

    One last question. I know it is not advised but is it ok to have the DAG in the primary location and DR location operate on two different Exchange Versions?

    Primary Location (2 CAS/HT and 2 MBX) - Exchange 2010 SP2 with update RU1
    Secondary Location (1 CAS/HT and 1 MBX) - Exchange 2010 SP2 with update RU4


    Jason

    Saturday, September 29, 2012 7:28 PM
  • You dont really need to suspend replication, just the automatic activation of the stores on the server you are upgrading.

    The only time its really necessary IMO to suspend log replication is if you are replacing the storage, or for perhaps troubleshooting some particular issue. Let the script do what it does and you will be good. But you can of course suspend log replication if you want, but not required when doing upgrades.

    For the other question, why do want the servers in the DAG to be at different levels? How long do you plan to leave them that way?

    • Proposed as answer by Castinlu Monday, October 1, 2012 8:41 AM
    • Marked as answer by Castinlu Friday, October 5, 2012 1:41 AM
    Saturday, September 29, 2012 8:04 PM
  • Andy,

    Thank you very much for the information. We typically like to apply patches during our maintenance window but this SMTP mail flow issue has us in a bit of a bind. I really need to apply the update RU4 to the CAS/HT servers in hoping to resolve the issue. Could I just apply to the CAS/HT servers and wait until our maintenance window on October 13th to apply to the mailbox servers? Thanks


    Jason

    Saturday, September 29, 2012 9:32 PM
  • Andy,

    Thank you very much for the information. We typically like to apply patches during our maintenance window but this SMTP mail flow issue has us in a bit of a bind. I really need to apply the update RU4 to the CAS/HT servers in hoping to resolve the issue. Could I just apply to the CAS/HT servers and wait until our maintenance window on October 13th to apply to the mailbox servers? Thanks


    Jason


    Oh sure. You can do that. That will be fine.
    Saturday, September 29, 2012 9:51 PM
  • Hello,

    I installed update rollup 4 for Exchange 2010 SP2 over the weekend and I think this has resolved my issue. I will apply the updates to the main Exchange servers this evening.


    Jason

    Friday, October 5, 2012 1:24 PM