Ubuntu下的网络发包和抓包工具

将最近在网络开发中用到的一些发包和抓包工具使用方法总结如下,作者总结不易,对你有帮助的请点赞、关注和收藏三联哦!

1.packEth发包工具的使用方法

     a.安装方法

sudo apt-get install packEth

    b.打开方法

#为了可以使用对应的网卡,需要sudo权限
sudo packEth

 

2.wireshark抓包工具的使用方法

    a.安装方法

sudo apt-get install wireshark

3.tcpdump抓包工具的使用方法

tcpdump是一个常用的命令行抓包工具,常用的命令参数如下:

tcpdump [-i netInterfave] -nnAX '表达式'

#各参数说明如下:

#    -i:interface 监听的网卡。
#    -nn:表示以ip和port的方式显示来源主机和目的主机,而不是用主机名和服务。
#    -A:以ascii的方式显示数据包,抓取web数据时很有用。
#    -X:数据包将会以16进制和ascii的方式显示。
#    表达式:表达式有很多种,常见的有:host 主机;port 端口;src host 发包主机;dst host 
#    收包主机。多个条件可以用and、or组合,取反可以使用!,
#    更多的使用可以查看man 7 pcap-filter。

举例如下:

    a.监听网卡eth0

tcpdump -i eth0

    b.指定监听协议,例如监听udp

tcp -i eth0 -nn 'udp'


#得到的结果如下

#tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
#listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
#11:22:47.348922 IP 192.168.1.210.8766 > 255.255.255.255.8766: UDP, length 12
#11:22:47.849425 IP 192.168.1.210.8766 > 255.255.255.255.8766: UDP, length 12
#11:22:48.089639 IP 192.168.1.27.50043 > 224.2.2.2.8995: UDP, length 30
#11:22:48.349601 IP 192.168.1.210.8766 > 255.255.255.255.8766: UDP, length 12
#11:22:48.850571 IP 192.168.1.210.8766 > 255.255.255.255.8766: UDP, length 12
#11:22:49.089080 IP 192.168.1.27.50043 > 224.2.2.2.8995: UDP, length 30
#11:22:49.349356 IP 192.168.1.210.8766 > 255.255.255.255.8766: UDP, length 12
#11:22:49.848827 IP 192.168.1.210.8766 > 255.255.255.255.8766: UDP, length 12
#11:22:50.089087 IP 192.168.1.27.50043 > 224.2.2.2.8995: UDP, length 30
#11:22:50.349713 IP 192.168.1.210.8766 > 255.255.255.255.8766: UDP, length 12
#11:22:50.849158 IP 192.168.1.210.8766 > 255.255.255.255.8766: UDP, length 12
#11:22:51.088922 IP 192.168.1.27.50043 > 224.2.2.2.8995: UDP, length 30
#11:22:51.349945 IP 192.168.1.210.8766 > 255.255.255.255.8766: UDP, length 12

#13 packets captured
#127 packets received by filter
#30 packets dropped by kernel

#内容依次为时间/发包ip和port/收包ip和port/协议/包的长度

  c.一些其他的用法

#监听指定的主机
tcpdump -i eth0 -nn 'host 192.168.1.231'


#监听指定主机发送的包,这样只有192.168.1.111这台主机发送的包才会被抓取。
tcpdump -i eth0 -nn 'src host 192.168.1.111'

#监听指定主机接收的包,这样只有192.168.1.111这台主机接收到的包才会被抓取
tcpdump -i eth0 -nn 'dst host 192.168.1.111'


#监听指定端口,结合-A参数,在web开发中,非常实用
tcpdump -i eth0 -nnA 'port 8765'

#监听指定主机和端口,多个条件可以用and,or连接。如监听192.168.1.231主机通过80端口发送的数据包
tcpdump -i eth0 -nnA 'port 80 and src host 192.168.1.231'

#监听除某个端口外的其它端口,可以使用“!”符号,如监听非22端口的数据包。
tcpdump -i eth0 -nnA '!port 22'

参考连接:

1. Linux使用tcpdump抓取网络数据包示例

2. packETH发包工具使用教程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值