组播风暴引起的路由系统重启(LLMNR协议)

网络拓扑

一台路由设备连接可以上网的上级,连接方式DHCP,一台中继器,2.4G和5G同时中继到路由设备(双频中继之后,优先走5G),一台chromecast播放视频,一台ipad连接,一台网络摄像头连接,一台PC连接,终端都是连接到中继器下级

问题描述

      使用过程中出现路由器自动重启

问题分析

1.路由器连接串口,top指令查看4核CPU有三个核占用率在90%以上,系统严重卡顿,sirq占用率超过60%

2.分析系统崩溃日志,发现CPU由于负载过高还有长时间被还在那用导致系统出现异常

20200924 11:16:38[169057.540000] INFO: rcu_sched self-detected stall on CPU
20200924 11:16:38[169057.540000]         2-...: (1 GPs behind) idle=311/140000000000001/0 softirq=15057951/15057953 fqs=2100 
20200924 11:16:38[169057.550000]          (t=2101 jiffies g=4642424 c=4642423 q=28772)
20200924 11:16:38[169057.560000] INFO: rcu_sched detected stalls on CPUs/tasks:
20200924 11:16:38[169057.560000]         2-...: (1 GPs behind) idle=311/140000000000001/0 softirq=15057951/15057953 fqs=2101 
20200924 11:16:38[169057.560000]         (detected by 1, t=2102 jiffies, g=4642424, c=4642423, q=28772)
20200924 11:16:38[169057.560000] Task dump for CPU 2:
20200924 11:16:38[169057.560000] ksoftirqd/2     R running      0    18      2 0x00100004
3.wireshark在PC端抓包,看到有LLMNR协议的组播包在疯狂攻击路由器,形成了组播风暴,所以由此判断路由异常是由于组播风暴导致

问题验证

1.将所有设备从中继器连接到路由器,没有任何异常,此时中继器未连接路由器

2.将中继器重新连接到路由器,问题立即出现,由此判断是由于中继器接入导致

3.分析中继器由于是双频同时连接,所以怀疑中继器接入导致环路,断开中继器2.4G连接,发现正常,所以由此判断是中继器2.4G和5G同时连接上级,中继器内部处理出现异常

总结

 遇到此类问题,可以先看下路由是否异常,先排除路由自身问题,然后再逐步缩小范围,同时配合wiresharek或者tcpdump抓包软件,看下是否有环路形成导致。

LLMNR协议介绍

https://blog.csdn.net/u013258415/article/details/77947610

https://blog.csdn.net/dayancn/article/details/44343131?utm_medium=distribute.pc_relevant.none-task-blog-baidulandingword-3&spm=1001.2101.3001.4242

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
LLMNR (Link-Local Multicast Name Resolution)、mDNS (Multicast DNS)和DNS (Domain Name System) 是三种常见的域名解析协议。 1. LLMNR (Link-Local Multicast Name Resolution) 是一种在局域网内解析域名的协议。它允许设备在没有 DNS 服务器的情况下进行名称解析。设备可以通过广播消息的方式向局域网内的其他设备查询域名,其他设备可以回应解析结果。LLMNR 主要用于 Windows 系统。 2. mDNS (Multicast DNS) 是一种基于多播的域名解析协议,用于在局域网内解析主机名和服务名称。它不需要依赖中央 DNS 服务器,而是通过在局域网内广播查询消息和回应消息的方式,实现设备之间的域名解析。mDNS 主要用于支持 Zeroconf(零配置网络)的设备,如 Apple 的 Bonjour 和 Linux 的 Avahi。 3. DNS (Domain Name System) 是互联网上最常用的域名解析协议。它是一个分布式的系统,用于将域名映射到对应的 IP 地址。当用户在浏览器中输入一个域名时,操作系统或本地域名服务器会向上级 DNS 服务器发送查询请求,逐级查询直到找到对应的 IP 地址。DNS 使用 UDP 或 TCP 协议进行通信,默认使用 UDP。它是互联网上的标准解析协议。 总结来说,LLMNR 和 mDNS 主要用于局域网内的域名解析,而 DNS 则是用于互联网上的域名解析。它们各自采用不同的机制和协议,但都能实现将域名解析为对应的 IP 地址。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wellnw

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值