无法从来宾vm(nat连接)

时间:2015-11-18 08:05:50

标签: linux tomcat nat

我在来宾计算机上运行了centos(使用virtualbox,通过nat连接)。 并且这台机器上的tomcat在端口8080上运行。

<Connector port="8080" protocol="HTTP/1.1" address="0.0.0.0"
           connectionTimeout="20000"
           redirectPort="8443" />

有从主机到客户的端口转发
主持人2222,客人22(ssh)
主持人40001,嘉宾8080

我尝试从http://localhost:8080获取页面 如果我通过ssh从主机连接并做curl localhost:8080,我会得到一个html页面。

但是如果尝试通过浏览器获取http://localhost:40001,它就会无限加载 netstat -an |在主机上显示“40001” C:\ Users \ user&gt; netstat -an |找到“40001”

  TCP    0.0.0.0:40001          0.0.0.0:0              LISTENING
  TCP    127.0.0.1:30279        127.0.0.1:40001        FIN_WAIT_2
  TCP    127.0.0.1:40001        127.0.0.1:30279        CLOSE_WAIT

如果我尝试在主机上telnet(telnet localhost 40001),则连接正常。

如果我尝试在访客上获得netstat,我会得到这个

[aegis@localhost ~]$ netstat -an | grep LISTEN | grep tcp
tcp        0      0 127.0.0.1:8005          0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:8009            0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN
tcp6       0      0 :::22                   :::*                    LISTEN
tcp6       0      0 ::1:25                  :::*                    LISTEN

我无法弄清楚为什么来自主机的telnet工作正常,但我无法通过浏览器获取页面。你能帮助我,我在配置上犯了错误吗?

1 个答案:

答案 0 :(得分:0)

起初,我因为“从主机上运行telnet localhost 40001”而感到沮丧 但是22和8080端口之间存在差异。

默认打开22端口 8080端口不是。
如果您遇到此类问题,则应允许通过8080端口连接防火墙。

例如,您可以执行以下声明:

iptables -I INPUT 1 -i eth0 -p tcp --dport 8080 -j ACCEPT