Vagrant,nodejs和iptable端口转发

当我尝试将nodejs用作stream浪者(在OS X上)的Web服务器时,我遇到了一些小问题。

我的configuration文件链接如下,我只有nodejs和mongodb安装。 盒IP是10.10.56.101 (我需要另一个IP比192.168.56.101在我的学校工作)。

我尝试使用下面链接的小脚本访问nodejs服务器。 该脚本只能在端口51160上收听,并且回答OK。

首先,我没有得到任何答案,search后,我发现我需要做一个端口转发和一个iptable它的工作(命令链接下面,端口51160而不是8000 )。

我重新安装了相同configuration的stream浪机,我无法让机器继续工作。

我可以从stream浪机内curl localhost:51160 ,但是我无法从虚拟机之外获取任何内容。

档案:

  • config.yaml: https ://gist.github.com/nobe4/0bb16fdb23279d416656
  • server.js: https : //gist.github.com/nobe4/639d63ef612f247d9309
  • iptable命令: https : //gist.github.com/kentbrew/776580#file-node-on-ec2-port-80-txt-L39

如果你可以从stream浪机器内部curl localhost:51160 ,那意味着node.js服务是文件。

我没有看到Vagrantfile ,请检查你在Vagrantfile下面的行

 config.vm.network "forwarded_port", guest: 51160, host: 51160 config.vm.network :private_network, ip: "192.168.56.123" # or other unused IP. 

更新后,运行vagrant provision ,并再次尝试访问

 curl http://192.168.56.123:51160 

从你自己的电脑。