• Disabling encryption
  • Other network debugging commands
  • On the desktop
  • Real time packet monitoring




    Download 1.28 Mb.
    bet95/95
    Sana22.12.2019
    Hajmi1.28 Mb.
    #4580
    1   ...   87   88   89   90   91   92   93   94   95

    Real time packet monitoring


    Execute the following if you would like to watch packets go by rather than capturing them to a file (-n skips DNS lookups. -s 0 captures the entire packet rather than just the header):

    adb shell tcpdump -n -s 0

    Typical tcpdump options apply. For example, if you want to see HTTP traffic:

    adb shell tcpdump -X -n -s 0 port 80

    You can also monitor packets with wireshark or ethereal, as shown below:

    # In one shell, start tcpdump.

    adb shell "tcpdump -n -s 0 -w - | nc -l -p 11233"
    # In a separate shell, forward data and run ethereal.

    adb forward tcp:11233 tcp:11233 && nc 127.0.0.1 11233 | ethereal -k -S -i -

    Note that you can't restart capture via ethereal. If anything goes wrong, you will need to rerun both commands.

    For more immediate output, add -l to the tcpdump command line, but this can cause adb to choke (it helps to use a nonzero argument for -s to limit the amount of data captured per packet; -s 100 is sufficient if you just want to see headers).


    Disabling encryption


    If your service runs over https, tcpdump is of limited use. In this case, you can rewrite some service URLs to use http, for example:

    vendor/google/tools/override-gservices url:calendar_sync_https_proxy \



    https://www.google.com/calendar rewrite http://android.clients.google.com/proxy/calendar

    Other network debugging commands

    On the device:

    On the desktop:


    • curl: fetch URLs directly to emulate device requests

    Download 1.28 Mb.
    1   ...   87   88   89   90   91   92   93   94   95




    Download 1.28 Mb.