Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DNSルックアップの回数制限でハマった話
Search
Ken Kato
July 16, 2024
Technology
740
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
290
Datadog RUMを導入するまで
kkato1
0
110
初めてのPostgreSQLメジャーバージョンアップ
kkato1
0
2k
ウォンテッドリーのマイクロサービス運用・開発を加速する kube
kkato1
0
340
PostgreSQLのVACUUMとは
kkato1
3
3.5k
論理レプリケーションを使ったDB統合
kkato1
0
1.2k
ウォンテッドリーにおけるk8sマニフェストの管理方法
kkato1
0
340
入社後初めてのタスクでk8sアップグレードした話.pdf
kkato1
1
880
Other Decks in Technology
See All in Technology
Hatena Engineer Seminar 37 jj1uzh
jj1uzh
0
180
Agile and AI Redmine Japan 2026
hiranabe
4
500
Docker Desktop不要の時代が来る? WSL標準の「wslc」で Linuxコンテナを動かしてみた.
ueponx
0
170
SRE歴2ヶ月でも開発6年の知見を活かして、チームで止まっていた環境改善を前に進めた話
a_ono
0
110
5分でわかる Amazon Connect_20260608
hwangbyeonghun
0
130
作る力から、見極める力へ — AI時代に広がるエンジニアの価値と役割
rince
0
360
IaC コードを資産へ:AWS CDK 社内ライブラリと横断展開 / aws-summit-japan-2026
gotok365
10
1.6k
どうして今サーバーサイドKotlinを選択したのか
nealle
0
120
攻撃者がいなくてもAIエージェントはインシデントを起こす
nomizone
0
150
クレデンシャル流出 ― 攻撃 3 時間 vs 復旧 10 時間。この非対称性にどう備えるか
kazzpapa3
3
620
#エンジニアBooks 30分でわかる 「技術記事を書く技術」 / engineer-books 2026-06-30
jnchito
1
130
Multi-Agent並列開発を 安全に回すための技術 / Technology for Safely Multi-Agent Parallel Development
tooppoo
0
220
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Utilizing Notion as your number one productivity tool
mfonobong
4
330
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
250
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
620
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.1k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
170
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