レコードが置かれている場所
インスタンスにルーティングされた各アドレスには、編集可能なPTRがあります。パネルにはインスタンスごとに1行ずつアドレスが表示されます。APIも同じものを公開しています:
curl -s https://paragonvps.com/api/v1/instances/<instance-id>/addresses -H "Authorization: Bearer $Paragon_TOKEN" | jq -r '.[].ptr'設定する場合:
curl -s -X PUT https://paragonvps.com/api/v1/addresses/<address-id>/ptr -H "Authorization: Bearer $Paragon_TOKEN" -H "Content-Type: application/json" -d '{"ptr":"mail.example.com"}'前方レコードが先に存在する必要がある
一致するAまたはAAAAレコードがない名前を指すPTRは、PTRがないより悪いです。受信メールサーバーはその不一致をシグナルとして読み取り、一部はそれを理由に接続を拒否します。前方レコードを公開し、解決を確認してからPTRを設定してください。
dig +short mail.example.com A
dig +short mail.example.com AAAA次に、ペアが双方向で一致することを確認します:
dig +short -x <ipv4>
dig +short -x <ipv6>dig -xは、in-addr.arpaまたはip6.arpaの名前を組み立ててくれるため、32個のニブルを手で逆順にして1つ間違える手間が省けます。
伝播
私たちの権威ゾーンは、変更を約1分で反映します。時間がかかるのはネガティブキャッシュです: 設定する前にPTRを問い合わせたリゾルバーは、SOAの最小値(逆引きゾーンでは1時間)の間、空の応答を保持する可能性があります。これを短縮できるのは私たちでもあなたでもなく、クエリを再試行してもそれは証明されるだけです。
IPv6
ルーティングされた/64には、あなたが名前を付けるよりも多くのアドレスが含まれており、パネルが各アドレスにテキストフィールドを提供することはありません。実用的な方法が2つあります:
- 実際に使用する個々のアドレスにPTRを設定します。ほとんどの人は、メール送信者のために正確に1つ必要です。
- /64をカバーする
ip6.arpaゾーンを自分のネームサーバーに委任するよう依頼します。その後、好きなものを生成できます。委任はチケットで、約1日かかり、ゾーンにすでに応答している2つのネームサーバーが必要です。
メール詳細
新しいアカウントでは、送信ポート25は閉じられています。インスタンスが何を送信し、おおよそどのくらいの量かを伝えて依頼すると、開けます。このチェックがあるのは、オープンリレーが利用規約で明示的に禁止されている3つのことの1つだからです。
開いたら、4つの文字列が一致する必要があります: 送信ホスト名、PTR、HELO名、SPFレコードで許可されているもの。HELOをPTRと同一にすることで、ソフトリジェクトの最も一般的な原因がなくなります。
swaks --to [email protected] --server localhost --helo mail.example.com反映されない場合
発生する順に3つの原因:
- 前方レコードが存在しない、間違っている、またはまだ伝播していない。
- 編集したアドレスが、トラフィックを送信しているインスタンスとは別のインスタンスに属している。
- デーモンが/64内の、PTRを設定したアドレスとは異なるアドレスにバインドされている。
3つ目は見落としがちで、確認も簡単です:
ip -brief addr
ss -tlnp送信接続の送信元アドレスがPTRを運んでいるものと一致しない場合、カーネルが意図したアドレスを選ぶことを期待するのではなく、デーモンを明示的にバインドしてください。