网络排查案例课
zhaoseaside
树立个人IP,探索副业可能
展开
-
netstat的使用
命令查看系统中网络连接状态,可以从显示的Linux网络系统状态信息得知整个Linux系统的网络情况,包括网络连接、路由表、接口状态、伪装连接、网络链路和组播成员组等信息。可以看到监控中的服务器所有连接的程序名、程序识别码、IP地址。列出所有端口(包括监听和未监听的)。列出所有TCP端口。列出所有UDP端口。原创 2023-12-24 21:32:18 · 448 阅读 · 0 评论 -
网络的层次
第二种,操作系统把网络协议的部分处理好,程序员专注于自己的业务开发,不再考虑网络协议,你能想象其中的轻松吗?这种方法就是把复杂的网络通信划分出多层,不同层次有不同的职责,专心负责自己所在层次的问题,用“分而治之”的思想把一个“大部分”分解成数个“小部分”。第一种是从头到尾都是程序负责,那么最后都落到了进行开发的程序员团队肩上,你可以想象程序员心里的阴影吗?不能的话,你就可以想象一下当你开发程序的时候,你们团队中需要配置懂得HTTP、TCP、IP(还不只这些)等协议的人。为什么网络需要分层呢?原创 2023-10-16 21:19:33 · 171 阅读 · 0 评论 -
CentOS 7.6源码安装iftop
CentOS 7.6.1810源码安装iftop,依赖包基于Flex,Bison,libpcap。下载libpcap-devel-1.9.1-5.el8.x86_64.rpm。看一下依赖包是否安装完成。按Ctrl+C,可以退出。看一下操作系统的版本。发现如下,就是成功了。直接使用yum源安装。原创 2023-04-17 23:52:44 · 627 阅读 · 0 评论 -
OpenResty使用Lua搭建一个服务器实践tcpdump对特定端口抓包
安装yum-utils。添加OpenResty仓库。安装openresty。安装openresty-resty。原创 2023-05-22 23:48:17 · 259 阅读 · 0 评论 -
数据链路层和物理层(网络访问层)排查工具ethtool
在TCP/IP中,物理层和数据链路层合称为网络访问层,这里已经离应用层已经有点遥远了。但是一个可靠的数据链路层乃至物理层,是网络可靠性的基石。TCP 的传输可靠性是通过序列号、确认号、重传机制等来保证的,通过这种机制,TCP 可以在一定程度的网络不稳定场景下,依然保证传输可靠,但不等于 TCP 可以无限容忍底层的不稳定,因为各种 TCP 拥塞控制算法都会由于这种问题,而极大地降低传输性能。此文章为5月Day 21学习笔记,内容来源于极客时间。原创 2023-05-21 22:00:33 · 205 阅读 · 0 评论 -
网络传输层排查工具telnet和nc
再次执行,发现与老师的结果不一样了,搞不明白为什么。此文章为5月Day 19学习笔记,内容来源于极客时间。要测试 TCP 握手,可以使用的两个常规工具有。是可以选择下载的版本。原创 2023-05-19 23:26:04 · 94 阅读 · 0 评论 -
网络应用层排查工具——浏览器
在应用层,可以使用浏览器作为排查工具。原创 2023-05-18 23:44:34 · 174 阅读 · 0 评论 -
WireShark的简介与入手
1998 年,在网络公司工作的小伙杰拉尔德·库姆斯(Gerald Combs)发布了 Ethereal,本意是为了解决他自己在工作中解析网络协议的需求。后来因为他换了工作,而Ethereal的商标权还属于原来的公司,不得已就新启动了名为 Wireshark 的这个项目,继续他在这个工具上的投入。此文章为5月Day 22学习笔记,内容来源于极客时间。Wireshark既可以。原创 2023-03-26 14:06:44 · 88 阅读 · 0 评论 -
TCP 连接未必都是用TCP协议沟通
4个报文3次发送,这是因为服务端的 SYN 和 ACK 是合并在一起发送的,就节省了一次发送。这个在英文里叫 Piggybacking,就是背着走,搭顺风车的意思。SYN 会在两端各发送一次,表示“我准备好了,可以开始连接了”。ACK 也是两端各发送了一次,表示“我知道你准备好了,我们开始通信吧”。此文章为5月Day 22学习笔记,内容来源于极客时间。2.服务端收到 SYN 后,回复 SYN+ACK;3.客户端收到 SYN+ACK 后,回复 ACK。1.客户端发送 SYN;原创 2023-05-23 23:36:50 · 340 阅读 · 0 评论 -
网络层排查工具traceroute 和 mtr
除了可以直接用 ping 这个非常简便的工具以外,你还应该掌握另外两个能提供更为强大排查能力的命令——traceroute 和 mtr。此文章为5月Day 20学习笔记,内容来源于极客时间。原创 2023-05-20 23:51:55 · 317 阅读 · 0 评论 -
讲讲TCP/IP各层数据术语(协议数据单元)
上图中是TCP/IP数据术语,从上到下,层级依次上升,二层数据链路层数据术语是帧,IP层数据术语是分组,TCP层数据术语是数据包,应用层是消息。而数据包和报文是可以应用于各层的通用数据术语。数据链路层中的数据术语是“帧”,而帧包括帧头、载荷和帧尾。也是唯一有尾部的数据包(packet)。TCP的数据术语是段,英文称为TCP Segment。此文章为5月Day 15学习笔记,内容来源于极客时间。IP层的数据术语是分组,也就是狭义的packet。应用层的数据术语是消息,它在TCP层会被分段。原创 2023-05-17 23:32:10 · 448 阅读 · 0 评论 -
Windows 服务器加域报 RPC service unavailable
SYN_SENT 这个状态,意味着当时这个连接请求(SYN 包),已经从这台 Windows 服务器发出,试图跟远端的 AD 域控制器进行连接。但由于对端迟迟没有回应 SYN+ACK 报文,那么客户端这个连接的状态,就只能“停留”在 SYN_SENT 状态,无法转化为 ESTABLISHED 状态。这张图分别沿着左边和右边的垂直线从上往下看,就经历了客户端和服务端的 TCP 生命周期里的各种状态,这个过程中,视角保持一致。在Windows中,也可使用使用。原创 2023-05-24 23:33:28 · 271 阅读 · 0 评论 -
发送的数据还能超过接收窗口吗?
原先只有65535 字节的接收窗口,后来因为带宽越来越大,原先的 Window 字段还是保持不变,在 TCP 扩展部分也就是 TCP Options 里面,增加一个 Window Scale 的字段,它表示原始 Window 值的左移位数,最高可以左移 14 位。有一个案例是Redis 服务告诉客户端它的接收窗口是 190 字节,但是客户端居然会发送 308 字节,大大超出了接收窗口。此文章为5月Day 25学习笔记,内容来源于极客时间。原创 2023-05-25 23:27:56 · 98 阅读 · 0 评论 -
在应用层和网络层之间搭建桥梁
传输层:TCP 序列号(Sequence Number)、确认号(Acknowledgement Number)、MSS(Maximum Segment Size)、接收窗口(Receive Window)、拥塞窗口(Congestion Window)、时延(Latency)、重复确认(DupAck)、选择性确认(Selective Ack)、重传(Retransmission)、丢包(Packet loss)等。网络层:IP 的 TTL、MTU、跳数(hops)、路由表等。原创 2023-05-26 23:42:52 · 616 阅读 · 0 评论 -
WireShark的捕获条件格式
ip.addr eq my_ip:过滤出源IP或者目的IP为my_ip的报文。ip.dst eq my_ip:过滤出目的IP为my_ip的报文。ip.src eq my_ip:过滤出源IP为my_ip的报文。此文章为5月Day 26学习笔记,内容来源于极客时间。原创 2023-05-27 23:53:22 · 354 阅读 · 0 评论