zoukankan      html  css  js  c++  java
  • 网络模拟与抓包

    介绍两个工具
    一.Network link Conditioner
    这个软件可以模拟各种网络情况 3G,DSL,EDGE,Wifi等,还可以自定义网络状况,用来测试各种不通网络环境下App的表现非常有用。
    不过XCode4.1以后不在随XCode工具提供,要单独下载,去这里搜吧,包含在Hardwre IO Tools中
    注意,开启时对整个系统有效,测试完毕记得停止它

    二.rvictl

    在iOS5中新引入了“远程虚拟接口(remote virtual interface ,RVI)“的特性,可以在Mac中建立一个虚拟网络接口来作为iOS设备的网络栈,这样所有经过iOS设备的流量都会经过此虚拟接口,此虚拟接口代替了iOS设备本身的协议栈,但并没有将网络流量中转到Mac本身的网络连接上,这样所有网络连接都是iOS设备本身的,Mac电脑本身连不联网或者连接的网络类型都没有关系,而iOS设备本身可以为任意网络类型,2G/3G/WiFi等。在Mac电脑上使用任意抓包工具抓取RVI接口上的数据包就可以看到iOS设备上的所有网络数据。
      1.USB连接iDevice到Mac上
      2.获取iDevice的UDID
      3.创建RVI接口
        $ rvictl -s <UDID>
      RVI的命名规则为 rvi0,rvi1...

      查看所开启的RVI
        $ rvictl -l

      可用如下命令查看
        $ ifconfig rvi0
      4.现在就用相关的抓包软件抓去这个rvi上的网路u哦连接吧
      5.使用结束移除RVI
        $ rvictl -x <UDID>
    注意:
      如果rvictl失败并提示 bootstrap_look_up(): 1102
      那可能是com.apple.rpmuxd没有正确启动,使用一下命令查看下
        $ sudo launchctl list com.apple.rpmuxd
      如果失败了,说明没有加载,你可以用下面命令强制加载
        $ sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.rpmuxd.plist


    参考:
    1.http://developer.apple.com/library/mac/#qa/qa1176/_index.html
    2.http://www.winddisk.com/2012/09/01/mac_capture_iphone_package_remote_virtual_interface/

  • 相关阅读:
    iOS API 概述
    iOS开发的一些奇巧淫技3
    iOS开发的一些奇巧淫技1&2
    iOS-一键拨号
    iOS层次架构
    简单block 和 代理
    iOS开发-单例GCD
    简单的归档、接档
    通知中心与本地通知
    安装linux centos 7.7 遇到 DRM:Pointer to TMDS table invalid
  • 原文地址:https://www.cnblogs.com/v2m_/p/2825549.html
Copyright © 2011-2022 走看看