Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
DNSルックアップの回数制限でハマった話
Search
Ken Kato
July 16, 2024
Technology
790
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
DNSルックアップの回数制限でハマった話
Ken Kato
July 16, 2024
More Decks by Ken Kato
See All by Ken Kato
Blue/Green Deployment を用いた PostgreSQL のメジャーバージョンアップ
kkato1
1
330
Datadog RUMを導入するまで
kkato1
0
160
初めてのPostgreSQLメジャーバージョンアップ
kkato1
0
2.3k
ウォンテッドリーのマイクロサービス運用・開発を加速する kube
kkato1
0
360
PostgreSQLのVACUUMとは
kkato1
3
3.5k
論理レプリケーションを使ったDB統合
kkato1
0
1.3k
ウォンテッドリーにおけるk8sマニフェストの管理方法
kkato1
0
360
入社後初めてのタスクでk8sアップグレードした話.pdf
kkato1
1
910
Other Decks in Technology
See All in Technology
AIは推し活である。
kurazuuuuuu
1
950
AIによるクリエイティブ生成を行う上での試行錯誤
plaidtech
PRO
0
180
AIエージェントの自己改善をどう設計するか / How to Design Self-Improvement for AI Agents
22mi
25
17k
作って終わりじゃないサーバーレス 〜9年運用する大規模EC物流API基盤の設計・運用のリアル〜
zozotech
PRO
0
460
絵ではじめるKubernetesセキュリティ
aoi1
4
700
GoのInterface内部構造から学ぶ!最高パフォーマンスを出すコード設計
yappli_developers
1
250
AIエージェントの権限管理 3: Agentic RAG の Fine grained access control 編
ren8k
0
200
Claude Codeを「使うほど育つ」AI秘書にするノウハウ
minorun365
PRO
33
31k
Issue 駆動でスペシャリストの意図を届ける、AI 実装のアクセシビリティ向上
thkt
0
130
なぜ「決定性」が 決定的に重要なのか? Durable Execution 基盤の数理的理解 #serverlessjp / ServerlessDays Tokyo 2026
ytaka23
3
1.2k
今話題のAI「Jev」って何? 宇宙最速で学ぶ会
minorun365
PRO
30
19k
俺の仕事は AIに奪われないし、たぶんその BIも要らない
hikaruri
0
540
Featured
See All Featured
Leo the Paperboy
mayatellez
10
2.3k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
370
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
280
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
480
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
It's Worth the Effort
3n
188
29k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
410
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
2.9k
How to Ace a Technical Interview
jacobian
281
24k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
Transcript
© 2024 Wantedly, Inc. DNSルックアップの回数制限で ハマった話 令和最新版 メールの技術LT会 / yabaibuki.dev
#1 July 16 2024 - Ken Kato
© 2024 Wantedly, Inc. 自己紹介 加藤 健 所属:ウォンテッドリー株式会社 職種:インフラエンジニア 趣味:ボルダリング
🧗 X: @kkato25
© 2024 Wantedly, Inc. はじめに
© 2024 Wantedly, Inc. SPFレコードとは? 送信サーバーのIPアドレスとDNS上のIPアドレス(SPFレコード)を比較して、 一致していることを確認する。 送信サーバー 受信サーバー SPFレコード
問い合わせ DNSサーバー
© 2024 Wantedly, Inc. DNSルックアップの回数制限とは? DNSルックアップ:DNSを使用して必要な情報を検索すること • ドメイン名 -> IPアドレス
(正引き) • IPアドレス -> ドメイン名 (逆引き) wantedly.com 3.113.203.192 DNSルックアップの上限は10回と決まっている。 • 制限の対象:「a」「 mx」「 include」「 redirect」 • 制限の対象外:「ip4」「ip6」
© 2024 Wantedly, Inc. 対策前 $ dig TXT +short wantedly.com
| grep spf | ggrep -oP 'include:\K[\-_a-z0-9.]+' _spf.google.com 1 email-wantedly2.wantedly.com 2 mail.zendesk.com 3 mktomail.com 4 _spf.salesforce.com 5 servers.mcsv.net 6 aspmx.pardot.com 7 cust-spf.exacttarget.com 8 $ dig TXT +short _spf.google.com | grep spf | ggrep -oP 'include:\K[\-_a-z0-9.]+' _netblocks.google.com 9 _netblocks2.google.com 10 _netblocks3.google.com 11 $ dig TXT +short aspmx.pardot.com | grep spf | ggrep -oP 'include:\K[\-_a-z0-9.]+' et._spf.pardot.com 12 $ dig TXT +short _spf.salesforce.com | grep spf | ggrep -oP exists:%{i.}.\K[\-_a-z0-9.]+' _spf.mta.salesforce.com 13 「include」に加えて「a」も 設定しているので、合計で 14回 DNSルックアップしている
© 2024 Wantedly, Inc. 対策案 対策案は以下の2つ • 使用していないSPFレコードを削除する ◦ 全て使用していて、これ以上削除できるものがない
• SPFレコードをフラット化する ◦ こちらを実施した SPFレコードのフラット化とは、includeの中身をあらかじめ展開すること。 $ dig TXT +short email-wantedly2. wantedly.com | grep spf | ggrep -oP ip[4|6]:[\-_:a-z0-9./]+' ip4:167.89.73.92 # この値をwantedly.com直下に「ip4」として持ってくる
© 2024 Wantedly, Inc. ハマったところ フラット化しすぎて、SPFレコードの文字数制限(1000文字)に引っかかった... なので、一部だけフラット化することにした
© 2024 Wantedly, Inc. 対策後 $ dig TXT +short wantedly.com
| grep spf | ggrep -oP 'include:\K[\-_a-z0-9.]+' _spf.google.com 1 _spf.salesforce.com 2 aspmx.pardot.com 3 cust-spf.exacttarget.com 4 $ dig TXT +short _spf.google.com | grep spf | ggrep -oP 'include:\K[\-_a-z0-9.]+' _netblocks.google.com 5 _netblocks2.google.com 6 _netblocks3.google.com 7 $ dig TXT +short _spf.salesforce.com | grep spf | ggrep -oP exists:%{i.}.\K[\-_a-z0-9.]+' _spf.mta.salesforce.com 8 $ dig TXT +short aspmx.pardot.com | grep spf | ggrep -oP 'include:\K[\-_a-z0-9.]+' et._spf.pardot.com 9 「a」も設定しているので、 合計で10回DNSルックアップして いる
© 2024 Wantedly, Inc. まとめ DNSルックアップの回数制限はハマりポイントが多くてヤバい • 回数制限は10回 • SPFレコードをフラット化することで回避できる
• 但しフラット化しすぎると、SPFレコードの文字数制限に引っかかる
© 2024 Wantedly, Inc. We are hiring! https://www.wantedly.com/projects/522096