Udp netcat端口1900不返回响应

Udp netcat端口1900不返回响应,udp,netcat,ssdp,Udp,Netcat,Ssdp,因此,我试图从打开udp端口1900的服务器获取响应 这是im输入的命令和im发送的数据: root$ nc -uvv <ip of server> 1900 M-SEARCH * HTTP/1.1 HOST:239.255.255.250:1900 MAN:"ssdp:discover" MX:5 ST:ssdp:all root$nc-uvv 1900 M-SEARCH*HTTP/1.1 主持人:239.255.255.250:1900 男:“ssdp:发现” MX:5 ST:

因此,我试图从打开udp端口1900的服务器获取响应

这是im输入的命令和im发送的数据:

root$ nc -uvv <ip of server> 1900
M-SEARCH * HTTP/1.1
HOST:239.255.255.250:1900
MAN:"ssdp:discover"
MX:5
ST:ssdp:all
root$nc-uvv 1900
M-SEARCH*HTTP/1.1
主持人:239.255.255.250:1900
男:“ssdp:发现”
MX:5
ST:ssdp:all
但是我没有从服务器得到任何响应,至少没有任何响应输出到屏幕上。我确信udp端口1900在此IP上是打开的。如果有人能提供任何帮助,从udp端口1900打开的服务器获得响应,那将不胜感激。
谢谢这里使用的HTTPU是基于HTTP的,因此线路端必须是CR-LF,而不是像您这样的简单LF,尽管服务器可能会忽略这一点。此外,请求头必须以一行结尾,该行也只能包含CR LF,尽管服务器可能也会忽略这一点。但重要的是,整个请求都包含在单个UDP消息中,因为UDP是数据报,而不是像TCP那样的流协议。仅当您在终端上输入请求时,nc将为您输入的每一行创建一个新数据包

如果将整个请求放入一个文件(以正确的CR LF作为行结束,以空行作为标题结束),然后通过管道将其放入nc:

cat request | nc -uvv <ip-address> 1900
...
HTTP/1.1 200 OK
LOCATION: http://.../igd2desc.xml
SERVER: FRITZ!Box ...
cat请求| nc-uvv 1900
...
HTTP/1.1200ok
地点:http://.../igd2desc.xml
服务员:弗里茨!盒子。。。

谢谢您的回答!我没有想到UDP不是像TCP那样的流协议。因此,我创建了一个文本文件,并在文件的最后一行添加了“\r\n”,然后运行了您所说的命令,但仍然没有得到响应。我添加的CR LF错误吗?@RandomUser:从描述中我看不出有什么错误。但是如果你能提供你使用的原始的未更改的文件(或者可能是一个hexdump文件,以确保在提供文件时不会有任何改变),我可以仔细看看它是否正常。你确定服务器应该响应吗?使用UDP打开端口只意味着它不拒绝任何数据包,而不是它将响应。