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
110
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
320
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
250
HTTPに新しいMethod! QUERY RFC10008
supurazako
0
40
あえてPHPでリアルタイム通信をやってみる
supurazako
0
430
標準化っていいな〜JANOGでの学び〜
supurazako
0
110
Other Decks in Technology
See All in Technology
kintoneで在庫管理システムを作るときの要件定義・設計ポイント
kai0707
0
190
You Have Agency(サンキュー、Ruby)
snoozer05
PRO
4
620
生き様としてのSRE
hokkai7go
0
140
Snowflake でできることが増えたら、 ABAC が必要になった
kaeton
0
120
構造で守らせる データ・法務・セキュリティ・開発チームとつくる AI時代のデータガバナンスとデータ基盤のリアル
legalontechnologies
PRO
2
690
ひとりで始めた AI駆動開発、チームに広げて何が変わったのか
kenichiodo
1
160
クラウドエージェントの先駆け Devin。今も最先端を走る、他との違い
kinopeee
1
520
AI時代、つくる力を自分たちの手に。 ──電通×KAG、アジャイルとAI駆動開発で挑む開発の変革
yuukiyo
3
440
Agent × Maestro で始める モバイル E2E 端末準備からテスト実行・結果確認まで
sansantech
PRO
0
240
これだけは抑えておきたい!後悔しない re:Invent の過ごし方 / AWS re:Invent 2026 prestudy
kinunori
2
590
E2Eってつらくないですか?E2Eの管理コストを下げる手段とその実践
akaboshinit
6
2.8k
【Oracle AI SPOTLIGHT ウェビナー】事例から見る!なぜOCIが選ばれたのか ― AI時代のクラウド戦略を紐解く ―
oracle4engineer
PRO
1
140
Featured
See All Featured
Joys of Absence: A Defence of Solitary Play
codingconduct
1
560
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Navigating Weather and Climate Data
rabernat
0
570
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
610
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
570
Mobile First: as difficult as doing things right
swwweet
225
10k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Exploring anti-patterns in Rails
aemeredith
4
550
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3.1k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.5k
Designing Powerful Visuals for Engaging Learning
tmiket
1
620
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の記事が出てきます
おまけ