发布于 5年前

Tcpdump示例教程(上)——基础知识

Tcpdump 可以帮助的网络故障排除和安全测试。了解tcpdump是一项必不可少的技能,可以为系统管理员,网络工程师或安全专业人员派上用场。

分析Tcpdump命令行

以下命令是在使用tcpdump过程中的常用参数。

:〜$ sudo tcpdump -i eth0  -nn  -s0  -v  port 80
  • -i:选择要进行捕获的接口,这通常是以太网卡或无线适配器,但也可能是一个vlan 或更不寻常的东西。如果只有一个网络适配器,并不一定需要。
  • -nn:单个(n)不会解析主机名。double(nn)不会解析主机名或端口。这不仅可以查看IP /端口号,还可以捕获大量数据,因为名称解析会降低捕获速度。
  • -s0:Snap length,是要捕获的数据包的大小。-s0将大小设置为无限制 , 如果要捕获所有流量,请使用此选项。如果您想从网络流量中提取二进制文件/普通文件,则需要。
  • -v:使用(-v)或(-vv)增加输出中显示的详细信息量,通常显示更多特定协议信息。
  • 端口80:这是一个常见的端口过滤器,只捕获端口80上的流量,当然通常是HTTP。

显示ASCII文本

添加-A到命令行将使输出包括ascii捕获中的字符串。这样可以轻松读取并使用grep其他命令解析输出。显示十六进制输出和ASCII的另一个选项是-X选项。

:〜$ sudo tcpdump -A -s0 port 80

捕获协议

过滤UDP流量。指定此另一种方法是使用协议17(udp)。这两个命令将产生相同的结果。tcp过滤器的等价协议是协议6。

:〜$ sudo tcpdump -i eth0 udp 
:〜$ sudo tcpdump -i eth0 proto 17

根据IP地址捕获主机

使用host过滤器将捕获到达(目标)和从(源)到IP地址的流量。

:〜$ sudo tcpdump -i eth0 host 10.10.1.1

或者,仅捕获使用src或单向传输的数据包dst。

:〜$ sudo tcpdump -i eth0 dst 10.10.1.20

写一个捕获文件

编写标准pcap文件是一种常见的命令选项。将捕获文件写入磁盘允许在Wireshark或其他数据包分析工具中打开该文件。

:〜$ sudo tcpdump -i eth0 -s0 -w test.pcap

线路缓冲模式

如果没有选项来强制线(-l)缓冲(或数据包缓冲的-C)模式下,你不会总是得到管道时预期的响应的tcpdump输出到另一个命令如grep。通过使用此选项,输出将立即发送到管道命令,在故障排除时立即响应。

:~$ sudo tcpdump -i eth0 -s0 -l port 80 | grep 'Server:'

组合过滤器

在这些示例中,您可以使用标准逻辑来组合不同的过滤器。

and or &&
or or ||
not or !

>>> 下篇 Tcpdump示例教程(下)——实例

译文地址 https://hackertarget.com/tcpdump-examples/

©2020 edoou.com   京ICP备16001874号-3