[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

SMTP from multihomed server

Zhello All!

I have spent some hours in Saturday trying to force SMTP TA use specified 
outbound address at multihomed machine. 

Man says "-L identity" just about this case - OK.

Looking into smtp.c, we see that "identity" seems to be dotted-quad in [] 
braces. OK, I have tested all ways - in [], without it, symbolical one 
(listed in /etc/hosts).

But nothing works. SMTP initiates session from one and only one address 
that it likes most(?). It is seen both by netstat and by session effect: 
this address is routed to USA and other non-Europe through Datanet... with 
problems :-) since Friday.

And on same machine Squid instructed to use alternative address works 
perfectly via Funet, and really sees whole world!

More detailed description.

The machine in St.Petersburg Technical University runs Linux 2.0.33, 
Zmailer 45p9. SMTP from 45p5 was also tested. Both addresses are bind to 
one Ethernet and belongs to different C class subnets. Let's call those 
subnets "CO" (routed to West via Datanet) and "AC" (routed via Funet). 
Reverse FQDN's are different. HOSTNAME and /etc/mail.conf corresponds to 
AC address. 

And SMTP always uses CO address for connection. No matter, if (and how) I 
use -L option in scheduler.conf, or even change IP binding order (which is 
eth0 assigned first and which is eth0:0). 

Maybe, the reason is that the default route ( looks at IP from CO 
subnet? Again, Squid manages to bind itself to AC address and works 

BTW, SMTPSERVER also defines perfectly from which interface did connection 
come, and gently answers with repective hostname. All (there are also 
lo:'s from third C subnet ;-) interfaces are mentioned in DNS as my 
secondary MX'es with equal weight, and now I see that all the mail from 
.com, etc. comes via AC interface routed via Funet.

Any ideas?


Alexey A. Lobanov AL258-RIPE