- PR -

[sendmail] 起動・送信時の遅延

1
投稿者投稿内容
payashi
会議室デビュー日: 2007/02/07
投稿数: 2
投稿日時: 2007-02-07 11:12
ローカルネットワーク内で各マシンがSMTPサーバとなり、別マシンへ
メールアドレスとしてユーザ名@ホスト名を指定してメールを送信したいのです。

そこで下記のような設定にしてなんとか送受信できるようにはなりました。

===sendmail.mc===
divert(-1)dnl
include(`/usr/share/sendmail-cf/m4/cf.m4')dnl
VERSIONID(`setup for Red Hat Linux')dnl
OSTYPE(`linux')dnl
define(`confDEF_USER_ID',``8:12'')dnl
define(`confTO_CONNECT', `1m')dnl
define(`confTRY_NULL_MX_LIST',true)dnl
define(`confDONT_PROBE_INTERFACES',true)dnl
define(`PROCMAIL_MAILER_PATH',`/usr/bin/procmail')dnl
define(`ALIAS_FILE', `/etc/aliases')dnl
define(`STATUS_FILE', `/var/log/mail/statistics')dnl
define(`UUCP_MAILER_MAX', `2000000')dnl
define(`confUSERDB_SPEC', `/etc/mail/userdb.db')dnl
define(`confPRIVACY_FLAGS', `authwarnings,novrfy,noexpn,restrictqrun')dnl
define(`confAUTH_OPTIONS', `A')dnl
define(`confTO_IDENT', `0')dnl
FEATURE(`no_default_msa')dnl
FEATURE(`smrsh',`/usr/sbin/smrsh')dnl
FEATURE(`mailertable',`hash -o /etc/mail/mailertable.db')dnl
FEATURE(`virtusertable',`hash -o /etc/mail/virtusertable.db')dnl
FEATURE(redirect)dnl
FEATURE(use_cw_file)dnl
FEATURE(use_ct_file)dnl
FEATURE(local_procmail,`',`procmail -t -Y -a $h -d $u')dnl
FEATURE(`access_db',`hash -T<TMPF> -o /etc/mail/access.db')dnl
FEATURE(`blacklist_recipients')dnl
EXPOSED_USER(`root')dnl
FEATURE(`nocanonify')dnl
FEATURE(`accept_unresolvable_domains')dnl
FEATURE(`accept_unqualified_senders')dnl
define(`confSERVICE_SWITCH_FILE',`/etc/mail/service.switch')dnl
MAILER(smtp)dnl
MAILER(procmail)dnl
=================

ただ、送信は一応出来るのですが、maillogに以下のようなエラーが出力され、
ちょうど1分メール送信が遅れます。
===mail.log===
18:12:57 HOSTNAME sendmail[6249]: My unqualified host name (HOSTNAME) unknown; sleeping for retry
18:13:57 HOSTNAME sendmail[6249]: unable to qualify my own domain name (HOSTNAME) -- using short name
==============

/etc/hostsにFQDNも記述することで解決することはわかっているのですが、
ホスト名だけという前提が崩れてしまいます。

このsleepingの時間を短くする、またはsleepしないように設定する方法はありません
でしょうか。

また、sendmailのバージョンは8.12.11-4、OSはRHEL3update8です
kaz
ぬし
会議室デビュー日: 2003/11/06
投稿数: 5403
投稿日時: 2007-02-07 23:50
こんばんわ.
引用:

payashiさんの書き込み (2007-02-07 11:12) より:

/etc/hostsにFQDNも記述することで解決することはわかっているのですが、
ホスト名だけという前提が崩れてしまいます。


その前提はなぜ必要なのでしょうか?
自 host は domain まで定義していますか?
payashi
会議室デビュー日: 2007/02/07
投稿数: 2
投稿日時: 2007-02-08 13:56
ご返答ありがとうございます。

> その前提はなぜ必要なのでしょうか?
> 自 host は domain まで定義していますか?

あらかじめdomainを使用せず組まれたネットワーク内に
新たにメール送受信を行うマシンを追加する為です。
ネットワーク内の他host(UNIX)もdomain未使用でメール送受信を
行っています。ですが、Linuxマシンは今回初めて導入します。
他のUNIXマシンでは可能なのに何故Linuxでは出来ないのかがわかりません。
(同一のsendmail.cfを使用して、IRIX sendmailではsleepせずに
即座に送信出来ました。IRIX sendmailのversionは8.12.11と特に変わりない
のですが...)

自hostもdomainは定義しておりません。
domainを全く意識せず、host名だけでメールを送りたいのです。
dam
会議室デビュー日: 2004/11/07
投稿数: 13
投稿日時: 2007-02-15 11:49
私も同じような案件で
苦労したことがありますが、
結局解決できず、
ダミーのFQDNを/etc/hostsに設定して回避しました。
パッケージ化されているsendmailの動作が
他のパッケージと異なるのはよくあります。

DNSを使わないようにするコンパイルオプションが
今も有効であるならば、それを使ってソースからコンパイルして
みてはどうでしょうか?
※UnixとLinuxでソースレベルで異なってたら駄目ですけど
1

スキルアップ/キャリアアップ(JOB@IT)