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

[postfix-jp:03049] postfixにhostsを参照させることはできますか?



 松田と申します。

 IPアドレス8つの環境にて、NATを用いてサーバを運用しているのですが、
 ルータの仕様により、LAN内のサーバ同士に不具合があります。
 詳しくは以下の通りです。

 postfixは、インスト時にて、rpmにてインストールされています(1.1.11-11)

--------------------------------------------------------------------
gateway(市販ルータ):
192.168.0.254 123.123.123.123

server1(redhat7.3):
192.168.0.202(ホスト名:redhat)www.hogehoge.co.jp 123.123.123.124

server2(redhat9.0:
192.168.0.203(ホスト名:user)www.foo.co.jp 123.123.123.125
--------------------------------------------------------------------

 今までは、サーバが1つだけで問題が無かったのですが、2つにしたことにより
片方のサーバに登録されているドメインにメールを送れない症状がでました。

 root@xxxxxxxxxから、root@xxxxxxxxxxxxxxにメールを送信したときの
 メールログは以下の通りです。

--------------------------------
Jun 24 20:09:19 user postfix/qmgr[16461]: 62711D2C27: from=<root@xxxxxxxxx>, size=1684, nrcpt=1(queue active)
Jun 24 20:09:22 user postfix/smtp[19403]: connect to mail.hogehoge.co.jp[123.123.123.124]: No route to host(port 25)
Jun 24 20:09:22 user postfix/smtp[19403]: 62711D2C27: to=<root@xxxxxxxxxxxxxx>,relay=none, delay=3,status=deferred (connect to mail.hogehoge.co.jp[123.123.123.124]: No route to host)
----------------------------------

 つまりは、「ルータ内からLAN内のマシンへグローバルアドレスでアクセスできない」のですが、
 メーカーのサポートは「仕様ですので、hostsを使ってください」と回答を頂きました。


 送信元のサーバ(192.168.0.203)の設定は次の通りでした。

/etc/hosts.conf
order hosts,bind

/etc/hosts
127.0.0.1       user    localhost.localdomain localhost


 次のように追記しました。
/etc/hosts
127.0.0.1       user    localhost.localdomain localhost
192.168.0.202     mail.hogehoge.co.jp ←追加


/etc/init.d/network restart
/etc/init.d/xinet restart
postfix reload
 を実行して、設定を反映させました。


[root@user matsuda]# ping mail.hogehoge.co.jp
PING mail.hogehoge.co.jp (192.168.0.202) 56(84) bytes of data.
64 bytes from mail.hogehoge.co.jp (192.168.0.202): icmp_seq=1 ttl=255 time=0.344 ms

 と、hosts.confや、hostsの反応としては正常なのですが、
 改めてメールを送信しても

to=<root@xxxxxxxxxxxxxx>,relay=none, delay=3,status=deferred (connect to mail.hogehoge.co.jp[123.123.123.124]: No route to host)
 と、グローバルでアクセスしてしまいます。


 先ほど、postfixをreloadではなく、stop&startさせると
[root@user matsuda]# postfix start
postfix/postfix-script: warning: /var/spool/postfix/etc/resolv.conf and /etc/res
olv.conf differ
postfix/postfix-script: starting the Postfix mail system

と、出たので、
[root@user matsuda]# cat /var/spool/postfix/etc/resolv.conf
nameserver 202.224.128.6
nameserver 202.224.128.50

 と、プロバイダのDNSサーバになっています。
 おそらく /etc/resolve.conf のコピーだと思います。


 もし、postfixが/var/spool/postfix/etc/resolve.confをずっと参照
 しているならば、グローバルアドレスが渡されてしまうのですが、
 hostsを参照させてローカルアドレスにてアクセスさせることはできないのでしょうか?

 以上、少し混乱気味ですが(汗
 よろしくお願い致します。

-- 
Hiroyuki Matsuda <hiro_m@xxxxxxxxxxxxx>

Follow-Ups
[postfix-jp:03050] Re: postfixにhostsを参照させることはできますか?, Yu Ooasa
[postfix-jp:03051] Re: postfixにhostsを参照させることはできますか?, YOSHIMURA Keitaro
[postfix-jp:03052] Re: postfixにhostsを参照させることはできますか?, B <tommy@xxxxxxxx>

[検索ページ] [Postfix-JP ML Home]