Postfix::イントラ内の転送とか(transport)
同一のイントラ内にメールとばしたいのですが
そのドメインがグローバルを持ってしまっていて、
「/etc/hosts」にインターナルIPを割り振ったのに見に行ってくれません。
反抗期なのでしょうか。
Q 4.10. メールの送信に /etc/hosts ファイルを参照させるには?
A. Postfix は DNS が前提で作られており、通常メール送信時には DNS に MX レコードを問い合わせ、見つからなければメールの送信ができません。 MX レコードが見つからない場合に A レコードを検索するにはignore_mx_lookup_error = yesとしますが、この設定で /etc/hosts ファイルを参照させることはできません。 また、[example.com] のようにして MX レコードの検索を禁止しても、 /etc/hosts を参照することができません。強制的に hosts ファイルを使うためには、main.cf で
disable_dns_lookups = yesを指定します。ただしこの場合、MXレコードを使うことはできないので、 イントラネット専用メールサーバでなければ relayhost を 指定する必要があるかもしれません。注意: disable_dns_lookups は Postfix の DNS クライアントを 無効にして libc (OS 標準) のリゾルバを使って名前解決をおこなう オプションであり、一切の DNS 検索をおこなわなくなるわけではありません。
ですって。なので仕方なくtransportで解決します。
- /etc/postfix/main.cf
transport_maps = hash:/etc/postfix/transport
transport見に行くようにして
- /etc/postfix/transport
example.com :[192.168.0.11]
.example.com :[192.168.0.11]
# サブドメイン持って行きたい場合は2つ目みたいに別個で設定が必要
って書いて
# postmap /etc/postfix/transport
# strings /etc/postfix/transport.db
で中身ができていればおk
あとはメールログの中身みてちゃんと転送されていれば
みっしょんこんぷりーと :)