cancel
Showing results for 
Search instead for 
Did you mean: 

sendmail and exchange

Jerry McConnell
Occasional Visitor

sendmail and exchange

I have an HP-UX 11.0 machine which has no direct access to the internet or an external DNS server.

I have an exchange server which I have configured as the relay for my hpux machine using the DS macro in sendmail.cf and this works fine as long as the receipant's node is in the host table. Of course this isn't ever true, except for the few test cases I entered myself.
The following is a sample of the problem:


# sendmail -v themcconnells@rcn.com
test 300
.
themcconnells@rcn.com... rcn.com: Name server timeout
themcconnells@rcn.com... Transient parse error -- message queued for future delivery
themcconnells@rcn.com... queued


Is there a way to force sendmail to not try and look up the host or dns entries, but rather just send the package to the relay agent and let it worry about name resolution?

Thanks in advance for any suggestions.

Jerry McConnell
Humble Sys Admin
3 REPLIES
Rick Garland
Honored Contributor

Re: sendmail and exchange

www.sendmail.org has a wealth of info.

My initial thought is that you need to tell sendmail not to use DNS. I know this is a compile option but I believe there is an option in the sendmail.cf as well.
Kofi ARTHIABAH
Honored Contributor

Re: sendmail and exchange

Check the following:
1. edit your /etc/nsswitch.conf to read:
hosts files
2. edit your hosts file to include the IP address of your exchange server
3. if you have re-configured your /etc/mail/sendmail.cf file, try restarting sendmail with /sbin/init.d/sendmail stop; /sbin/init.d/sendmail start

Good luck
nothing wrong with me that a few lines of code cannot fix!
Greg Royle
Advisor

Re: sendmail and exchange

Hi there,
I'm fairly new to the forum. But I understand exactly what you need, you may have already received the answer that you want. It is possible to stop sendmail doing a host lookup first. This will need some modification to your sendmail.cf. The problem is in ruleset 96 (you can search using vi for ruleset 96 thus: /^S96). I am unsure which version of sendmail you have. But here are some details to pass all non-local mail to the smart relay without lookup. It will be in your interest to backup your sendmail.cf

====
We noticed that when we ran the sendmail -bt (0,3) that it came out of rule 96
with the nametimeout error. This will have to be uncommented (if you are
absolutely sure that all non-local mail should goto the Smart Relay). Also in
several of the mailers will need to have the F=0 flag appended.

I have amended the customers sendmail.cf from:

# pass to name server to make hostname canonical
R$* < @ $* $~P > $* $: $1 < @ $[ $2 $3 $] > $4

to:

# pass to name server to make hostname canonical
#R$* < @ $* $~P > $* $: $1 < @ $[ $2 $3 $] > $4


ALSO from:

Msmtp, P=[IPC], F=mDFMuX, S=11/31, R=21, E=rn, L=990,
T=DNS/RFC822/SMTP,
A=IPC $h
Mesmtp, P=[IPC], F=mDFMuXa, S=11/31, R=21, E=rn, L=990,
T=DNS/RFC822/SMTP,
A=IPC $h
Msmtp8, P=[IPC], F=mDFMuX8, S=11/31, R=21, E=rn, L=990,
T=DNS/RFC822/SMTP,
A=IPC $h
Mrelay, P=[IPC], F=mDFMuXa8, S=11/31, R=61, E=rn, L=2040,
T=DNS/RFC822/SMTP,
A=IPC $h


TO:

Msmtp, P=[IPC], F=0mDFMuX, S=11/31, R=21, E=rn, L=990,
T=DNS/RFC822/SMTP,
A=IPC $h
Mesmtp, P=[IPC], F=0mDFMuXa, S=11/31, R=21, E=rn, L=990,
T=DNS/RFC822/SMTP,
A=IPC $h
Msmtp8, P=[IPC], F=0mDFMuX8, S=11/31, R=21, E=rn, L=990,
T=DNS/RFC822/SMTP,
A=IPC $h
Mrelay, P=[IPC], F=0mDFMuXa8, S=11/31, R=61, E=rn, L=2040,
T=DNS/RFC822/SMTP,
A=IPC $h

=========

best regards,

Greg R.