On Sunday, September 21, 2003, 17:34:08, Peter Param wrote:
>>and the HELO command:
>>b. must have a hostname, else reject
>>c. it must be valid characters, else reject
>>e. it must not contain IP address /a.b.c.d/
>
> Is the above covered by RFC or is it just best practise? I'm seeing a
> few of our partner sites using a helo with IP address. I've whitelisted
> them but in doing so have minimised the checks for mail coming from
> them. I like them to clean up their act so any advise as to what I
> should convey to them (in terms of standards) would be greatly
> appreciated!
Looking at RFC 2821 "Simple Mail Transfer Protocol"
2.3.4 Host
For the purposes of this specification, a host is a computer system
attached to the Internet (or, in some cases, to a private TCP/IP
network) and supporting the SMTP protocol. Hosts are known by names
(see "domain"); identifying them by numerical address is discouraged.
2.3.5 Domain
A domain (or domain name) consists of one or more dot-separated
components. These components ("labels" in DNS terminology [22]) are
restricted for SMTP purposes to consist of a sequence of letters,
digits, and hyphens drawn from the ASCII character set [1]. Domain
names are used as names of hosts and of other entities in the domain
name hierarchy. For example, a domain may refer to an alias (label
of a CNAME RR) or the label of Mail eXchanger records to be used to
deliver mail instead of representing a host name. See [22] and
section 5 of this specification.
The domain name, as described in this document and in [22], is the
entire, fully-qualified name (often referred to as an "FQDN"). A
domain name that is not in FQDN form is no more than a local alias.
Local aliases MUST NOT appear in any SMTP transaction.
3.6 Domains
Only resolvable, fully-qualified, domain names (FQDNs) are permitted
when domain names are used in SMTP. In other words, names that can
be resolved to MX RRs or A RRs (as discussed in section 5) are
permitted, as are CNAME RRs whose targets can be resolved, in turn,
to MX or A RRs. Local nicknames or unqualified names MUST NOT be
used. There are two exceptions to the rule requiring FQDNs:
4.1.1.1 Extended HELLO (EHLO) or HELLO (HELO)
These commands are used to identify the SMTP client to the SMTP
server. The argument field contains the fully-qualified domain name
of the SMTP client if one is available. In situations in which the
SMTP client system does not have a meaningful domain name (e.g., when
its address is dynamically allocated and no reverse mapping record is
available), the client SHOULD send an address literal (see section
4.1.3), optionally followed by information that will help to identify
the client system. y The SMTP server identifies itself to the SMTP
client in the connection greeting reply and in the response to this
command.
4.1.2 Command Argument Syntax (several paragraphs in)
To promote interoperability and consistent with long-standing
guidance about conservative use of the DNS in naming and applications
(e.g., see section 2.3.1 of the base DNS document, RFC1035 [22]),
characters outside the set of alphas, digits, and hyphen MUST NOT
appear in domain name labels for SMTP clients or servers. In
particular, the underscore character is not permitted. SMTP servers
that receive a command in which invalid character codes have been
employed, and for which there are no other reasons for rejection,
MUST reject that command with a 501 response.
I'd interpret that to mean if you do have a meaningful domain name (and
who wants to receive mail from a server that doesn't) you should use the
hostname and not an address literal.
That hostname should be fully-qualified and resolvable and the valid
characters for domain name labels (the bits between the dots) can only
be alphas, digits, and hyphen.
--
[EMAIL PROTECTED]
"Hangers on though you be friends be more humble
when asking for seconds."
Katsuhito Masaki (Grandfather); Tenchi Muyo Episode 7