カテゴリー
iPad iPhone Mac

iOS8でWi-Fiの不具合が起きている模様なのでMacでパケットキャプチャしてみた

Hacker

 どうやらiOS8のWi-Fiでネットワークがやたらと遅くなるという不具合が起きている模様。

iOS8のWi-Fiが遅い

 iPhone6でWi-Fiが遅いという話も上がっているようですが、うちのiPhone5sでもiPad Airでも起きているので、iOS8の問題のようです。

 ルーターはTime Capsuleを使っています。すべて再起動しても状況良くならず。しまいにはPS4のストリーミングももたつく始末。Nexus7から動画再生してみるとこちらは調子いい。ESファイルエクスプローラーというのを使っています。

 ネットで調べても同じような事は多発しているようなので、iOS8が治るまで待つしかなさそうですね。

もう少し突っ込んで調べてみた

 iPhoneもiPadもTime CapsuleのWi-Fiに繋がっていて、Time Capsuleではパケットダンプのツールとかは動かせないので、調べようがないなと思っていましたが、よくよく考えればMacBook Pro with Retina displayにはインターネット共有という機能がありWi-Fiルーターの代わりになるのでした。

 Thunderbolt Ethernetケーブルで宅内ネットワークにつないで、Wi-Fiを共有してtcpdumpコマンドを動かせばパケットキャプチャが出来きるはず。

パケットキャプチャの前準備

 Appleのページにtcpdumpの使い方書いてあるんですね。そんな専門的な事がAppleのページに書いてあるとは知らんかった。

Mac OS X:パケットトレースのキャプチャ方法

 今回、MacBook Pro with Retina displayのWi-FiにiPhoneを繋げるので、Wi-Fiのインターフェース名を確認しておきます。

 Spotlightなどから「システム情報」で検索してシステム情報アプリを起動すると、Wi-Fiのインターフェース名が分かります。うちは「en0」でした。

System02

 次にインターネット共有です。システム環境設定の中の共有を開きます。

System

 「共有する接続経路」は今回、有線のLANなので「Thunderbold Ethernet」です。「相手のコンピュータが使用するポート」はWi-Fiなので、Wi-Fiにチェックします。そのままだとパスワード無しなので、Wi-Fiオプションを開きます。

Share01

 パスワードに8文字以上のパスワードを設定してOK。

Share02

 戻ってきたら、「インターネット共有」をチェックします。

Share03

 警告が表示されて先に進むと、iPadなどから無線ルーター化したMacBook Pro with Retina displayのWi-Fiに接続出来ます。Wi-Fiの名前はデフォルトでコンピューター名になっています。

パケットキャプチャする

 あとはターミナルを起動して以下のコマンドを入力します。-iの後のen0はさっき調べたインターフェース名ですね。

sudo tcpdump -i en0

 管理者のパスワードを聞かれるので入力してenterです。

 画面になにやらたくさんの文字が流れていきます。時折「なるほど…」とかいいながら眺めてれば、「なんかこいつスゲえことやってるんじゃ」感が出せます。

 私も流れてる文字見てもよくわかりません(笑)

止める場合はcontrol + cです。

 調べてみると、やはりパケ詰まりしてるように見えます。ファイルサーバー(UbuntuでSambaサーバー動かしている)にある動画を再生しようとすると、途中まで調子いいのですが、しばらくすると流れが止まります。

21:11:40.636672 IP x.x.x.xx.microsoft-ds > x.x.x.x.49433: Flags [.], seq 264783657:264785105, ack 300824, win 4523, options [nop,nop,TS val 2818443 ecr 1047092061], length 1448WARNING: Packet is continued in later TCP segments
SMB PACKET: SMBreadX (REPLY)

↑こんなのが出た後にしばらく通信が途絶えて…

21:11:40.636673 IP x.x.x.x.microsoft-ds > x.x.x.x.49433: Flags [.], seq 264785105:264786553, ack 300824, win 4523, options [nop,nop,TS val 2818443 ecr 1047092061], length 1448SMB-over-TCP packet:(raw data or continuation?)

↑あとはこんなのがズラズラ出て動画が全く進まず。

 raw data or continuation?というのが出てる時というのは、何か問題が起きているということみたいなのですが、英語サイト見るの疲れたので、もうここであきらめました。

 ちなみに、Nexus7で同じ事試しましたが、通信が止まることはなかったです。ESファイルエクスプローラーというアプリ使ってますが、こちらは通信方式が違うのかログの出方が違って、バイナリのダンプがつらつら流れるんですよね。どうもストリーミングといいつつ裏で全部キャッシュしてしまうみたい。しばらくすると動画再生していても通信しなくなるので。

 しかし、頑張ってみたけど、原因分からず。iOS8のアップデートを待ちますか…。

この記事を書いた人: A-tak

A-tak.com(えいたっく どっとこむ)の管理人。
Apple野郎なおっさんでしたが、ちょっと最近のAppleには飽き気味。
A-tak.comは2002年2月から運営(前身のサイトは1999年3月から)。今年で18年目!

Youtube / Twitter / Mastodon / Facebook