回答:
あなたが欲しいsmtp_bind_address=66.66.66.67
、inet_interfaces=all
またはinet_interfaces=eth(whatever)
66.66.66.67がオンになっている。
その変更を行ってから、postfixを停止/開始します。変更している場合はリロードできませんinet_interfaces
postconf -n
あなたが話していることを確認できるように、投稿してください。必要に応じて、IPをプライベートIP(10.xxxなど)およびドメイン(com | net | org | whatever)として匿名化します。
smtp_bind_address
IPv4アドレスを設定し、同等のIPv6はsmtp_bind_address6
「smtp_bind_address」ソリューションを使用する場合、メールサーバーは、指定されたIPアドレスでのみ着信メールもリッスンします。同じことが「inet_interfaces」ソリューションにも当てはまります。複数のIPアドレス/インターフェイスで受信メールをリッスンする場合、これは望ましい解決策ではない場合があります。
デフォルトの「smtp_bind_address」と「inet_interfaces」の設定を変更しないことをお勧めします。そのため、メールサーバーはすべてのIPアドレスで受信メールをリッスンします。
/etc/postfix/master.cfファイルを少し変更するだけです。
この部分を変更します。
smtp unix-----smtp #メールをバックアップMXとしてリレーする場合、fallback_relayを無効にしてMXループを回避する リレーUNIX-----smtp -o smtp_fallback_relay =
これに:
smtp unix-----smtp -o smtp_bind_address = 192.168.0.1 #メールをバックアップMXとしてリレーする場合、fallback_relayを無効にしてMXループを回避する リレーUNIX-----smtp -o smtp_bind_address = 192.168.0.1 -o smtp_fallback_relay =
もちろん、192.168.0.1の代わりに、メールを送信したいIPアドレスのいずれかを使用する必要があります。
ゾルタン
-o smtp_bind_address6=1:2:3:4:5:6:7:8
、動作しているようです。
inet_interfaces
か、単にそれを設定する- all
(デフォルト)と設定しますsmtp_bind_address
。smtp_bind_address
(またはsmtp_bind_address6
)で指定された1つのアドレスは、Postfix smtp送信プロセスに個別に使用されます。
master.cf
異なるインターフェイスを作成します。各ドメインに1つ:
rotate1 unix - - n - - smtp
-o syslog_name=postfix-rotate1
-o smtp_helo_name=domainone.com.br
-o smtp_bind_address=173.111.111.1
rotate2 unix - - n - - smtp
-o syslog_name=postfix-rotate2
-o smtp_helo_name=domaintwo.com.br
-o smtp_bind_address=173.111.111.2
main.cf
他のすべてのトランスポートマップを無効にします。例:#transport_maps = xxxxx
依存トランスポートマップを有効にする(postfix 2.7.x以降が必要)
sender_dependent_default_transport_maps = mysql:/etc/postfix/config/transport_random_dependent.cf
transport_random_dependent.cf
例:
user = postfix
password = mypassword
dbname = postfixdb
hosts = localhost
query = SELECT transport FROM transport_random WHERE domain = '%d' AND status='1' ORDER BY RAND() LIMIT 1
テーブルtransport_random
Column "transport" = rotate1, rotate2, rotate3, rotate4 (etc)
Column "domain" = sender domains (replaced by %d)
Column "status" = boolean (0 or 1) if is enabled the transport.
命令「RAND()LIMIT 1」は、同じドメインに対してランダムなトランスポートを使用する場合にのみ必要です。
例では、3つの異なるIPからmydomain.comから送信する必要があります。
次に、3つの異なるIPで3つのトランスポート(rotate1、rotate2、rotate3)を作成し、mysql行で設定します。
transport = rotate1 | domain = mydomain.com
transport = rotate2 | domain = mydomain.com
transport = rotate3 | domain = mydomain.com
その後、postfixが3つの異なるトランスポートをランダム化(1〜3回回転)して、このメールを送信します。