最近做IM聊天,JAVA端socket推送的信息经常无法正常收到消息。已经几次用到远程抓包,所以记录下来,以后备用
我们需要用到的是rpcapd 和wireshark这两个软件
1、linux 下载rpcapd
#下载源代码包 git clone https://github.com/yvlf/rpcapd-linux.git
2、编译安装
在Ubuntu 系统编译安装:
sudo apt-get build-dep libpcap cd rpcapd/libpcap ./configure && make cd ../ make
在Centos/Fedora/Redhat系统编译安装:
Centos 这类系统需要将 Makefile 里面的 -static 删除掉,否则编译会报错!
yum install -y byacc glibc-static libgcrypt-devel cd rpcapd/libpcap ./configure && make cd ../ make
3、客户端使用
此工具将用于连接到Linux框的windows客户端。启动此工具使用
sudo ./rpcapd -4 -n -p <chosen_port>
默认情况下,可以指定数据传输端口而不是随机端口。
sudo ./rpcapd -4 -n -t <data_transfer_port> -p <chosen_port>
根特权需要捕获的接口。
有两种方法从Windows框连接:
在Wireshark捕获选项对话框使用的GUI。在Wireshark 1.7.1测试。
从commnd线指定调用Wireshark捕获接口直接:
wireshark -k -i rpcapd://<capture_box_ip>:<rpcapd_port>/<interface_to_capture>
-k
means start capture immedietly and -i
stands for interface. You can create a Windows shortcut or something afterwards.