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
(やす)公衆無線LANを構築してみた話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
akatsukinewgrad
August 02, 2021
Programming
0
1.6k
(やす)公衆無線LANを構築してみた話
akatsukinewgrad
August 02, 2021
Tweet
Share
More Decks by akatsukinewgrad
See All by akatsukinewgrad
2023/1/25_QAテスター meet up!
akatsukinewgrad
0
150
成果発表資料.pdf
akatsukinewgrad
0
2.1k
広大なフィールドを気持ちよく駆け抜けるための技術.pdf
akatsukinewgrad
0
620
正規表現とReDoS.pdf
akatsukinewgrad
0
610
Unityで大量のオブジェクト_を吹き飛ばしたい.pdf
akatsukinewgrad
0
660
新卒2年目が思う1年目の学び.pdf
akatsukinewgrad
0
570
障害訓練の取り組みについて.pdf
akatsukinewgrad
0
750
7分でわかるアカツキゲームス
akatsukinewgrad
0
610
Bitcoinだけでスマートコントラクト.pdf
akatsukinewgrad
1
1k
Other Decks in Programming
See All in Programming
CSC307 Lecture 05
javiergs
PRO
0
500
生成AIを活用したソフトウェア開発ライフサイクル変革の現在値
hiroyukimori
PRO
0
110
AI によるインシデント初動調査の自動化を行う AI インシデントコマンダーを作った話
azukiazusa1
1
750
KIKI_MBSD Cybersecurity Challenges 2025
ikema
0
1.3k
Fluid Templating in TYPO3 14
s2b
0
130
今こそ知るべき耐量子計算機暗号(PQC)入門 / PQC: What You Need to Know Now
mackey0225
3
390
AIによる高速開発をどう制御するか? ガードレール設置で開発速度と品質を両立させたチームの事例
tonkotsuboy_com
7
2.4k
15年続くIoTサービスのSREエンジニアが挑む分散トレーシング導入
melonps
2
230
Lambda のコードストレージ容量に気をつけましょう
tattwan718
0
150
Vibe Coding - AI 驅動的軟體開發
mickyp100
0
180
Unicodeどうしてる? PHPから見たUnicode対応と他言語での対応についてのお伺い
youkidearitai
PRO
1
2.6k
並行開発のためのコードレビュー
miyukiw
1
1.3k
Featured
See All Featured
For a Future-Friendly Web
brad_frost
182
10k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
140
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
1
58
A Tale of Four Properties
chriscoyier
162
24k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
66
37k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
740
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Producing Creativity
orderedlist
PRO
348
40k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
120
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
450
Rails Girls Zürich Keynote
gr2m
96
14k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Transcript
自宅に公衆無線LANを構築し てみた話 Akatsuki 楊野 良智 1
自己紹介 • 名前: 楊野 良智 (やすの よしともと読みます ※よくある間違い: あげの ようの)
• 2020年新卒入社 • 職種: サーバーサイドエンジニア ◦ 主にアプリケーション側 • 趣味: ゲーム、アニメ、自転車 ◦ バイオハザード、Apex...etc ◦ 進撃の巨人、ガンダム、 Vivy, 86...etc ◦ 全盛期は埼玉~山中湖付近まで往復 200kmを一日で走ったり 2
カフェでスマホ弄る時によく見るこれ... 3
どういう仕組みなのか気になりませんか? 4
気になったので作りました 5
この技術を何というか 6
CaptivePortal 7
自宅でCaptivePortal機能付きのWifiを構築した 話 8
CaptivePortalとは? 9
CaptivePortalDetectionとは? • 接続する端末側でCaptivePortalを検知する技術 • OS毎に実装が異なる • iOSでは以下のようになっている ◦ Wifi接続後にcaptive.apple.comへアクセス ◦
インターネット接続が有効な場合は Successが返ってきて終了 ◦ それ以外のレスポンスの場合は CaptivePortalと見なし、リダイレクト先をポップアップとして表示す る 10
今回利用したもの • Raspberry Pi 4 Model B ◦ OS: Rasbian
◦ CaptivePortal機能: iptables ◦ dhcp-server: isc-dhcp-server ◦ アクセスポイント化: hostapd 11
iptablesによるCaptivePortal WiFi APへの通信はネット接続可能なeth0へFORWARDされている 12
iptablesによるCaptivePortal このFORWARDされるパケットを初回はCaptive Portal Serverへ移動させる 192.168.2.10 13
iptablesによるCaptivePortal 認証したらFORWARDを通すようにする 14
iptablesによるCaptivePortal 目的のサイトへ接続可能に! 15
デモ • 実際に実装したものなのでお見せしたいと思います! 16
17
大変だったこと • ネットワークインターフェイスの設定全くわからん... ◦ 0からの状態で始めたので勉強するのに少し時間がかかった ◦ インターフェイスとisc-dhcp-serverの起動順序問題 ◦ 設定してるのに再起動しても反映されてない、何もしてないのに直るなど ...
• 直前にAWSの認定試験があった ◦ LT会の1週間前に受験予定で並行して勉強するのが大変だった ◦ アソシエイトレベルだったので少し舐めていた部分があった (知らないサービスとか割と出題されて た) ◦ 結果受かってたので良かったです 18
最後に • 普段なんとなく使っている技術を追ってみると結構楽しい • 実装しながら勉強するとやってることのイメージがつかめて結構良かった • 実装はこちらに載せているので良かったら使ってみてください ◦ https://github.com/yasuno0327/raspberrypi-captive-portal 19
ご清聴ありがとうございました 20