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
ロードバランサーの種類に応じた使い分け / How to use different type...
Search
TomoyaKitaura
September 29, 2020
Technology
0
120
ロードバランサーの種類に応じた使い分け / How to use different types of load balancers
09/30に発表した資料です。
TomoyaKitaura
September 29, 2020
Tweet
Share
More Decks by TomoyaKitaura
See All by TomoyaKitaura
New Relicの推せるところ・推せないところ / newrelic good and bad
tomoyakitaura
0
140
サービスレベルを管理してアジャイルを加速しよう!! / slm-accelerate-agility
tomoyakitaura
1
290
「頑張る」を「楽しむ」に変換する技術
tomoyakitaura
18
11k
これからの設計で変わること pre:invent2024アップデート速報 / pre:invent2024 network update
tomoyakitaura
1
260
セキュリティ活動をちょっとずつやる戦略を実行した気づき / Incremental Security Initiatives
tomoyakitaura
0
200
社内共通コンテナレジストリを設立して、開発者体験向上を狙ってみた /Establishing container registry to improve DX
tomoyakitaura
2
210
LTワークショップ3日目 / LT Workshop Day 3
tomoyakitaura
0
190
LTワークショップ2日目 / LT Workshop Day 2
tomoyakitaura
0
170
LTワークショップ(1日目) / LT workshop day 1
tomoyakitaura
1
210
Other Decks in Technology
See All in Technology
Flutter DevToolsで発見! 本番アプリのパフォーマンス問題と改善の実践
goto_tsl
1
170
Black Hat USA 2025 Recap ~ クラウドセキュリティ編 ~
kyohmizu
0
490
Sansan BIが実践する AI on BI とセマンティックレイヤー / data_summit_findy
sansan_randd
0
130
こんな時代だからこそ! 想定しておきたいアクセスキー漏洩後のムーブ
takuyay0ne
4
500
[2025-11-06] ベイズ最適化の基礎とデザイン支援への応用(CVIMチュートリアル)
yuki_koyama
1
510
エンジニア採用と 技術広報の取り組みと注力点/techpr1112
nishiuma
0
120
「データ無い! 腹立つ! 推論する!」から 「データ無い! 腹立つ! データを作る」へ チームでデータを作り、育てられるようにするまで / How can we create, use, and maintain data ourselves?
moznion
2
210
なぜインフラコードのモジュール化は難しいのか - アプリケーションコードとの本質的な違いから考える
mizzy
14
2.6k
今日から使える AWS Step Functions 小技集 / AWS Step Functions Tips
kinunori
5
640
最近読んで良かった本 / Yokohama North Meetup #10
mktakuya
0
1.4k
re:Invent完全攻略ガイド
junjikoide
0
220
Zabbix Conference Japan 2025 ダッシュボードコンテストLT
katayamatg
0
150
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.3k
How STYLIGHT went responsive
nonsquared
100
5.9k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Facilitating Awesome Meetings
lara
57
6.6k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
[RailsConf 2023] Rails as a piece of cake
palkan
57
6k
Mobile First: as difficult as doing things right
swwweet
225
10k
Context Engineering - Making Every Token Count
addyosmani
8
360
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Transcript
ϩʔυόϥϯαʔͷ छྨʹԠ͍͚ͨ͡ 2020/09/30 Tech Talk ͖ͨ͏Β
ΞδΣϯμ 2 1.ෛՙࢄͱ 2.ෛՙࢄͷछྨ 3.L4ͱL7 4.ෛՙࢄํࣜͦΕͧΕͷϝϦοτσϝϦοτ 5.·ͱΊ
ෛՙࢄͱ 3 ҰݴͰ͍͏ͳΒ Մ༻ੑΛߴΊΔͨΊͷख๏
͜ͷੈʹෛՙࢄ͕ଘࡏ͠ͳ͔ͬͨΒ 4 - 1ͷαʔόʔͰؤுΒͳ͍ͱ͍͚ͳ͍ - ෳͷαʔόʔΛ༻ҙͨ͠ͱͯ͠ϦΫΤετͷΓ ସ͑Ͳ͏͢Δ - ෳͷ͏ͪɺ1͕ࢮΜͩΒͦͷαʔόʔʹϦΫΤ ετΛૹΓͨ͘ͳ͍
- ෳͷαʔόʔΛ༻ҙͨ͠ͱͯ͠ɺϦΫΤετΛۉ ʹࡹ͚ͳ͍ͱ̍͋ͨΓͷཁٻεϖοΫ͕ߴ͘ͳΔ
5 ݺΜͩʁ
ෛՙࢄํࣜͷछྨ 6 https://www.infraexpert.com/study/loadbalancer4.html
ෛՙࢄͷछྨ 7 - DNSϥϯυϩϏϯ - L4ϩʔυόϥϯγϯά - L7ϩʔυόϥϯγϯά
8 L4? L7? ʢWireSharkσϞʣ
9 ͰɺͲΕΛ͍͍͑ͷʁ
DNSϥϯυϩϏϯ 10 υϝΠϯͷࡧҾ࣌ʹIPΞυϨεΛ ަޓʹฦ͢ͱ͍͏ํ๏ ϝϦοτɿDNSͷઃఆม͑Δ͚ͩͳͷͰ͓खܰ σϝϦοτɿ୯ମͰࢮ׆ࢹ͕Ͱ͖ͳ͍ɻ ɹɹɹɹɹɹηογϣϯཧͰ͖ͳ͍ɻ
L4ϩʔυόϥϯγϯά 11 L4ͷػೳΛͬͨෛՙࢄΛߦ͏ɻ TCPηογϣϯ͕LBͰऴ͠ͳ͍ͷͰ SourceIPͱPort͕λʔήοτ·Ͱอ࣋͞ΕΔɻ DestinationIPΛॻ͖͑͢ΔํࣜͷNATϩʔυόϥϯαͱ L2ػೳΛͬͨDSRํࣜͷϩʔυόϥϯα͕ଘࡏ͢Δɻ AWSͷNLBNATํࣜͰHyperplaneͱݺΕΔಛघͳAWSಠࣗ ͷෛՙࢄٕज़͕࠾༻͞ΕͯΔɻ
L4ϩʔυόϥϯγϯά 12 ϝϦοτɿLBࣗମͷIPΛݻఆͰ͖Δɻ ɹɹɹɹɹߴՄ༻ੑɺߴεϧʔϓοτɺϨΠςϯγ ɹɹɹɹɹSource IPͱPort·Ͱอ࣋͞ΕΔɻ ɹɹɹɹ ʢX-Forwarded-For͕ෆཁʣ σϝϦοτɿL7ϩʔυόϥϯαͷΑ͏ʹ ث༻ͳϧʔςΟϯά͕ઃܭͰ͖ͳ͍ɻ
L7ϩʔυόϥϯγϯά 13 L7ʢHTTP/HTTPSʣͷػೳΛͬͨෛՙࢄΛߦ͏ɻ ͳΜͱ͍ͬͯߴͳϦΫΤετϧʔςΟϯά͕Ͱ͖Δɻ
L7ϩʔυόϥϯγϯά 14 ɾύεϕʔεϧʔςΟϯά -> example.com/game example.com/lobby ɾϗετϕʔεϧʔςΟϯά -> game.example.com lobby.example.com
ɾHTTPϔομʔϕʔεϧʔςΟϯά -> UserAgent͕Safari͔Chrome͔ ɾΫΤϦจࣈྻϕʔεϧʔςΟϯά -> example.com?version=v1 example.com?version=v2 ɾϧʔςΟϯάͷॲཧʹIFจ͕ॻ͚Δ
L7ϩʔυόϥϯγϯά 15 ϝϦοτɿհͨ͠௨Γ͍ΖΜͳϧʔςΟϯά͕Ͱ͖Δɻ σϝϦοτɿNLBͷϝϦοτͷཪฦ͠
16 ·ͱΊ
17 - ωοτϫʔΫͷཁ͕݅ߴ͍߹L4ϩʔυόϥϯαʔબ ࢶʹೖΔ͔͠Εͳ͍ɻ - ීஈ͍ΓॊೈͳϧʔςΟϯάϙϦγʔΛѻ͑ΔL7 ϩʔυόϥϯαʔ͕͍͍͢ɻ - ࠷৽ͷk8sߏͳͲͰαʔϏεσΟεΧόϦDNSϥϯυ ϩϏϯͱLBͷෳ߹ٕͰ͔͍͍ͬ͜ײ͡ʹͳ͍ͬͯΔΒ͍͠
18 ͝੩ௌ͋Γ͕ͱ͏ޚ࠲͍·ͨ͠