在 ruby 中接收来自 IP 255.255.255.255 的广播数据包

Receive broadcast packets from IP 255.255.255.255 in ruby

我目前正在努力接收来自 ruby 中 IP 地址 255.255.255.255 的广播数据包。

一般来说,我的网络配置有两个不同的 vlan:

作为接收者,我使用以下测试代码来显示传入的数据包:

require 'socket'
addr = ['0.0.0.0', 3020]
BasicSocket.do_not_reverse_lookup = true
# Create socket and bind to address
UDPSock = UDPSocket.new
UDPSock.bind(addr[0], addr[1])
while true
 data, addr = UDPSock.recvfrom(1024)
 puts "From addr: '%s', msg: '%s'" % [addr[0], data]
end
UDPSock.close

从 10.255.255.255 和 10.10.255.255 接收数据包工作正常。 没有收到发送到 IP 255.255.255.255 的数据包。

我是否需要设置其他属性才能ruby接收“有限广播”数据包?

我希望有人能提供帮助。我真的迷路了

谢谢,乌维

感谢您的帮助。在检查路由器配置期间,我注意到我的 vlan 配置错误导致了此行为。