Bash 如何使用nc向windows 7发送udp数据包?
我需要从raspberry pi向windows 7发送一些udp数据包,在windows端,我使用UDPclient侦听任何udp数据,即代码:Bash 如何使用nc向windows 7发送udp数据包?,bash,udp,raspberry-pi,Bash,Udp,Raspberry Pi,我需要从raspberry pi向windows 7发送一些udp数据包,在windows端,我使用UDPclient侦听任何udp数据,即代码: byte[] data = new byte[1024]; string input, stringData; UdpClient server = new UdpClient("127.0.0.1", 9050); IPEndPoint sender = new IPEndPoint
byte[] data = new byte[1024];
string input, stringData;
UdpClient server = new UdpClient("127.0.0.1", 9050);
IPEndPoint sender = new IPEndPoint(IPAddress.Any, 0);
while (true)
{
data = server.Receive(ref sender);
stringData = Encoding.ASCII.GetString(data, 0, data.Length);
Console.WriteLine(stringData);
}
Console.WriteLine("Stopping client");
server.Close();
至于raspberry pi,我想写一个bash脚本来完成这项工作,但我不知道怎么做,
我已经做了一些测试,如果我键入:
nc -vnzu 192.168.0.104
输出为:连接到192.168.0.104 9050端口[udp/*]成功
如果我输入:
nc -4u -w1 192.168.0.104 9050
没有输出,似乎仍然没有错误
如果我不使用nc,只需键入:
echo -n "hello" >/dev/udp/192.168.0.104/9050
没有显示错误消息,但在windows端,上面的c#程序组不显示任何接收数据
所以,有谁能告诉我如何做到这一点,最好的bash脚本形式,谢谢。大多数bash实现没有编译的
/dev/udp
//dev/tcp
支持,所以这可能是不适合您的原因
假设您已启用它们:问题可能是Windows 7端的防火墙配置问题。检查Windows 7防火墙是否允许到所选端口(9050)的入站连接。根据您的问题,您的客户端正在监听
127.0.0.1:9050
。该地址不会从外部接收数据包。