Sendmail delay: 3 mins 11 secs... Every time.


Login or Register to Reply

 
Thread Tools Search this Thread
# 8  
I would suspect some issues in /etc/hosts or /etc/resolv.conf files.
/etc/resolv.conf less likely to be wrong due to being managed by smf in your release.

Check hosts file for syntax errors, post the content here is possible.
This User Gave Thanks to Peasant For This Post:
# 9  
I guess the smarthost in /etc/mail/sendmail.cf (and/or submit.cf) is mailhost.fqdn.uk.
Check its DNS resolution with
Code:
nslookup -q=mx mailhost.fqdn.uk

Does it list many hosts? Are some of them not reachable on port 25?
What is the hosts line in /etc/nsswitch.conf?

Last edited by MadeInGermany; 09-01-2017 at 03:06 PM.. Reason: nsswitch not resolv
This User Gave Thanks to MadeInGermany For This Post:
# 10  
Thanks hicksd8, but that has already been set as suggested:
Code:
# grep ^DS sendmail.cf submit.cf
sendmail.cf:DS
submit.cf:DS

---------- Post updated at 13:43 ---------- Previous update was at 10:20 ----------

I've found out something that may be significant, but I'm not sure what to do with it:
"mailhost" is an alias in /etc/hosts for the old mailserver which is still active, but the preferred mailserver is "outlook", which is 3 load-balanced servers:
Code:
# nslookup outlook.fqdn.uk
Server:         10.10.0.35
Address:        10.10.0.35#53

Name:   outlook.fqdn.uk
Address: 10.10.3.47
Name:   outlook.fqdn.uk
Address: 10.10.3.48
Name:   outlook.fqdn.uk
Address: 10.10.0.171

"SVP-MAIL01" is one of those load-balanced mailservers, which mail gets forwarded to from the old mailhost in the syslog snippet below:
Code:
Sep  4 11:11:56 myldom sendmail[28520]: [ID 801593 mail.info] v84ABuq7028520: from=myuser, size=108, class=0, nrcpts=1, msgid=<201709041011.v84ABuq7028520@myldom.fqdn.uk>, relay=myuser@localhost
Sep  4 11:11:56 myldom sendmail[28521]: [ID 801593 mail.info] v84ABubQ028521: from=<myuser@myldom.fqdn.uk>, size=450, class=0, nrcpts=1, msgid=<201709041011.v84ABuq7028520@myldom.fqdn.uk>, proto=ESMTP, daemon=MTA-v4, relay=localhost.fqdn.uk [127.0.0.1]
Sep  4 11:11:56 myldom sendmail[28520]: [ID 801593 mail.info] v84ABuq7028520: to=my.name@company.uk, ctladdr=myuser (111/100), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30108, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (v84ABubQ028521 Message accepted for delivery)
Sep  4 11:15:07 myldom sendmail[28523]: [ID 702911 mail.info] STARTTLS=client, relay=mailhost.fqdn.uk, version=TLSv1.2, verify=FAIL, cipher=ECDHE-RSA-AES256-SHA384, bits=256/256
Sep  4 11:15:07 myldom sendmail[28523]: [ID 801593 mail.info] v84ABubQ028521: to=<my.name@company.uk>, ctladdr=<myuser@myldom.fqdn.uk> (111/100), delay=00:03:11, xdelay=00:03:11, mailer=esmtp, pri=120450, relay=mailhost.fqdn.uk [10.10.0.98], dsn=2.0.0, stat=Sent (<201709041011.v84ABuq7028520@myldom.fqdn.uk> [InternalId=80698140526752, Hostname=SVP-MAIL01.fqdn.uk] Queued mail for delivery)

Obviously I can't put them all in /etc/hosts with the same address, but when I took the "mailhost" line out, it failed to find any mailserver at all.
How do I tell sendmail that the mailhost is "outlook.fqdn.uk" without putting only one address in /etc/hosts?

Many thanks

---------- Post updated at 13:45 ---------- Previous update was at 13:43 ----------

P.S.
Code:
# grep hosts /etc/nsswitch.conf
hosts:  files dns

---------- Post updated at 13:46 ---------- Previous update was at 13:45 ----------

PPS: I'm not sure if this is what you meant, but...
Quote:
# grep smarthost sendmail.cf submit.cf
sendmail.cf:R$* < @ [ $+ ] : > $* $#esmtp $@ [$2] $: $1 < @ [$2] > $3 no smarthost: send
sendmail.cf:R$* < @ [ $+ ] : $- : $*> $* $#$3 $@ $4 $: $1 < @ [$2] > $5 smarthost with mailer
sendmail.cf:R$* < @ [ $+ ] : $+ > $* $#esmtp $@ $3 $: $1 < @ [$2] > $4 smarthost without mailer
sendmail.cf:# pass names that still have a host to a smarthost (if defined)
sendmail.cf:R$* < @ $* > $* $: $>MailerToTriple < $S > $1 < @ $2 > $3 glue on smarthost name
submit.cf:R$* < @ [ $+ ] : > $* $#esmtp $@ [$2] $: $1 < @ [$2] > $3 no smarthost: send
submit.cf:R$* < @ [ $+ ] : $- : $*> $* $#$3 $@ $4 $: $1 < @ [$2] > $5 smarthost with mailer
submit.cf:R$* < @ [ $+ ] : $+ > $* $#esmtp $@ $3 $: $1 < @ [$2] > $4 smarthost without mailer
submit.cf:# pass names that still have a host to a smarthost (if defined)
submit.cf:R$* < @ $* > $* $: $>MailerToTriple < $S > $1 < @ $2 > $3 glue on smarthost name


Moderator's Comments:
Mod Comment Please use CODE tags as required by forum rules!


---------- Post updated at 16:07 ---------- Previous update was at 13:46 ----------

OK, Having a better idea of what I'm looking for now, I found the solution - it's just the implementation I'm unsure of now.

I put the correct mailhost name in sendmail.cf like so:
Code:
DSoutlook.fqdn.uk

then restarted sendmail and emails get delivered in just a few seconds. Smilie

My last question on this is...
I need to add it to sendmail.cf via editing sendmail.mc and running make on it, but what's the syntax for sendmail.mc?
Do I just add the DS line as I want it to appear in sendmail.cf as it is above?

Many thanks

Last edited by RudiC; 09-04-2017 at 09:45 AM.. Reason: Added CODE tags.
# 11  
With the smarthost sendmail does an MX lookup first, like
Code:
nslookup -q=mx outlook.fqdn.uk

If there is no MX it falls back to gethostbyname lookup, like
Code:
getent hosts outlook.fqdn.uk

The second goes to /etc/inet/hosts first (ensure that /etc/hosts and /etc/inet/ipnodes are symlinks to it!)
I have told you to try
Code:
nslookup -q=mx mailhost.fqdn.uk

because mailhost is a more standard name for an MX, and MX (mail exchanger records) is the standard for SMTP mailers (is a list of mail servers with a weight for true load balancing). I wonder why you ignore the MX and try to emulate load balancing with a number of IP addresses.
If you want to try sendmail.mc (which is the correct way according to sendmail.org but might be more hassle than a direct change in sendmail.cf), there is a README somewhere in /usr/lib/mail/
and there is also an article in docs.oracle.com.
This User Gave Thanks to MadeInGermany For This Post:
# 12  
Thanks MadeinGermany,
I have fixed it by editing sendmail.mc and making a new sendmail.cf : Just add the DS line as you want it to appear in sendmail.cf
I didn't set this up (I'm fairly new here) and since the Exchange server is a Windows server, it's looked after by the Windows team.
I couldn't put multiple entries in /etc/hosts for outlook.fqdn.uk with multiple IP addresses, which is why I needed another way to tell sendmail where the mail server was.
Code:
# nslookup -q=mx mailhost.fqdn.uk
Server:         10.10.0.35
Address:        10.10.0.35#53

*** Can't find mailhost.fqdn.uk: No answer

# nslookup -q=mx outlook.fqdn.uk
Server:         10.10.0.35
Address:        10.10.0.35#53

*** Can't find outlook.fqdn.uk: No answer

I found the procedure on an oracle docs webpage (I'm not allowed to post URLs Smilie ) but I wouldn't have found it without the hints and tips in this thread.
Thanks to all who contributed. Smilie
Login or Register to Reply

|
Thread Tools Search this Thread
Search this Thread:
Advanced Search

More UNIX and Linux Forum Topics You Might Find Helpful
Sendmail delaying mails for 45 mins
badoshi
Hi, I'm trying to send out mails from my server using mailx, however everytime I send one, it appears to be held in the /var/spool/mqueue for 44 mins before being sent. I'm quite new to sendmail, so don't really know where to start with this /var/log/syslog displays the following: Dec 16...... Solaris
4
Solaris
Delay in sending email to-from localhost in Sendmail
Rohit Bhanot
Hi Friends, I am very much new to sendmail or any other mta. I just installed sendmail 8.14 on my rhel6 machine. I was trying to send email to local user but after entering the message when i press CTRL-D it simply hangs. I also tried sending email via mutt but again mutt also hangs. It sends...... Red Hat
0
Red Hat
Login delay after entering id (40 secs) same after entering pw
longjon
Hi all, I have just installed Solaris 10 on an old Fujitsu Primepower 650 which has been wiped clean. I haven't installed anything apart from the OS yet, so the machine is 99% idle. I get long delays when logging in, first after entering the id then another long delay after entering a valid...... Solaris
8
Solaris
getting time mins ago
cka
Hi I trying to get 5 mins ago time using below command echo `date +%R -d "1 min ago"` but this is giving only current time. Please help... UNIX for Advanced & Expert Users
6
UNIX for Advanced & Expert Users
ls -e to find out File modification time in secs
rahulkav
Hi All, I would like to know the file modification time till seconds in Unix. So I tried ls -e and it worked fine. This Solaris 5.10 -rw-rw-r-- 1 test admin 22 Sep 12 11:01:37 2008 test_message But I am not able to run the same command in SOlaris 5.6 and also in AIX/HP Is there...... Shell Programming and Scripting
3
Shell Programming and Scripting