【UDP】通过udp抓包排查网络问题

一、问题背景

pinpointServer: 192.168.1.110

环境应用节点,分布在两个网段:192.168.1.x    192.168.2.x

环境中应用节点的pinpoint agent通过向服务端 9999/tcp 上报节点信息,通过 向服务端 9995/udp  9996/udp 上报其他监控数据。

192.168.1.x 网段的应用节点,pinpoint节点、监控数据上报正常;

192.168.2.x 网段应用节点,pinpoint节点数据上报正常,但是没有监控数据的上报。

192.168.2.x 网段应用节点任选一些微服务,查看pinpointAgent 启动日志,都没有报错。

初步判断是 192.168.2.x 网段的 pinpoint agent 跟pinpoint server  udp 端口通讯有问题。

二、测试验证

pinpointServer                  192.168.1.110

任选一个pinpointAgent      192.168.2.11

在192.168.1.110 上

# tcpdump -i eth0  -nn -vv -X  udp port  9995  and  src  host  192.168

# tcpdump -i eth0  -nn -vv -X  udp port  9995  and  src  host  192.168.2.11

同时,在192.168.2.11上 

$ sudo yum -y install  nc

$ echo "Hello World\!" |  nc  -4u  192.168.1.110  9995

$ echo "Hello World\!" |  nc  -4u  192.168.1.110  9996

多次发送udp报文,并在192.168.1.110 上观察tcpdump的输出。

在192.168.1.110 上, 没有收到来自192.168.2.11 的任何upd数据报。

正常来自 192.168.1.x 网段udp数据报

# tcpdump -i eth0  -nn -vv -X  udp port  9995

# tcpdump -i eth0  -nn -vv -X  udp port  9995  and  src  host  192.168.1.115

至此,基本可以判断是192.168.2.x 网段的 pinpoint agent 跟pinpointServer  udp 端口通讯有问题。

因udp是面向无连接的,没有确认机制,对发送端而言,发送成功与否并不能直接知晓,我们没法用 telnet 或者 echo 测探,那么只能使用一方发,一方收的方式验证了。

跟网络的同事反馈,得知问题出在路由器交换机上,放开对udp限制,就ok了!

三、参考

How to check if UDP port on IP is open/avaible ?

https://www.jianshu.com/p/cdf7074be6f6

怎么使用 tcpdump 抓包分析

https://www.jianshu.com/p/fbed5f5046fe

关于 /dev/tcp/${HOST}/${PORT}

https://www.jianshu.com/p/f10736931b93

Linux上使用telnet测试目标端口连通性

https://www.jianshu.com/p/bd256a213227

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值