局域网中的设备发现协议:SSDP 和 mDNS 完整教程

局域网中的设备发现协议:SSDP 和 mDNS 完整教程

在本教程中,我们将介绍两种常见的局域网设备发现协议:SSDPmDNS 。这两种协议分别使用 239.255.255.250224.0.0.251 作为多播地址,广泛用于家庭和小型办公室网络中的设备自动发现与连接。

1. 什么是 SSDP?

SSDP(Simple Service Discovery Protocol) 是 UPnP(Universal Plug and Play)协议的一部分,主要用于设备发现。当设备(如智能电视、音箱、打印机等)接入网络时,它会通过 SSDP 向局域网广播自己的存在信息,这样其他设备就能发现它们并进行连接。

1.1 SSDP 的多播地址和端口
  • 多播地址 : 239.255.255.250
  • 端口: UDP 1900
1.2 SSDP 的工作原理
  1. 设备广播 :设备通过向 239.255.255.250:1900 发送 SSDP 广播包,告诉局域网中的其他设备它能提供的服务。
  2. 设备发现:其他设备接收到这些广播后,可以选择与它建立连接并使用其服务。
1.3 SSDP 的应用场景
  • 智能家居:智能音箱通过 SSDP 在网络中广播,手机应用程序可以自动发现音箱,进行设置和连接。
  • 媒体共享(DLNA):智能电视通过 SSDP 发现网络中的媒体服务器,并从中播放视频和音乐。
  • 网络打印:无线打印机使用 SSDP 广播,让电脑和手机能够自动连接。

2. 什么是 mDNS?

mDNS(Multicast DNS) 允许局域网内的设备通过名称解析互相发现,而不需要中央 DNS 服务器。mDNS 是 Bonjour(Apple 的自动化设备发现服务)和 Chromecast 等设备的基础技术。

2.1 mDNS 的多播地址和端口
  • 多播地址 : 224.0.0.251
  • 端口: UDP 5353
2.2 mDNS 的工作原理
  1. 多播查询 :设备发送 DNS 查询请求到 224.0.0.251:5353,请求解析局域网内的某个设备名称(如 printer.local)。
  2. 设备响应:拥有该名称的设备会响应查询,并提供自己的 IP 地址。
2.3 mDNS 的应用场景
  • 智能家居:家庭智能设备通过 mDNS 广播自己的名字和服务信息,手机和电脑能够快速发现并与它们通信。
  • 文件和媒体共享:在 macOS 或 Linux 系统中,设备通过 mDNS 发现局域网中的共享文件夹、媒体服务器等服务。
  • 开发设备连接 :树莓派等开发板通过 mDNS 注册名字,用户可以通过简单的名称(如 raspberrypi.local)进行访问。

3. 封禁 SSDP 和 mDNS:提升网络安全

虽然 SSDP 和 mDNS 提供了很大的便利,但它们也可能成为潜在的安全隐患。设备间的自动发现虽然方便,但也可能会被恶意设备利用,探测网络中的其他设备。

3.1 在路由器上封禁 SSDP 和 mDNS

最有效的方法是在路由器防火墙上封禁:

  • 封禁 SSDP :在路由器防火墙中阻止 239.255.255.250 地址和 UDP 1900 端口的流量。
  • 封禁 mDNS :阻止 224.0.0.251 地址和 UDP 5353 端口的流量。

这样可以确保所有通过路由器的设备都无法进行 SSDP 和 mDNS 的设备发现。

3.2 在操作系统上封禁 SSDP 和 mDNS

在无法控制路由器的情况下,可以在设备操作系统上设置防火墙规则:

  • Windows 防火墙:在"高级安全 Windows 防火墙"中创建入站和出站规则,阻止 UDP 1900 和 5353 端口。

  • Linux iptables

    bash 复制代码
    sudo iptables -A INPUT -p udp --dport 1900 -j DROP
    sudo iptables -A INPUT -p udp --dport 5353 -j DROP
    sudo iptables -A OUTPUT -p udp --dport 1900 -j DROP
    sudo iptables -A OUTPUT -p udp --dport 5353 -j DROP

4. 总结

  • SSDP(239.255.255.250:1900mDNS(224.0.0.251:5353 是局域网设备发现的常用协议,能够让设备在没有中央服务器的情况下自动发现彼此。
  • SSDP 主要用于 UPnP 设备(如智能音箱、电视和打印机),而 mDNS 通过名字解析(如 device.local)让设备互相访问。
  • 虽然便捷,但这两种协议的广播功能也可能带来安全隐患。在有需要时,可以通过在路由器或设备操作系统上封禁相关的多播地址和端口来提升网络安全。

这就是关于 SSDP 和 mDNS 以及如何管理这些协议的完整教程,希望能帮助你更好地理解并控制家庭网络中的设备连接。

相关推荐
EasyDSS26 分钟前
国标GB28181-2022平台EasyGBS:安防监控中P2P的穿透方法
网络协议·php·音视频·p2p
网安墨雨1 小时前
常用网络协议
网络·网络协议
ZoeLandia3 小时前
WebSocket | 背景 概念 原理 使用 优缺点及适用场景
网络·websocket·网络协议
Crossoads7 小时前
【汇编语言】端口 —— 「从端口到时间:一文了解CMOS RAM与汇编指令的交汇」
android·java·汇编·深度学习·网络协议·机器学习·汇编语言
诸葛悠闲7 小时前
SOME/IP 协议详解——信息格式
网络协议
_oP_i10 小时前
HTTP 请求Media typetext/plain application/json text/json区别
网络协议·http·json
OkeyProxy12 小时前
HTTP、HTTPS和SOCKS5代理協議
网络协议·https·云计算·代理服务器·海外ip代理
zquwei12 小时前
SpringCloudGateway+Nacos注册与转发Netty+WebSocket
java·网络·分布式·后端·websocket·网络协议·spring
群联云防护小杜13 小时前
如何给负载均衡平台做好安全防御
运维·服务器·网络·网络协议·安全·负载均衡
ihengshuai13 小时前
HTTP协议及安全防范
网络协议·安全·http