SlideShare ist ein Scribd-Unternehmen logo
1 von 109
WiFi Direct + VpnServiceでsim無し
Androidをweb世界に社会復帰させる話
空中清高
@soranakk
空中 清高 @soranakk
所属:株式会社ディー・エヌ・エー
オートモーティブ事業本部
MOV
Androidアプリエンジニア
背景
Android端末2台
1台はSIM刺さってる
1台はSIM刺さってない
SIM刺さってない端末でHTTP通信する
環境
WiFi Direct
Android device間でP2P通信ができる
前提1
VpnService
AndroidでVPNを繋ぐときに利用する
外部通信用のPacketが全て流れてくる
前提2
VpnService
Android端末2台
1台はSIM刺さってる
1台はSIM刺さってない
SIM刺さってない端末でHTTP通信する
環境
え??それテザリングでよくない??
● SSIDとpassの事前共有
● 接続端末のセキュリティ
● コスト
● WiFi Directとの共存
WiFi Directの使い方
WiFi Directの使い方
ここに詳しい解説記事があるので、
ぜひ読むとよいと思います!
WIFI DIRECTでP2P通信を行う(1)
https://techbooster.org/android/device/9960/
WIFI DIRECTでP2P通信を行う(2)
https://techbooster.org/android/device/9981/
WiFi Directの使い方(Client)
contextからWifiP2pManagerを取得する
wifiP2pManagerを初期化してwifiChannelを取得する
wifiChannelを使って周囲のデバイスを探索する
WiFi Directの使い方(Client)
結果をBroadcastReceiverで受け取る
4種類のActionがある
WiFi Directの使い方(Client)
・WIFI_P2P_STATE_CHANGED_ACTION
WiFi Directの利用可否が変わったことが通知されます
・WIFI_P2P_PEERS_CHANGED_ACTION
接続できるデバイスを検出したら通知されます
・WIFI_P2P_CONNECTION_CHANGED_ACTION
接続状態が変更されたときに通知されます
・WIFI_P2P_THIS_DEVICE_CHANGED_ACTION
自身の状態が変更されたときに通知されます
WiFi Directの使い方(Client)
WiFi Directの使い方(Client)
周囲のデバイス一覧を要求する
結果がPeerListListenerに返ってくる
WiFi Directの使い方(Client)
なんらかの方法で接続端末を選んで接続処理を行う
WiFi Directの使い方(Client)
接続設定を行ってconnectを呼び出す
connectの結果はさっきのBroadcastReceiverで受け取る
WiFi Directの使い方(Client)
接続に成功したら接続先(Host)の情報を要求する
結果がConnectionInfoListenerに返ってくる
WiFi Directの使い方(Client)
hostのaddressが取得できるので、
あとはSocketを開いてデータをやり取りする
WiFi Directの使い方(Server)
Clientとほとんど同じ
1.wifiManager.discoverPeersを呼び出して
Clientからの接続を待つ
WiFi Directの使い方(Server)
2.Clientから接続処理が行われると
WIFI_P2P_CONNECTION_CHANGED_ACTION
が飛んでくる
WiFi Directの使い方(Server)
3.ConnectionInfoListenerでaddressが取得できるので
あとはお好きなように
Socketの使い方なんて知らないよ?😅
Socketの使い方(Client)
Client側はIP Addressを指定してSocketを開く
inputStreamとoutputStreamが手に入るので入出力する
Socketの使い方(Server)
Server側はServerSocketを開いて接続されるまで待機
接続後は同じくin outが手に入るので入出力する
VpnServiceの使い方
VpnServiceの使い方
VpnServiceの使い方
VpnServiceを継承したクラスを作る
vpnInterfaceを作成するとfileDescriptorが手に入るので
これを使って入出力する
inputは端末から入力、outputは端末への出力
VpnServiceの使い方
Builderを使ってVpnの設定を行う
どの宛先の通信を捕まえるかやDNSサーバーの指定等
VpnServiceの罠1
VpnServiceでaddRoute(“0.0.0.0”, 0)を指定しても
DNSパケットはキャッチできない
VpnServiceの罠1
addDnsServer("8.8.8.8")のようになんらかのDNSServer
設定をしておくとキャッチできる
VpnServiceの罠2
パケットが無限ループしてしまう
VpnServiceの罠2
VpnServiceでaddRoute(“0.0.0.0”, 0)を指定すると
全ての通信をキャッチすることになる
→VpnServiceの中でのSocket通信でも
Socketに流したパケットをまたVpnServiceが捕まえる
パケットが無限にVpnServiceの中をさまよう
VpnServiceの罠2
SocketをVpnの対象から外す必要がある
まとめ
WiFi Direct
全体図
VpnService
SIM有
SIM無
Socket
よっしゃ、もう完成したね?😙
HTTPってどうやって動いてるの?🙄
問題1
そもそもHTTPの仕組みを知らない
→ 流れてくるbyteデータを解釈できない
→ Packetに分割できない
(例)WiFi Directで受け取った829byteに
何個のPacketデータが入ってる?
問題1
HTTP
TCP
IP
HTTPはTCPというプロトコル上で動いている
TCPはIPの上位プロトコルの一つ
HTTPの仕組み
・URLのHOSTを抽出
(例)http://host.com/fizz/buzz → host.com
・HOSTからIP addressを解決
・IP address宛てにTCP通信開始
・TCP上でHTTP通信を実行
Response 200 OKをもらったら成功
HTTP通信の仕組み
IP addressを元に通信する規格
お互いにuniqueなIP addressを持つ
IPの上で様々な通信プロコトルが動く
TCP, UDPなど
IP
IP Packet
IP Header
IP Payload
IP Packet
IP Packet
IP Header
IP Payload
IP Packet
TCP Header
TCP Payload
TCP Packet
IP Packet
IP Header
IP Payload
IP Packet
TCP Header
TCP Payload
TCP Packet
HTTP Data
IP Packet
IP Packet
IP Header
TCP Header
TCP Payload
WiFi Direct
全体図
VpnService
SIM有
SIM無
Socket
よっしゃ、もう完成したね?😙
Socketからのデータ足りなくない?🙄
問題2
WiFi Direct
全体図
VpnService
SIM有
SIM無
Socket
VpnService
Packetが丸ごと届く
JavaのSocket通信
PacketのHeaderが除かれて届く
問題2
JavaのSocketはHeaderの処理を
内部で行ってくれる
VpnServiceはHeaderも含め、すべての
Packetを入出力する
→ 無いものは作るしかない
Headerが無い
VpnService vs Socket
VpnService
IP Packet
IP Header
TCP Header
TCP Payload
VpnService vs Socket
Socket
TCP Payload
VpnService
SIM無
WiFi Direct
IP Header
TCP Header
TCP Payload
IP Header
TCP Header
TCP Payload
WiFi Direct SIM有
IP Header
TCP Header
TCP Payload
TCP Payload
Socket
WiFi Direct
IP Header
TCP Header
TCP Payload
IP Header
TCP Header
TCP Payload
Socket
TCP Payload
VpnService
SIM無
WiFi Direct
IP Header
TCP Header
TCP Payload
IP Header
TCP Header
TCP Payload
IP Packet
Source Address
Destination Address
Options
Payload
Header ChecksumTTL Protocol
Identification
Total Length
Flags Fragment Offset
Version IHL TOS
TCP Packet
Flags0 0 0
Acknowledgment number
Sequence number
Source port Destination port
Options
Urgent pointerChecksum
Window Size
Payload
Data offset
よっしゃ、もう完成したね?😙
HeaderだけのPacketが届くんだけど?😐
問題3
WiFi Direct
全体図
VpnService
SIM有
SIM無
Socket
3 way handshake
TCP接続を確立するときの処理で
Headerを使って処理する
問題3
3 way handshake
IP Header
TCP Header
A B
WiFi Direct
全体図
VpnService
SIM有
SIM無
Socket
TCP Packet
Flags0 0 0
Acknowledgment number
Sequence number
Source port Destination port
Options
Urgent pointerChecksum
Window Size
Payload
Data offset
TCP Packet
Flags0 0 0
Acknowledgment number
Sequence number
Source port Destination port
Options
Urgent pointerChecksum
Window Size
Payload
Data offset
TCP Packet
Flags
N
S
C
W
R
E
C
E
U
R
G
A
C
K
P
S
H
R
S
T
S
Y
N
F
I
N
TCP Packet
Flags
N
S
C
W
R
E
C
E
U
R
G
A
C
K
P
S
H
R
S
T
S
Y
N
F
I
N
3 way handshake
S
Y
N
VpnService SIM有
3 way handshake
S
Y
N
A
C
K
VpnService SIM有
3 way handshake
A
C
K
VpnService SIM有
よっしゃ、もう完成したね?😙
Packet渡しても動かないぞ?😢
問題4
TCPの応答確認
Packetが正常に送受信できているか
確認する仕組み
Headerを使って処理する
問題4
Checksum計算
Packetが正常に送受信できているか
確認する仕組み
Headerを使って処理する
問題4
Headerを使って処理する😇
TCP Packet
Flags0 0 0
Acknowledgment number
Sequence number
Source port Destination port
Options
Urgent pointerChecksum
Window Size
Payload
Data offset
TCP Packet
Flags0 0 0
Acknowledgment number
Sequence number
Source port Destination port
Options
Urgent pointerChecksum
Window Size
Payload
Data offset
Sequence number:送信済みデータ量
Acknowledgment number:受信済みデータ量
3 way handshakeのときに初期値を設定
TCPの応答確認
IP Packet
Source Address
Destination Address
Options
Payload
Header ChecksumTTL Protocol
Identification
Total Length
Flags Fragment Offset
Version IHL TOS
IP Packet
Source Address
Destination Address
Options
Payload
Header ChecksumTTL Protocol
Identification
Total Length
Flags Fragment Offset
Version IHL TOS
IP PacketのChecksumは
Header部分のみが対象
Payload部分は確認しない
(上位プロコトルに任せる)
IP PacketのChecksum計算
Checksumは1の補数という概念を
使って計算する
Checksum計算
1の補数??🙄
ある数の1の補数はビット反転した数
例として2bitの数を考えます
10 の1の補数は 01
11 の1の補数は 00
自身と1の補数との和は必ず 11 になる
1の補数
1の補数和と繰り上がり
1の補数和は繰り上がりが発生したら、
発生した回数だけ1を足す。
11 + 10 = 01 + 01 = 10
11 + 11 = 10 + 01 = 11
10 + 10 + 10 + 10 = 00 + 10 = 10
1.Checksumを0にする
2.1の補数和を計算する
3.計算した補数和の1の補数を取る
4.3で計算した値をChecksumにする
Checksum計算
1.1の補数和を計算する
2.計算した補数和の1の補数を取る
3.0になっていればチェックOK
Checksumの確認方法
TCP PacketのChecksumは
Header + Payload全体が対象
ただし、Headerは擬似Headerに
変換してから計算する
TCP PacketのChecksum計算
擬似Header??😶
TCP Packet
Flags0 0 0
Acknowledgment number
Sequence number
Source port Destination port
Options
Urgent pointerChecksum
Window Size
Payload
Data offset
チェックサム計算用TCP擬似ヘッダ
Flags0 0 0
Acknowledgment number
Sequence number
Source port Destination port
Options
Urgent pointerChecksum
Window Size
Payload
Data offset
Source Address
Destination Address
0 0 0 0 0 0 0 0 Protocol TCP length
よっしゃ、もう完成したね?😙
MTU設定とByteBuffer
一度の送信で最大どのくらいのサイズの
Packetを流すか
Headerを使って処理する
問題5
WiFi Direct
全体図
VpnService
SIM有
SIM無
Socket
BUFFER_SIZEを調節することで
間接的に設定できる
問題5
よっしゃ、もう完成したね?😙
IPv4 と IPv6
これまでの話は全てIPv4の話
そもそもIPv6はPacketの形が違う
問題6
IPv4とIPv6のどちらを使うかは動的
おそらくDNSのレスポンスのよいほうを
利用しているような動きをしている
問題6
ドメイン名からIP Addressを解決する
UDPを使って通信する
DNS
IP通信の上で動くプロトコル
TCPと対をなす存在
JavaでのUDPはDatagramSocketを使う
もちろんHeaderは無い
UDP
もちろんHeaderは無い😭
Port指定は両方ともある
UDPには3 way handshakeやSequence
numberによる接続確認は無い
TCP vs UDP
よっしゃ、もう完成したね?😙
まとめ
WiFi Direct
全体図
VpnService
SIM有
SIM無
Socket
Thank you
空中清高
@soranakk

Weitere ähnliche Inhalte

Was ist angesagt?

Domain Adaptation 発展と動向まとめ(サーベイ資料)
Domain Adaptation 発展と動向まとめ(サーベイ資料)Domain Adaptation 発展と動向まとめ(サーベイ資料)
Domain Adaptation 発展と動向まとめ(サーベイ資料)Yamato OKAMOTO
 
LEANSTARTUPアンチパターン #devlove #leanstartup
LEANSTARTUPアンチパターン #devlove #leanstartupLEANSTARTUPアンチパターン #devlove #leanstartup
LEANSTARTUPアンチパターン #devlove #leanstartupItsuki Kuroda
 
アジャイルジャーニー
アジャイルジャーニーアジャイルジャーニー
アジャイルジャーニーtoshihiro ichitani
 
【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならね
【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならね【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならね
【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならねUnityTechnologiesJapan002
 
ROSによるロボットソフトウェアの開発
ROSによるロボットソフトウェアの開発ROSによるロボットソフトウェアの開発
ROSによるロボットソフトウェアの開発Yuji Yamauchi
 
デプスセンサとその応用
デプスセンサとその応用デプスセンサとその応用
デプスセンサとその応用Norishige Fukushima
 
CNN-SLAMざっくり
CNN-SLAMざっくりCNN-SLAMざっくり
CNN-SLAMざっくりEndoYuuki
 
[DL輪読会] MoCoGAN: Decomposing Motion and Content for Video Generation
[DL輪読会] MoCoGAN: Decomposing Motion and Content for Video Generation[DL輪読会] MoCoGAN: Decomposing Motion and Content for Video Generation
[DL輪読会] MoCoGAN: Decomposing Motion and Content for Video GenerationDeep Learning JP
 
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術Unity Technologies Japan K.K.
 
アドテクに機械学習を組み込むための推論の高速化
アドテクに機械学習を組み込むための推論の高速化アドテクに機械学習を組み込むための推論の高速化
アドテクに機械学習を組み込むための推論の高速化MicroAd, Inc.(Engineer)
 
SLAM開発における課題と対策の一例の紹介
SLAM開発における課題と対策の一例の紹介SLAM開発における課題と対策の一例の紹介
SLAM開発における課題と対策の一例の紹介miyanegi
 
Open3DでSLAM入門 PyCon Kyushu 2018
Open3DでSLAM入門 PyCon Kyushu 2018Open3DでSLAM入門 PyCon Kyushu 2018
Open3DでSLAM入門 PyCon Kyushu 2018Satoshi Fujimoto
 
20190307 visualslam summary
20190307 visualslam summary20190307 visualslam summary
20190307 visualslam summaryTakuya Minagawa
 
Autoware: ROSを用いた一般道自動運転向けソフトウェアプラットフォーム
Autoware: ROSを用いた一般道自動運転向けソフトウェアプラットフォームAutoware: ROSを用いた一般道自動運転向けソフトウェアプラットフォーム
Autoware: ROSを用いた一般道自動運転向けソフトウェアプラットフォームTakuya Azumi
 
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Modelscvpaper. challenge
 
Unityで始めるバージョン管理 Git LFS 入門編
Unityで始めるバージョン管理 Git LFS 入門編Unityで始めるバージョン管理 Git LFS 入門編
Unityで始めるバージョン管理 Git LFS 入門編NAKAOKU Takahiro
 
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話Yuhei Miyazato
 
Intel RealSense for ROSConJP20221121.pdf
Intel RealSense for ROSConJP20221121.pdfIntel RealSense for ROSConJP20221121.pdf
Intel RealSense for ROSConJP20221121.pdfTakumi14
 
[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View SynthesisDeep Learning JP
 
Structured Light 技術俯瞰
Structured Light 技術俯瞰Structured Light 技術俯瞰
Structured Light 技術俯瞰Teppei Kurita
 

Was ist angesagt? (20)

Domain Adaptation 発展と動向まとめ(サーベイ資料)
Domain Adaptation 発展と動向まとめ(サーベイ資料)Domain Adaptation 発展と動向まとめ(サーベイ資料)
Domain Adaptation 発展と動向まとめ(サーベイ資料)
 
LEANSTARTUPアンチパターン #devlove #leanstartup
LEANSTARTUPアンチパターン #devlove #leanstartupLEANSTARTUPアンチパターン #devlove #leanstartup
LEANSTARTUPアンチパターン #devlove #leanstartup
 
アジャイルジャーニー
アジャイルジャーニーアジャイルジャーニー
アジャイルジャーニー
 
【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならね
【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならね【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならね
【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならね
 
ROSによるロボットソフトウェアの開発
ROSによるロボットソフトウェアの開発ROSによるロボットソフトウェアの開発
ROSによるロボットソフトウェアの開発
 
デプスセンサとその応用
デプスセンサとその応用デプスセンサとその応用
デプスセンサとその応用
 
CNN-SLAMざっくり
CNN-SLAMざっくりCNN-SLAMざっくり
CNN-SLAMざっくり
 
[DL輪読会] MoCoGAN: Decomposing Motion and Content for Video Generation
[DL輪読会] MoCoGAN: Decomposing Motion and Content for Video Generation[DL輪読会] MoCoGAN: Decomposing Motion and Content for Video Generation
[DL輪読会] MoCoGAN: Decomposing Motion and Content for Video Generation
 
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
 
アドテクに機械学習を組み込むための推論の高速化
アドテクに機械学習を組み込むための推論の高速化アドテクに機械学習を組み込むための推論の高速化
アドテクに機械学習を組み込むための推論の高速化
 
SLAM開発における課題と対策の一例の紹介
SLAM開発における課題と対策の一例の紹介SLAM開発における課題と対策の一例の紹介
SLAM開発における課題と対策の一例の紹介
 
Open3DでSLAM入門 PyCon Kyushu 2018
Open3DでSLAM入門 PyCon Kyushu 2018Open3DでSLAM入門 PyCon Kyushu 2018
Open3DでSLAM入門 PyCon Kyushu 2018
 
20190307 visualslam summary
20190307 visualslam summary20190307 visualslam summary
20190307 visualslam summary
 
Autoware: ROSを用いた一般道自動運転向けソフトウェアプラットフォーム
Autoware: ROSを用いた一般道自動運転向けソフトウェアプラットフォームAutoware: ROSを用いた一般道自動運転向けソフトウェアプラットフォーム
Autoware: ROSを用いた一般道自動運転向けソフトウェアプラットフォーム
 
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models
 
Unityで始めるバージョン管理 Git LFS 入門編
Unityで始めるバージョン管理 Git LFS 入門編Unityで始めるバージョン管理 Git LFS 入門編
Unityで始めるバージョン管理 Git LFS 入門編
 
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
 
Intel RealSense for ROSConJP20221121.pdf
Intel RealSense for ROSConJP20221121.pdfIntel RealSense for ROSConJP20221121.pdf
Intel RealSense for ROSConJP20221121.pdf
 
[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
 
Structured Light 技術俯瞰
Structured Light 技術俯瞰Structured Light 技術俯瞰
Structured Light 技術俯瞰
 

Ähnlich wie WiFi Direct + VpnServiceでsim無しAndroidをweb世界に社会復帰させる話

法政大学情報科学部 2012年度コンピュータネットワーク-第12回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第12回授業-Web公開用法政大学情報科学部 2012年度コンピュータネットワーク-第12回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第12回授業-Web公開用Ruo Ando
 
法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用Ruo Ando
 
法政大学情報科学部 2012年度コンピュータネットワーク-第8回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第8回授業-Web公開用法政大学情報科学部 2012年度コンピュータネットワーク-第8回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第8回授業-Web公開用Ruo Ando
 
YAPC::Asia2014 - O2O/IoT/Wearable時代におけるWeb以外のネットワーク技術入門
YAPC::Asia2014 - O2O/IoT/Wearable時代におけるWeb以外のネットワーク技術入門YAPC::Asia2014 - O2O/IoT/Wearable時代におけるWeb以外のネットワーク技術入門
YAPC::Asia2014 - O2O/IoT/Wearable時代におけるWeb以外のネットワーク技術入門Recruit Technologies
 
Hokkaido.cap#2 一般的なプロトコルのパケットを覗いてみよう
Hokkaido.cap#2 一般的なプロトコルのパケットを覗いてみようHokkaido.cap#2 一般的なプロトコルのパケットを覗いてみよう
Hokkaido.cap#2 一般的なプロトコルのパケットを覗いてみようPanda Yamaki
 
Openvswitch vps 20120429資料
Openvswitch vps 20120429資料Openvswitch vps 20120429資料
Openvswitch vps 20120429資料Daisuke Nakajima
 
URLから画面表示までに起こること6選.pdf
URLから画面表示までに起こること6選.pdfURLから画面表示までに起こること6選.pdf
URLから画面表示までに起こること6選.pdfkenshin
 
OpenStackネットワーキング管理者入門 - OpenStack最新情報セミナー 2014年8月
OpenStackネットワーキング管理者入門 - OpenStack最新情報セミナー 2014年8月OpenStackネットワーキング管理者入門 - OpenStack最新情報セミナー 2014年8月
OpenStackネットワーキング管理者入門 - OpenStack最新情報セミナー 2014年8月VirtualTech Japan Inc.
 
2011年度 新3年生向け
2011年度 新3年生向け2011年度 新3年生向け
2011年度 新3年生向けYuki Takahashi
 
BETTER TOGETHER 〜VMware NSXとJuniperデバイスを繋いでみよう!〜
BETTER TOGETHER 〜VMware NSXとJuniperデバイスを繋いでみよう!〜BETTER TOGETHER 〜VMware NSXとJuniperデバイスを繋いでみよう!〜
BETTER TOGETHER 〜VMware NSXとJuniperデバイスを繋いでみよう!〜Juniper Networks (日本)
 
Tremaで構築!中小企業の社内LAN #Tremaday 120419
Tremaで構築!中小企業の社内LAN #Tremaday 120419Tremaで構築!中小企業の社内LAN #Tremaday 120419
Tremaで構築!中小企業の社内LAN #Tremaday 120419エイシュン コンドウ
 
20120519 #qpstudy インターフェース入門
20120519 #qpstudy インターフェース入門20120519 #qpstudy インターフェース入門
20120519 #qpstudy インターフェース入門Hiyou Shinnonome
 
Microservice and agile development
Microservice and agile developmentMicroservice and agile development
Microservice and agile developmentKameda Harunobu
 
20220602コンピュータネットワーク.pdf
20220602コンピュータネットワーク.pdf20220602コンピュータネットワーク.pdf
20220602コンピュータネットワーク.pdfrisakitagawa
 

Ähnlich wie WiFi Direct + VpnServiceでsim無しAndroidをweb世界に社会復帰させる話 (14)

法政大学情報科学部 2012年度コンピュータネットワーク-第12回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第12回授業-Web公開用法政大学情報科学部 2012年度コンピュータネットワーク-第12回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第12回授業-Web公開用
 
法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用
 
法政大学情報科学部 2012年度コンピュータネットワーク-第8回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第8回授業-Web公開用法政大学情報科学部 2012年度コンピュータネットワーク-第8回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第8回授業-Web公開用
 
YAPC::Asia2014 - O2O/IoT/Wearable時代におけるWeb以外のネットワーク技術入門
YAPC::Asia2014 - O2O/IoT/Wearable時代におけるWeb以外のネットワーク技術入門YAPC::Asia2014 - O2O/IoT/Wearable時代におけるWeb以外のネットワーク技術入門
YAPC::Asia2014 - O2O/IoT/Wearable時代におけるWeb以外のネットワーク技術入門
 
Hokkaido.cap#2 一般的なプロトコルのパケットを覗いてみよう
Hokkaido.cap#2 一般的なプロトコルのパケットを覗いてみようHokkaido.cap#2 一般的なプロトコルのパケットを覗いてみよう
Hokkaido.cap#2 一般的なプロトコルのパケットを覗いてみよう
 
Openvswitch vps 20120429資料
Openvswitch vps 20120429資料Openvswitch vps 20120429資料
Openvswitch vps 20120429資料
 
URLから画面表示までに起こること6選.pdf
URLから画面表示までに起こること6選.pdfURLから画面表示までに起こること6選.pdf
URLから画面表示までに起こること6選.pdf
 
OpenStackネットワーキング管理者入門 - OpenStack最新情報セミナー 2014年8月
OpenStackネットワーキング管理者入門 - OpenStack最新情報セミナー 2014年8月OpenStackネットワーキング管理者入門 - OpenStack最新情報セミナー 2014年8月
OpenStackネットワーキング管理者入門 - OpenStack最新情報セミナー 2014年8月
 
2011年度 新3年生向け
2011年度 新3年生向け2011年度 新3年生向け
2011年度 新3年生向け
 
BETTER TOGETHER 〜VMware NSXとJuniperデバイスを繋いでみよう!〜
BETTER TOGETHER 〜VMware NSXとJuniperデバイスを繋いでみよう!〜BETTER TOGETHER 〜VMware NSXとJuniperデバイスを繋いでみよう!〜
BETTER TOGETHER 〜VMware NSXとJuniperデバイスを繋いでみよう!〜
 
Tremaで構築!中小企業の社内LAN #Tremaday 120419
Tremaで構築!中小企業の社内LAN #Tremaday 120419Tremaで構築!中小企業の社内LAN #Tremaday 120419
Tremaで構築!中小企業の社内LAN #Tremaday 120419
 
20120519 #qpstudy インターフェース入門
20120519 #qpstudy インターフェース入門20120519 #qpstudy インターフェース入門
20120519 #qpstudy インターフェース入門
 
Microservice and agile development
Microservice and agile developmentMicroservice and agile development
Microservice and agile development
 
20220602コンピュータネットワーク.pdf
20220602コンピュータネットワーク.pdf20220602コンピュータネットワーク.pdf
20220602コンピュータネットワーク.pdf
 

WiFi Direct + VpnServiceでsim無しAndroidをweb世界に社会復帰させる話