EventMachine - 端口正在使用中

时间:2013-04-05 20:07:39

标签: ruby linux networking port eventmachine

获取端口已被使用错误。

require 'em-websocket'
EM.run {
    EM::WebSocket.run(:host => "192.168.1.100", :port => 9001) do |ws|
        # Code goes here...
    end
}

然后在同一台服务器上同时不同的IP地址

require 'em-websocket'

EM.run {
    EM::WebSocket.run(:host => "192.168.1.101", :port => 9001) do |ws|
        # Code goes here...
    end
}

然后我收到此错误...端口应该绑定IP地址,因此可以使用。

/usr/local/rvm/gems/ruby-1.9.3-p194/gems/eventmachine-1.0.3/lib/eventmachine.rb:526:in 'start_tcp_server': no acceptor (port is in use or requires root privileges) (RuntimeError)

我错过了什么吗?

更新

正在运行:netstat -tulpn | grep ruby显示:

tcp        0      0 0.0.0.0:9001                0.0.0.0:*                   LISTEN      718/ruby

清楚地显示服务器已绑定到0.0.0.0而不是192.168.1.100

如何让eventmachine绑定到192.168.1.100

好像是一个错误......

1 个答案:

答案 0 :(得分:5)

Afaik 0.0.0.0:9001表示该端口绑定在每个可用的IP地址上。所以它与192.168.1.100:9001冲突。