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
MinecraftにP2Pが来るぞ!
Search
Miyamoto Naoyuki
June 20, 2026
Technology
98
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
MinecraftにP2Pが来るぞ!
えびてく #7
Miyamoto Naoyuki
June 20, 2026
More Decks by Miyamoto Naoyuki
See All by Miyamoto Naoyuki
私がブラウザを自作したくなった理由
supurazako
1
300
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
220
HTTPに新しいMethod! QUERY RFC10008
supurazako
0
35
あえてPHPでリアルタイム通信をやってみる
supurazako
0
390
標準化っていいな〜JANOGでの学び〜
supurazako
0
100
Other Decks in Technology
See All in Technology
登壇の自信を奪う3匹のオバケ / 3 Ghosts That Rob You of Your Confidence in Public Speaking
pauli
8
950
顧客に向き合う開発組織へ。リアーキテクチャとフィーチャーチーム化で挑む組織改革
safie
0
1.9k
開発投資の期待値を上げるプロダクトロードマップづくり ~プロダクトエンジニアが越境して事業を伸ばす~
kekekenta
1
180
株式会社シーエーシー エンジニア向け会社紹介資料
cac
0
57k
Deployment の 先にある AI Agent 基盤 - kagent vNext、Agent Substrate、Hermes から読み解く Agent Runtime の現在地 / k8s-matsuri-2-ai-agent-platform-amsy810
masayaaoyama
3
580
AIネイティブプロダクトで顧客価値を最大化するプロダクトエンジニアとFDEの協働
righttouch
PRO
0
310
データ界隈LT祭 第1回LT登壇
taromatsui_cccmkhd
1
1.4k
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
12k
10分で知る最近のOmarchy
komagata
0
340
GoにおけるFFIのこれまでとこれから
goccy
5
3.5k
山手線を徒歩で一周してわかった、 位置情報アプリは「足」が最強のデバッガー
hinakko
0
160
積み重なった技術負債への挑戦 〜初手としての全社ゴト化〜
techtekt
PRO
0
1.2k
Featured
See All Featured
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
610
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
540
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
380
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
The agentic SEO stack - context over prompts
schlessera
0
940
Ruling the World: When Life Gets Gamed
codingconduct
0
330
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
How GitHub (no longer) Works
holman
316
150k
New Earth Scene 8
popppiees
4
2.6k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
500
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Typedesign – Prime Four
hannesfritz
42
3.2k
Transcript
2026-06-20 えびてく #7 MinecraftにP2Pが来るぞ! 宮本直幸@MSprzk
$ cat profile.service [Unit] Description=Self Introduction After=network.target [Profile] Name="Miyamoto Naoyuki"
Twitter="@Msprzk" Affiliation="北海道情報大学2年" Interest="Network",”Security”,”WebRTC”
None
MinecraftにP2Pがくるぞ!
従来(サーバが必要) 「P2Pがくる」とは 今後(P2Pも可能) ←なくてもOK 直接通信を行い、遊ぶことができる
自分でサーバーを建てる & 参加することの危険性 - ポート開放やUPnPが必要な場合がある - ルーターの設定が必要で、初心者には難しい - 設定をミスって意図しない通信を受け付ける可能性がある -
「友達と少し遊びたい」だけにしては重い - UPnPは便利だが、何が外に開くのか理解せずに使うのは危険
裏で動いている技術 - リアルタイム通信技術 - Zoom, Discord, オンラインゲームなどで 使われている - 基本的に、P2P前提(※)
(※) もちろん、P2Pだけではリアルワールドのサービスは成り立たないので、サーバクライアントモデルをできるよ うにSFUと呼ばれるものが存在したりする
WebRTCの仕組み
待ち合わせ: Signaling
- いきなりゲームデータは送れない - まず「どうつながるかの情報を交換する - これを signaling と呼ぶ Minecraftでは、Mojang側のサービスらしきものを 使っているように見えた
待ち合わせ: signaling
- 直接つながれるなら、そのままP2P接続 - 直接が無理な場合もある →ここからが面白いところです 繋げ方
直接つながらない!
NAT 直接つながらない 詳しく知りたい方はこちらをどうぞ https://www.infraexpert.com/study/ipsec15.html
P2Pを利用する上での問題: 解決策 通信できない
P2Pを利用する上での問題: 解決策 TURNサーバ 通信を迂回させる
P2Pを利用する上での問題: 解決策 TURNサーバ 通信を迂回させる あれ?サーバ必要じゃね?
P2Pだけど、サーバーは必要! Minecraft側がTURNサーバを用意している(太っ腹,多分) シグナリングサーバもMinecraft側(太っ腹,多分) まとめ
Minecraftの通信→TCP WebRTCの通信→UDP(正確にはSCTP) これをうまく流し込んでいるの面白そう 詳細はこちら→ MinecraftのP2Pを調べてみた Googleで[ Minecraft p2p ] でZennの記事が出てきます
おまけ