[26609] in North American Network Operators' Group

home help back first fref pref prev next nref lref last post

Selection of Appropriate Local SMTP Relay

daemon@ATHENA.MIT.EDU (Joe Abley)
Mon Jan 10 03:57:53 2000

Date: Mon, 10 Jan 2000 21:56:00 +1300
From: Joe Abley <jabley@patho.gen.nz>
To: nanog@merit.edu
Message-ID: <20000110215558.A13264@patho.gen.nz>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Errors-To: owner-nanog-outgoing@merit.edu


Hi,

This occurred to me a long time ago -- as I'm sure it has occured
to other people. However, I've never seen any mention of it, so perhaps
it's time I told someone about it.


Selection of Appropriate Local SMTP relAy (SALSA :)

Background

  When ISP customers dial into their home ISP infrastructure, they are
  usually provided with a designated SMTP relay host which will relay
  mail for them. These same relay hosts will usually refuse attempts to
  relay from non-customers, in an attempt to cut down on the amount of
  indescriminate, untargeted commercial garbage-by-email that we all
  enjoy on a daily basis.

  The SMTP relay host used by ISP customers is usually statically
  configured into customers' mail client software, often by a setup
  disk or CD provided by the ISP.

  An ISP's customers will often have reason to connect to the internet
  by other means than connecting to their ISP -- for example, they might
  roam using iPass or GRIC, or plug in their laptop in a temporary office.
  In this case, their mailer will probably not be able to relay mail
  through the configured SMTP relay host, since the ISP cannot be sure
  that they are a genuine customer, as opposed to relay-exploiting scum.

Common Approach

  The normal approach to this seems to be to provide some means for the
  customer to authenticate themselves to the ISP while they are away.
  Common methods are a web form for password entry, or auth by POP3 from
  the same address before attempting to relay (POP before SMTP), or the
  SMTP AUTH option, as and when it becomes more widely deployed.

  This approach works, but is slightly sub-optimal in some ways:

  1. It often needs to be retrofitted to existing ISP mail infrastructure.

  2. It requires customer education, and sometimes customers find it hard
     to learn.

  3. It makes helpdesk phones ring.

  4. The home ISP mail relay is sometimes a bad choice of relay,
     topology-speaking -- if I happen to be in Prague, dialled in to
     a local iPass partner and authenticating to CLEAR Net (which is
     in New Zealand), sending mail to (say) Canada via a NZ SMTP
     relay is not necessarily going to be very efficient.

  5. It makes helpdesk phones ring.

Alternative Approach

  An alternative is to provide a method for a mail client to discover a
  suitable local smart relay in some dynamic fashion. This requires some
  ubiquitous, global, standard database which every operator uses...
  ... like the DNS.

  It should be possible to find a suitable local relay from any point
  on the network using DNS lookups for (say) MX records under
  IN-ADDR.ARPA. If I am dialling into the ghost of Hookup Communications
  in Toronto using iPass again to authenticate with my home ISP username
  and password:

  + I get allocated the address 165.154.15.1 during PPP/IPCP, which
    connects me to a terminal server in Toronto (well, Oakville);

  + I also get allocated some local nameservers to use, in the usual
    fashion (although I can probably continue to use my normal NZ
    nameservers if I want; access controls on recursive lookups don't
    seem to be all that common these days);

  + I attempt to send some mail;

  + My feature-rich mail client looks for the following MX records:

      1.15.154.165.in-addr.arpa.   (which in this example does not exist)

      15.154.165.in-addr.arpa.     (which doesn't exist either)

      165.165.in-addr.arpa.        MX 10 noc.tor.hookup.net.
                                   MX 20 vertex.tor.hookup.net.

  + The mail client first attempts delivery via noc.tor.hookup.net, then
    vertex.tor.hookup.net, and if all fails (or no MX records were found)
    it uses the statically-configured SMTP relay, smtp.clear.net.nz.

  It's fairly likely that at least one of noc.tor and vertex.tor
  will be alive and functioning correctly as relays at any time, so
  the chances are I will never need to use any inconvenient
  out-of-protocol authentication to CLEAR Net to register myself as
  a roaming user, and hence to gain SMTP relay privileges on
  smtp.clear.net.nz.

Advantages

  1. You don't need to hook user authentication into your existing MTA.

  2. You already support IN-ADDR.ARPA zones -- so to support this all you
    need to do is add probably one or two MX records per zone.

  3. Mail clients need to do DNS lookups anyway, to resolve an address for
    a statically-configured SMTP relay. This just adds (potentially) three
    more.

  4. Mail clients that don't support this don't behave any worse than
     they normally would with the in-addr.arpa MX records present, so
     it doesn't do any _harm._


Comments welcome :)


Joe


home help back first fref pref prev next nref lref last post