有没有办法只为send_to()创建一个没有bind()的UdpSocket?

时间:2015-04-11 22:37:10

标签: rust

我正在尝试相当于this piece of Ruby

def color=(color)
  @color = color
  any_bar = UDPSocket.new
  any_bar.connect HOSTNAME, @port
  any_bar.send @color, 0
  any_bar.close
end

如果没有bind(),我无法看到initialize a UdpSocket from the Rust API documentation的任何其他方式。

1 个答案:

答案 0 :(得分:7)

我会尝试::bind("0.0.0.0:0") - 这应该让O / S为您选择一个IP /端口。这可能足以让瞬态套接字用。发送简单的数据报。

注意:这也是在未绑定的UDP套接字上使用send_to时也会发生的情况,例如:使用从socket()系统调用返回的fd而不调用bind() - O / S分配一个IP /端口来发送数据报。