[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: qmail on dial-up ppp



This is in response to a fairly old message on debian-user.

I run qmail at home on a Debian system which is connected via dialup
PPP (using diald) with a dynamic IP address.  I'm not at home right
now, so if you need to see exact copies of config files, let me know
and I can look them up.

First of all, make up a FQDN.  My home dialup system is named
"phoenix.local".  The /etc/hosts entry will look something like this:

     192.168.1.1 phoenix.local phoenix

I used ".local" because this will likely never become a valid top-level
domain name.  I wouldn't want a name conflict.  The 192.168.1.1 is the
address of one end of the sl0 (SLIP) connection that diald
establishes.  (This is not the same as the ppp0 (PPP) connection that
will be established when diald actually spawns pppd in response to
routing requests.  The ppp0 interface gets a dynamic IP address from
the other end of the phone line.)

Once you've made up a FQDN, you can tell qmail what your hostname is.
It may not be able to figure it out automatically... which is OK.  All
you have to do is put your FQDN into the appropriate control file (I
think it's "control/me", but it's been a while).

With diald, then, that's all you have to do.  Purely local mail (such
as mail to "greg@phoenix.local", generated on phoenix) will be handled
without causing qmail to do any DNS lookups, so it won't trigger
diald.  Outbound messages (e.g., to "user@aol.com") require a DNS
lookup, so diald will be triggered (assuming you're using your ISP's
DNS servers, which you pretty much *must* do when using diald with a
dynamic IP address, since the first packet will be lost due to changes
of the local IP address), and then the message will be sent out.
Incoming mail will have to be fetched from a POP3 or IMAP server; I use
fetchmail for this.

Without diald, you'll have to manually tell qmail to deliver the mail
when the PPP connection comes up.  There's a signal you can send to one
of the qmail processes to make it run the queue -- I believe it's
signal 14 (SIGALRM), and the process is probably qmail-send, but check
the docs to be sure.  You can put a line like this into ip-up:

    kill -ALRM `pidof qmail-send`

I actually do this even though I don't have to... my outbound mail
volume is low enough that I want each of them delivered ASAP.

Hope this helps.


Reply to: