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:user@host3.example>`
This meant: "Route through host1.example, then host2.example, finally to user@host3.example"
Why Source Routing Was Deprecated
-
Security Risks:
- Bypassed security controls
- Enabled spam and abuse
- Obscured message origin
-
Complexity:
- Difficult to implement correctly
- Caused routing loops
- Hard to debug
-
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:user@dest.example>`
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:user@dest.example
✅ New: user@dest.example