Skip to main content

Appendix C. Source Routes

Note: Source routing is deprecated and should not be used in modern SMTP implementations.

Historical Context

Source routing allowed senders to specify the explicit path through intermediate hosts:

Deprecated Syntax:

MAIL FROM:`<@host1.example,@host2.example:[email protected]>`

This meant: "Route through host1.example, then host2.example, finally to [email protected]"

Why Source Routing Was Deprecated

  1. Security Risks:

    • Bypassed security controls
    • Enabled spam and abuse
    • Obscured message origin
  2. Complexity:

    • Difficult to implement correctly
    • Caused routing loops
    • Hard to debug
  3. Obsolete:

    • DNS MX records provide better routing
    • Not needed with modern infrastructure
    • Rarely used since 1990s

Current Recommendation

Do NOT implement source routing. Modern SMTP should:

  • Use DNS MX records for routing
  • Reject source-routed addresses
  • Return error 550 or 555 if source routes attempted

Example of Rejection

C: MAIL FROM:`<@relay.example:[email protected]>`
S: 550 5.5.0 Source routing not supported

Migration Path

Old source-routed addresses should be converted to standard format:

❌ Old: @relay1.example,@relay2.example:[email protected]
✅ New: [email protected]