tcpdump学习
1、概述
tcpdump是linux下抓包工具,需要root或sudo权限。
2、抓包
-i:指定网卡(ifconfig查询安装了哪些网卡),any抓取所有网卡
port:指定端口号,使用dst src前缀,抓取指定方向数据包
-nn:ip和端口号不显示别名
-X -XX:显示包的内容
-S让包序列号以绝对值显示,不加-S包序列号会相对顺序显示
抓包场景一:三次握手
抓包场景二:客户端连接没有监听的端口
1、用nc命令启动服务器,监听3333端口
2、用nc命令启动客户端,连接4444端口
3、使用tcpdump抓4444端口的包
从图可以看出
第一次握手客户端发起[S](表示SYN包),发起连接请求
第二次握手服务器发送了一个[R](RST包,复位),表示连接被拒绝
客户端尝试几次连接请求,都收到RST包,所以最终的连接结构是"connection refused"
抓包场景三:四次挥手
学习链接:https://github.com/0voice