TcpDump 抓包 传输数据包

简介:
TcpDump 抓包工具
(很容易的,别有压力,朋友)
1.首先看一下它的作用:TcpDump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,
  并提供and、or、not等逻辑语句来帮助你去掉无用的信息。


2.举个例子
 jason@jason-Inspiron-3542:~$ sudo tcpdump -i wlan0   -A   host 192.168.0.140  and port 8080
                                                    (1)                  (2)     (3)             (4)                           (5)  


(1)sudo :因为TcpDump的使用需要root权限,所以sudo一下,或者直接 sudo -s 后输入root密码,切换到root用户--> root@jason-Inspiron-3542:~$
(2)-i   : -i  (i 代表 interface) 指定tcpdump 需要监听的接口.  如果没有指定, tcpdump 会从系统接口列表中搜寻编号最小的已配置好的接口
      (不包括 loopback 接口).一但找到第一个符合条件的接口, 搜寻马上结束.
  -i eth0 : 只抓经过接口eth0的包
  -i wlan0 : 只抓取经过接口wlan0的包
(这里-i 后面接什么要看具体情况,终端下输入ifconfig显示如下:
root@jason-Inspiron-3542:~# ifconfig
eth0     Link encap:以太网  硬件地址 74:e6:e2:08:89:32  
         UP BROADCAST MULTICAST  MTU:1500  跃点数:1
        ......
lo        Link encap:本地环回  
         inet 地址:127.0.0.1  掩码:255.0.0.0                           
         inet6 地址: ::1/128 Scope:Host
......
wlan0     Link encap:以太网  硬件地址 4c:bb:58:1d:43:cf  
         inet 地址:192.168.0.140  广播:192.168.0.255  掩码:255.255.255.0
         inet6 地址: fe80::4ebb:58ff:fe1d:43cf/64 Scope:Link
        ......
一共有三个eth0、lo、wlan0


-i lo :不可用
-i wlan0 :以太网,必须wlan0端口选项inet地址才是可用的,这里wlan0中是有inet地址的,所以可用
-i eth0  : 以太网,必须eth0端口选项inet地址才是可用的,这里eth0中是没有inet地址的,(所以我这里是不可用)
(3)-A  表示以ASCII码方式显示每一个数据包(不会显示数据包中链路层头部信息). 在抓取包含网页数据的数据包时, 
  可方便查看数据(nt: 即Handy for capturing web pages).


(4)host 可以是一个ip地址, 也可以是一个主机名.


(5)port 8080:监听8080端口的数据传输包


监听主机192.168.0.140数据传输包
 sudo tcpdump -i wlan0 -t -A -s 0  host 192.168.0.140 




 sudo tcpdump tcp -i eth1 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.cap
(1)tcp: ip icmp arp rarp 和 tcp、udp、icmp这些选项等都要放到第一个参数的位置,用来过滤数据报的类型
(2)-i :指定监听的网络接口。 
-i eth1 : 只抓经过接口eth1的包
-i wlan0 : 只抓取经过接口wlan0的包
(3)-t : 不显示时间戳
(4)-s 0 : 抓取数据包时默认抓取长度为68字节。加上-S 0 后可以抓到完整的数据包
(5)-c 100 : count
只抓取100个数据包
(6)dst port ! 22 : 不抓取目标端口是22的数据包
(7)src net 192.168.1.0/24 : 数据包的源网络地址为192.168.1.0/24
(8)-w ./target.cap : 保存成cap文件,方便用ethereal(即wireshark)分析


异常:


1.tcpdump: WARNING: eth0: no IPv4 address assigned
  没有给 eth0 分配 IPv4 地址,输入ifconfig 查看 eth0 端口 IPv4的inet地址为空,
  则使用不了eth0端口,具体查看上文。
2.tcpdump: wlan0: You don't have permission to capture on that device
  说明你不是root用户操作,没有权限,切换到root用户就ok了
相关文章
|
3月前
|
存储 运维 安全
在Linux中,如何使用tcpdump和tshark进行实时数据包捕获?
在Linux中,如何使用tcpdump和tshark进行实时数据包捕获?
|
Shell 容器
使用tcpdump抓取容器中的数据包
学习记录下,容器的网络数据包抓取
718 0
|
网络协议 Linux Windows
使用tcpdump+wireshark抓包分析网络数据包
最近和学弟在调试一个GPRS通信模块,需求是通过GPRS模块通过http协议发送数据到服务器,但是http协议一直失败,服务器返回400,通过查询http状态码得知,http400错误是请求无效,因为GPRS模块没有实现http协议的封装,需要在TCP协议的基础上,手动拼装http格式的报文.
3911 0
|
网络协议 数据安全/隐私保护 Windows
|
6月前
|
运维 网络协议 安全
【Shell 命令集合 网络通讯 】Linux 网络抓包工具 tcpdump命令 使用指南
【Shell 命令集合 网络通讯 】Linux 网络抓包工具 tcpdump命令 使用指南
175 0
|
6月前
|
网络协议 Linux
Linux命令(120)之tcpdump
Linux命令(120)之tcpdump
85 0
|
Linux
linux下用tcpdump抓包
linux下用tcpdump抓包
|
4月前
|
网络协议 Linux
linux tcpdump 使用小结(二)
linux tcpdump 使用小结(二)
34 1
|
4月前
|
运维 监控 网络协议
Linux抓包命令tcpdump使用技巧大全
【7月更文挑战第10天】
121 5
Linux抓包命令tcpdump使用技巧大全