GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  SMTPDCHECK (1)

.ds Aq ’

NAME

smtpdcheck - check SMTP servers

CONTENTS

SYNOPSIS

smtpdcheck [--stop {ip-addr|name}] [--timeout seconds]
[prio:]server [[prio:]server]

DESCRIPTION

smtpdcheck checks to see if SMTP servers are available. The intent is for use on secondary mail servers, which have no reason to accept mail when the primary server is available.

The argument consists of a list of server names, each of which may optionally be prefixed by a numeric MX priority and a colon. (This is exactly the format for MX records returned by the avenger dns command.) smtpdcheck will attempt to connect to each server in succession.

If one of the servers specified on the command line is available, smtpdcheck will print its name to standard output and exit with status 1. If smtpdcheck cannot connect to any of the servers, it will exit with status 0. If a system error occurs, smtpdcheck will exit with status 2.

    OPTIONS

--stop {ip-addr|name} Tells smtpdcheck to stop before checking a server with IP address ip-addr or hostname name. If such a host is encountered in the list of servers and prio is specified, then smtpdcheck will consider it acceptable for other servers with the same priority to be available, even if those servers were first in the list. In other words, given the following arguments:



       smtpdcheck --stop s2.domain.com \
                  10:s1.domain.com 10:s2.domain.com \
                  20:s3.domain.com



This command will always succeed, regardless of whether s1.domain.com is up, because s2.domain.com has the same priority. On the other hand, the following command will fail and output s1.domain.com if s1.domain.com is up:



       smtpdcheck --stop s2.domain.com \
                  10:s1.domain.com 20:s2.domain.com \
                  30:s3.domain.com



If a gethostbyname lookup for the argument name fails, smtpdcheck will exit immediately with status 2.

--timeout {seconds] By default, smtpdcheck spends 10 seconds probing each server. This includes the time to do a DNS lookup, to establish a TCP connection to port 25 of the server, and to read the 220 SMTP code from the server’s SMTP greeting message. To use a different value, specify it with the --timeout option. The value 0 disables the timeout completely, which is dangerous since smtpdcheck might then end up waiting forever to read the 220 string.

EXAMPLES

To refuse to relay mail at a secondary MX server when the primary server is not down, you might place the following in /etc/avenger/secondary (assuming MxLocalRcpt is 1):



        dns RECIP_MXES mx "$RECIPIENT_HOST"
        setvars
        server=`smtpdcheck --stop $MYIP $RECIP_MXES`
        test -n "$server" && defer "Please use server $server"



SEE ALSO

avenger(1) dbutil(1) asmtpd.conf(5),

The Mail Avenger home page: <http://www.mailavenger.org/>.

BUGS

smtpdcheck could achieve much lower latency by probing all the servers simultaneously. It should also include some kind of caching, to avoid repeatedly trying to contact an unavailable server. Finally, hosts with multiple IP addresses could be handled more cleanly, though what smtpdcheck does should probably work in most cases.

AUTHOR

David Mazie\k:`res
Search for    or go to Top of page |  Section 1 |  Main Index


Mail Avenger 0.8.4 SMTPDCHECK (1) 2013-07-13

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.