我的目标是在我的EC2实例(在我的eth0私有IP上)的特定端口上通过公共IP接收/发送UDP数据包stream量。
我问,因为我已经设置了我的安全组,允许公共IP上的所有入站/出站stream量。 即使我认为我为所有stream量类别设置了我的安全组,但是到公有IP的端口并不是全部打开的。 在本地机器上运行netcat -zv publicIP 1-80 ,我可以看到只有端口22和80是打开的? 在更高的范围+ 49k,没有开放。 这只是我configuration错误的,如果是的话,还应该configuration什么,以便允许通过端口XXXXX的UDP通信,或者这是不可能的? 谢谢!
运行netcat -zv publicIP 1-80将只显示TCP的开放端口,而不是UDP。 由于使用netcat或nmaptesting打开的UDP端口是非常棘手的,我build议尝试以下步骤以确认您的服务器正在侦听特定的UDP端口,并且可以远程接受与该UDP端口的连接。
停止侦听特定端口的服务并运行netcat -luv port ,将portreplace为您正在testing的服务的端口号。 这将使服务器监听指定的端口号。
从远程主机运行echo "test" | netcat -vu publicIP port echo "test" | netcat -vu publicIP port ,分别用IP地址和端口号replacepublicIP和端口。 如果你在(1)部分的服务器上显示文本'testing',那么一切都很好。 否则,请检查您的安全组和本地主机防火墙规则。 您也可以使用tcpdump进行故障排除。
事实certificate,客户端发送UDP数据包的公司networking已经阻塞了端口。