RFC 5782: DNSベースのブラックリストとホワイトリスト
このサイトが存在する理由
スパムフィルタリングには、送信元のIPアドレスとドメインについてのリアルタイム信用情報が必要です。DNSBLが登場する前は、各組織が独自のブロックリストを維持する必要がありました。これはスケーラビリティに問題があります。数十億のIPアドレスと数千のメールサーバーが同じ情報を必要とするためです。
DNS技術に基づくリストは、信用情報をDNSレコードとして公開することで、この問題を解決します。任意のメールサーバーはSMTPトランザクション中にほぼ遅延なしにこれらのリストをクエリできます。既に依存しているDNSインフラストラクチャと同じものを使用します。RFC 5782は、これらのリストの仕組みを文書化しており、以下をカバーしています:
- IPアドレスとドメインを検索するためのDNSクエリ形式
- リターンコードがリスティング理由をどのようにエンコードするか
- ブラックリスト(DNSBL)とホワイトリスト(DNSWL)の違い
- リストオペレーターの運用上の期待
仕組み
DNSBLをクエリするには、受信するメールサーバーが送信元のIPアドレスのオクテットを逆順にし、リストのゾーン名を追加して、DNS Aレコード検索を実行します。
IPアドレス検索
203.0.113.42がzen.spamhaus.orgにリストされているかどうかを確認するには:
クエリ: 42.113.0.203.zen.spamhaus.org A 応答: 127.0.0.2
オクテットは逆順になります(in-addr.arpa PTRレコードと同様)。127.0.0.0/8範囲内の応答は、IPがリストされていることを意味します。具体的なリターン値はリスティング理由をエンコードします。NXDOMAIN応答はIPがリストされていないことを意味します。
リターンコードの意味(Spamhausの例)
| リターンコード | Spamhausリスト | 意味 |
|---|---|---|
127.0.0.2 |
SBL | 確認されたダイレクトスパム送信元 |
127.0.0.3 |
SBL CSS | 自動化システムによって特定されたスパム送信元 |
127.0.0.4 |
XBL (CBL) | 侵害されたホスト(マルウェア、ボットネット、オープンプロキシ) |
127.0.0.10 |
PBL | エンドユーザーIPレンジ、直接メール送信をすべきでない |
詳細情報のためのTXTレコード
対応するTXTルックアップは、人間が読める説明と通常、デリスティング用のURLを返します:
クエリ: 42.113.0.203.zen.spamhaus.org TXT 応答: "Listed at https://www.spamhaus.org/query/ip/203.0.113.42"
ドメインベースの検索
Spamhaus DBLやSURBLなどの一部のリストは、IPではなくドメイン名をリストします。ドメインはリストゾーンに直接追加されます:
クエリ: baddomain.example.dbl.spamhaus.org A 応答: 127.0.1.2 (スパムドメイン)
主要な技術的詳細
メールで使用される主要なDNSBL
| リスト | 種類 | 何がリストされるか |
|---|---|---|
| Spamhaus ZEN | IPブロックリスト | SBL + XBL + PBLを統合(最も広く使用されている) |
| Spamhaus DBL | ドメインブロックリスト | スパムコンテンツとヘッダーで見つかったドメイン |
| Barracuda BRBL | IPブロックリスト | Barracudaハニーポットへスパムを送信するIP |
| SpamCop | IPブロックリスト | SpamCopユーザーが報告したIP(自動期限切れ) |
| SURBL | URIブロックリスト | スパムメッセージ本文で見つかったドメイン |
| dnswl.org | IPホワイトリスト | 確認済み正規メール送信元(DNSWL) |
クエリメカニクス
- 127.0.0.0/8での応答 — IPはリストされています。特定のアドレスは理由をエンコードします。
- NXDOMAIN — IPはリストされていません。これはクリーンIPの予想される応答です。
- SERVFAIL / タイムアウト — リストに到達できません。停止中にすべてのメールをブロックするのを避けるため、「リストされていない」として処理される必要があります。
- 127.255.255.254 — 一部のリストはDNSが機能していることを確認するため、テストクエリに対してこれを返します。
IPv6サポート
IPv6アドレスは完全な32ニブル形式に展開され、ニブル単位で逆順になり、ゾーンに追加されます。例えば、2001:db8::1は以下のようになります:
クエリ: 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.zen.spamhaus.org A
よくある間違い
- DNS障害時にメールをブロックする。DNSBLクエリがタイムアウトしたり、SERVFAILを返したりした場合、正しいアクションはIPを「リストされていない」として処理することです。リストに到達できないためメールをブロックすると、リスト停止中に大量の偽陽性が発生します。
- 自分のIPをプロアクティブにチェックしない。送信IPがSpamhausやBarracudaにリストされた場合、通知を受け取ることはありません。自動化されたチェックで定期的にIPを監視してください。
- PBLリスティングを無視する。Spamhaus PBLは、エンドユーザーアクセス用に指定されたIPレンジをリストします(住宅用ブロードバンド、モバイル)。PBLにいることはスパマーであることを意味しません。許可されたメールリレー経由で送信する必要があり、直接送信すべきではないということを意味します。
- 同時に多すぎるDNSBLを使用する。各リストは異なるポリシー、精度、偽陽性率を持っています。不透明または保守が不十分なリストを使用すると、偽陽性が増加します。確立されたリストに固執してください。
- 問題を解決した後、デリスティングをリクエストしない。ほとんどのDNSBLは、根本的な問題を修正した後、デリスティングリクエストを送信する必要があります。SpamCopなど一部は自動期限切れされますが、Spamhaus SBLなど他のリストは手動でのアクションが必要です。
配信可能性への影響
- DNSBLリスティングは配信可能性の緊急事態です。Spamhaus SBLリスティングは、ほとんどの主要なメールボックスプロバイダーとエンタープライズゲートウェイで即座の拒否を引き起こします。主要なDNSBLへのリスティングは、送信インフラストラクチャに対する単一で最も影響力のある否定的なイベントです。
- 複数のリストが効果を複合します。多くのスパムフィルタはスコアリングシステムを使用します。1つのDNSBLにリストされるとポイントが追加され、2つまたは3つにリストされるとスパム閾値を超える可能性があります。1つのリスティング単独ではあなたをブロックしなかったとしても。
- DNSWLは正の信用を提供します。dnswl.orgまたは同様のホワイトリストにリストされることは、正の信用シグナルをあなたに与えます。一部の受信システムはこれを使用して、既知の良好な送信元の配信を高速化します。
- 共有IPはリスクを増幅します。共有IPアドレスから送信する場合、別の送信元の悪い行動がIPをリストに登録させる可能性があり、あなたの配信可能性に影響します。これは大量送信元の専用送信IPの主な利点です。
- 監視は非交渉です。送信IPを毎日主要なDNSBLに対してチェックしてください。多くの配信可能性監視サービスはこれを自動化します。リスティングを早期に(数時間以内に)キャッチすると、ダメージが制限されます。