不少時候須要網絡抓包分析,在iPhone上抓包稍有不一樣,下面介紹三種經常使用的方式。分析工具以wireshark爲例。html
步驟以下:spring
步驟以下:express
1. 下載tcpdump:從cydia搜索安裝tcpdump,若是沒有搜到,請先添加源http://apt.saurik.com。
2. 安裝openssh:從cydia搜索安裝openssh,若是沒有搜到,請先添加源http://apt.saurik.com。
3. 退出cydia,這會重啓機器或重啓springboard。
4. 在PC上經過ssh命令訪問手機,以root身份,root的初始密碼是alpine,例如:編程
ssh root@192.168.1.118
按提示輸入密碼以後,就遠程登陸到手機了(建議第一件事是用pwd當即改掉默認密碼),此時能夠執行tcpdump命令錄製網絡數據。緩存
5. tcpdump的簡單用法ruby
tcpdump -h 顯示幫助信息: Usage: tcpdump [-aAdDeflLnNOpqRStuUvxX] [-c count] [ -C file_size ] [ -E algo:secret ] [ -F file ] [ -i interface ] [ -M secret ] [ -r file ] [ -s snaplen ] [ -T type ] [ -w file ] [ -W filecount ] [ -y datalinktype ] [ -Z user ] [ expression ]
關於tcpdump的使用,網上不少,例如:http://blog.chinaunix.net/uid-20237628-id-3946009.html網絡
因爲tcpdump只是抓取數據,抓取的數據咱們要拿到PC上用wireshark或相似工具分析,所以 -w開關是必須的,它用來指定一個文件,該文件保存抓到的數據,隨後咱們就把這個文件拷貝到電腦上進行分析。ssh
-i 開關是最重要的,它指定要攔截的網絡接口,對於Wi-Fi,接口是en0,對於移動數字網絡,網絡接口是pdp_ip0。例如:tcp
tcpdump -s 0 -i pdp_ip0 -w ~/1.PCap
命令要求抓取移動網絡接口的數據,要完整數據包,要保存到~/1.PCap文件。工具
當須要結束時,用ctrl+z結束tcpdump命令,結束以後,緩存在內存的數據纔會徹底寫入文件。
6. 把文件拷貝到PC
用scp命令把文件拷貝到PC(或者ifunbox之類的工具拖拽更簡單):
scp root@192.168.11.211:~/1.PCap ./
7. 如今,能夠用wireshark打開1.PCap分析數據了。
總之,tcpdump很強大,也很複雜。以上我故意沒有貼圖,貼圖會讓篇幅很大,有點嚇人。
步驟:
1. 手機經過USB線鏈接到PC;
2. 查看手機的UDID,由於rvictl須要使用它。
能夠從iTunes看:
紅色區域若是不是UDID,點擊它。
用Xcode看更方便,window—>devices,而後選擇手機,如圖:
3. 創建鏈接
格式:rvictl -s
例如:
這樣,PC上就多了一個虛擬的端口rvi0。能夠用 -l參數查看有哪些虛擬端口:
好了,如今能夠用wireshark捕捉這個端口的數據了。啓動wireshark,並選擇網絡接口,如圖:
不管手機使用的是wifi仍是2g、3個、4g,如今你在wireshark裏都能實時看到數據了:
是否是很是方便?
4. 最後,好習慣是用完關閉:
rvictl -x <UDID>
如:
原文地址:http://blog.csdn.net/hewy0526/article/details/50996984