Steve, Having had a night's sleep and a clear look at what you wrote, I (think) that I understand what you are getting at. I just don't understand why my system behaves the way it does. I've eliminated the things that you suggested. I removed the virtusertable entries. There is nothing going outside of the system in aliases. When I run #sendmail -bt -d0,1 < /dev/null I get corresponding output to yours.... Version 8.11.6 Compiled with: LDAPMAP MAP_REGEX LOG MATCHGECOS MIME7TO8 MIME8TO7 NAMED_BIND NETINET NETINET6 NETUNIX NEWDB NIS QUEUE SASL SCANF SMTP TCPWRAPPERS USERDB ============ SYSTEM IDENTITY (after readcf) ============ (short domain name) $w = neidorff (canonical domain name) $j = neidorff.com (subdomain name) $m = com (node name) $k = neidorff.com ======================================================== When I run #sendmail -bt 3,0 mark@xxxxxxxxxxxx it parses the same way that yours does. ADDRESS TEST MODE (ruleset 3 NOT automatically invoked) Enter <ruleset> <address> > canonify input: mark @ neidorff . com Canonify2 input: mark < @ neidorff . com > Canonify2 returns: mark < @ neidorff . com . > canonify returns: mark < @ neidorff . com . > parse input: mark < @ neidorff . com . > Parse0 input: mark < @ neidorff . com . > Parse0 returns: mark < @ neidorff . com . > ParseLocal input: mark < @ neidorff . com . > ParseLocal returns: mark < @ neidorff . com . > Parse1 input: mark < @ neidorff . com . > Parse1 returns: $# local $: mark parse returns: $# local $: mark > Still, I ***SEE*** the activity on my router sending the message out and it coming back in again multiple times for each e-mail. I can't find anything causing that. I have no idea how to interpret this, but each line in /var/log/maillog shows each received e-mail relay=root@localhost . Is that supposed to be there? Thanks for any help you can offer... Mark On Sat, 20 Mar 2004, Cowles, Steve wrote: > Mark Neidorff wrote: > > Hi all, > > > > I have a feeling that this is something dead easy, I'm just > > not seeing the problem. > > > > My Redhat 7.3 system is the machine that I use as a mail > > server (yes, I have a static IP)and as my workstation. I'm > > running sendmail as my mailserver. My domain is registered. > > I do not have a dns server running on my system. > > > > There are two symptoms to my problem. First, whenever an > > e-mail arrives, it hops around in my computer. My mail log > > fills with "too many hops 26 (25 max)" errors and each of > > these hops is written in the header of the e-mail that is > > received. > > The headers say: > > Received: (from root@localhost) > > by mark.neidorff.com (8.11.6/8.11.6) id <e-mail ID is here> > > for mark; <date and time are here> > > and is repeated about 25 times. > > The "to many hops" error typically means a sendmail configuration problem. > Most likely, sendmail does not understand what domains are considered local. > i.e. when to select the local vs. esmtp mailers > > 1) First check to see how sendmail views your systems resolver lib configs. > > Type: sendmail -bt -d0.1 </dev/null > > ============ SYSTEM IDENTITY (after readcf) ============ > (short domain name) $w = voyager > (canonical domain name) $j = mail.mydomain.com > (subdomain name) $m = mydomain.com > (node name) $k = voyager > ======================================================== > > Note: In my printout above, my systems FQDN is voyager.mydomain.com. Yet, I > override this (canonical) in my sendmail.mc file to be mail.mydomain.com > which matches the MX record for my domain. This comes in handy for outbound > mail with certain remote MTA's that check the validity of the HELO > handshake. > > 2) Now check which mailer is selected by sendmail for your e-mail addresses > (ruleset 0). In your case, the "local" mailer should be selected. If not, > then you may have found your endless loop (barring any aliases or virtuals). > NOTE: After typing sendmail -bt you would enter what is shown at the > > prompt. Substitute for your domain. > > # sendmail -bt > ADDRESS TEST MODE (ruleset 3 NOT automatically invoked) > Enter <ruleset> <address> > > 3,0 scowles@xxxxxxxxxxxx > canonify input: scowles @ mydomain . com > Canonify2 input: scowles < @ mydomain . com > > Canonify2 returns: scowles < @ mydomain . com . > > canonify returns: scowles < @ mydomain . com . > > parse input: scowles < @ mydomain . com . > > Parse0 input: scowles < @ mydomain . com . > > Parse0 returns: scowles < @ mydomain . com . > > ParseLocal input: scowles < @ mydomain . com . > > ParseLocal returns: scowles < @ mydomain . com . > > Parse1 input: scowles < @ mydomain . com . > > Parse1 returns: $# local $: scowles > parse returns: $# local $: scowles > > Note: In the above, I am invoking ruleset 3, then rulset 0. Ruleset 3 puts > each address into a form that simplfies tasks for other rulsets. In this > case, ruleset 0, which selects the mailer. > > The last line output above contains the mailer (local) and the mailbox in > this case. > > As a frame of reference, I have removed "mydomain.com" from > /etc/mail/local-hosts-names. Notice that sendmail now selects the esmtp > mailer. > > # sendmail -bt > ADDRESS TEST MODE (ruleset 3 NOT automatically invoked) > Enter <ruleset> <address> > > 3,0 scowles@xxxxxxxxxxxx > canonify input: scowles @ mydomain . com > Canonify2 input: scowles < @ mydomain . com > > Canonify2 returns: scowles < @ mydomain . com . > > canonify returns: scowles < @ mydomain . com . > > parse input: scowles < @ mydomain . com . > > Parse0 input: scowles < @ mydomain . com . > > Parse0 returns: scowles < @ mydomain . com . > > ParseLocal input: scowles < @ mydomain . com . > > ParseLocal returns: scowles < @ mydomain . com . > > Parse1 input: scowles < @ mydomain . com . > > Mailertable input: < mydomain . com > scowles < @ mydomain . com . > > Mailertable input: mydomain . < com > scowles < @ mydomain . com . > > Mailertable returns: scowles < @ mydomain . com . > > Mailertable returns: scowles < @ mydomain . com . > > MailerToTriple input: < > scowles < @ mydomain . com . > > MailerToTriple returns: scowles < @ mydomain . com . > > Parse1 returns: $# esmtp $@ mydomain . com . $: scowles < @ > mydomain . com . > > parse returns: $# esmtp $@ mydomain . com . $: scowles < @ > mydomain . com . > > > BTW: Are you using any virtual addresses? How about your aliases file? Could > be that the local mailer is being selected, but then an alias kicks in to > forward to another system. > > Long pause... > I'm sure the above looks complicated. Sorry! Sendmail is not the easist of > MTA's to configure. :-) But understanding which mailer is selected is > critical in undestanding how to resolve the to many hops errors. > > Think of this problem like this... > > 1) inbound e-mail arrives (either remotely or locally submitted). > > 2) Based on its configuration, sendmail selects whether or not the recipient > e-mail address is local or remote (the mailer). > > 3) if the remote mailer is selected (esmtp), sendmail forwards the inbound > e-mail to another MTA (using an MX record or a mailertable override) > > 4) The remote MTA receives this forwarded e-mail and checks its > configuration for whether or not the recipient e-mail address is local or > remote. > > 5) The remote MTA does not select the local mailer and determines it needs > to forward this e-mail back to your MTA. (using an MX record or a > mailertable override) > > ...and the loop continues. > > Steve Cowles > > > -- With her marriage she got a new name and a dress. -- redhat-list mailing list unsubscribe mailto:redhat-list-request@xxxxxxxxxx?subject=unsubscribe https://www.redhat.com/mailman/listinfo/redhat-list