RHEL ボックスで sendmail を実行しています。同じボックスに 2 つのパブリック IP アドレスが設定されています。1 つは SAP アプリ用、もう 1 つは Sendmail 用です。最初のインターフェイスは SAP に使用され、2 つ目は Sendmail に使用されます。bind
セカンダリ NIC で Sendmail デーモンを設定しましたが、メールを送信すると、トラフィックはプライマリ NIC 経由で開始され、ポート 25 がブロックされているため接続が拒否されます。これファイアウォール内の NIC。
どなたか、この問題を解決するのを手伝っていただけますか? SMTP トラフィックをセカンダリ NIC 経由でルーティングするように Sendmail の設定を変更する必要がありますか、それとも IPtables を操作してこれを実現する必要がありますか? 何かアイデアが必要です。
ご返信をよろしくお願いいたします。
クリストファー
ご要望に応じて:
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
xxx.x.x.32 0.0.0.0 255.255.255.240 U 0 0 0 eth1
10.90.9.96 0.0.0.0 255.255.255.224 U 0 0 0 eth0
0.0.0.0 xx.x.x.33 0.0.0.0 UG 0 0 0 eth1
答え1
ip route get $(gethostip -d $NEXTSMTPHOP)
送信トラフィックに使用されるインターフェースが表示されます。インターフェースをバインドすると、受信トラフィックの listen-address にのみ影響します。
したがって、次の SMTP-HOP (できれば静的 IP) が目的のインターフェイスを介して送信されるようにルーティングを設定する必要があります。
答え2
ポートに基づいてルートを選択するには、iptablesでマーキングを使用する必要があると思います。これを行う方法について私が見た唯一のドキュメントはShorewall 複数 ISPドキュメンテーション。