Follow feeds: blogs, news, RSS and more. An effortless way to read and digest content of your choice.
Get Feederkawabangga.com
Get the latest updates from 卡瓦邦噶! directly as they happen.
Follow now 126 followers
Last updated 15 days ago
15 days ago
首先,通过这个抓包文件前几个包可以发现,服务器的网络是没有问题的,因为访问 DNS 或者 ubuntu apt 源都是通的。 这个问题有两个要点。第一点是,抓包文件并不是仅仅包含出问题的请求本身,还包含很多与问题无关的流量。不过现实的情况也往往如此,我们要在很多抓包和分析的时候过滤掉和问题无关的流量。 有一个非常好用的过滤方法,就是直接用 TCP 的 payload 内容进行过滤。比如,我们已经知道请求的目标是...
18 days ago
小明是一名网络工程师,有一天,同事报告问题说:自己的程序发送 HTTP 请求在测试环境好好的,但是在线上环境就总是超时,而且很容易复现,需要网络工程师的帮助。 这里的场景是,在线上运行环境,去用 HTTP 请求一个第三方(在这个例子中,是 example.com 提供的服务)。 首先,小明和同事一起复现了问题,确定超时确实存在,然后他们在请求发送方进行抓包,在抓包的同时又复现了一次超时的情况。拿到抓包文件,小明一看,立即就发现问题了所在了…… timeout-issue.pcap下载 请下载这个文件并分析超时问题的根因。(如果没有头绪,可以打开这个提示) ==计算机网络实用技术...
26 days ago
虽然这个系列的文章都是聚焦于如何通过分析网络抓包文件,结合网络知识,来解决实际的问题的,但是分析之前的步骤——抓包,也是同样重要!很显然,如果不会抓包,那么网络分析去分析什么呢? 抓得一手好包也是很厉害的!笔者遇到过很多次情况,虽然我们无法直接定位根因,但是同事能够精准地捕获到问题的现象,把问题描述给相关的网络专家,传给他们抓包文件,专家一看到准确的抓包文件,就可以很快解决问题了! 可惜的是,抓包的技巧无???像网络分析那样可以通过文章来出谜题,来让读者小试牛刀。所以,这篇文章就来写一下一些常用的抓包方式和技巧,希望能补齐这一块内容。 Tcpdump tcpdump 命令是我们最常用的抓包工具了1。 tcpdump -i eth0 icmp and host...
about 1 month ago
这个问题实际的原因是客户端的端口不够用了。 为什么端口会不够用呢?因为一个 TCP 连接的标志是四元组: (src ip, src port, dst ip, dst port)...
about 1 month ago
在之前的文章中介绍了网络的「分层」概念1,那么这一篇继续科普一下网络的基础,即「转发」这个概念。 所有的转发都是二层转发。 为什么这么说呢?从前面网络的分层中我们已经知道,四层的网络协议是基于一种三层协议的,三层协议的数据包需要二层协议来承载(毕竟,我们不可能直接把三层数据包不经过二层直接传给别人),然后二层协议的数据包通过物理层发出去。物理层就是通信技术的知识了,可以说,到网络工程师这里第一层数字信号就是二层。在我们平时使用抓包工具抓包的时候,看的最外层数据包一般都是二层的包。 从网络设备的工作原理上讲也是这样,一个 IP 包从 src 传到 dst,中间经过了各种各样的网络设备,那么从 src 发出到 dst...
about 1 month ago
小陈最近为团队的 HTTP 服务开发了一个高性能网关,用户的请求会先经过小陈开发的网关,网关对 HTTP Header 做一系列的校验,如果没有问题,会把请求转发给真实服务器(Real Server,简称为 RS)。网关经过测试,性能非常高,请求可以在 2ms 内完成转发。于是小陈很高兴,自己写的代码马上就能在线上服务十几万的真实用户了!现在,距离能够上线就差最后一步——压力测试,能不能支持十几万的用户同时在线,这时候就要拉出来溜溜了。 压力测试的时候发现,单机 QPS...
about 2 months ago
看到一个 Golang 的模式,用一个 function 来实现一个 interface,function 本身就是 interface 的实现。初次看到看了好久才想明白。在这里记录一下。 以 Golang 内置库中的...
about 2 months ago
网络系列文章许久不更新了,因为最近的工作比较忙,有很多其他的问题要解决。上个周花了很多时间研究 P2P,(和 web3 区块链无关的),(和民间 P2P 借贷也无关),(和下载盗版电影也无关,好吧,算是有点关系)。而且着实被「云原生」坑了一把,所以这篇文章介绍一下我们要解决什么问题,Spegel 这个项目是什么,怎么解决问题的。最重要的是…… 我会写一下如何从 0 启动并运行这个项目。读者可能会问,这不是按照项目的文档就能跑起来的吗?不是!这项目是云原生的,它居然没有文档,只有一个 Helm Charts1,命令行的参数看的云里雾里,如果不在...
2 months ago
pwru1 是排查 Linux 网络问题最好的工具,全称是 Packet where are you 它是怎么工作的呢? eBFP 可以让我们往 kernel...
4 months ago
上周遇到的一个问题很有意思,后来搜索相关的资料,找到的也比较少,感觉有必要记录一下。 问题的场景很简单:我们有两个路由设备同时发布了 10.81.0.0/16 的网段做 ECMP1,网络一切正常。拓扑如下图。现在,有一个新的 IP,只存在于 Router A 上,所以 Router A 宣告网段...
4 months ago
今年依旧是平静而充实的一年。 特别喜欢 Armin1 的这一段话: Whether it’s working on a project, solving a...
4 months ago
我和我的同事们排查网路问题非常喜欢 MTR,它是 traceroute 和 ping 的结合,可以快速告诉我们一个网络包的路径。是哪一跳丢包,或者延迟太高。 这些路径使用 IP 地址的形式表示的。没有人能记住这么多 IP 地址,所以我们需要有意义的名字。我在公司里写了一个平台,集成了其他的二十多个系统,给一个 IP,能查询出来这个...