Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tomcat Google云VM实例如何开启IP转发_Tomcat_Google Cloud Platform_Google Compute Engine - Fatal编程技术网

Tomcat Google云VM实例如何开启IP转发

Tomcat Google云VM实例如何开启IP转发,tomcat,google-cloud-platform,google-compute-engine,Tomcat,Google Cloud Platform,Google Compute Engine,我在ComputeEngine中设置了一个Google云VM实例。我使用Windows Server 2016作为映像。创建VM实例后,我可以看到相同实例的详细信息。在网络接口下的详细信息页面上,我可以看到我的外部IP和内部IP。但是我看到IP转发被关闭了 我怎样才能打开它 我努力实现的目标如下: 在GoogleCloudVM实例Windows服务器上,我安装了Tomcat7 我在Tomcat中部署了一个war文件(RESTAPI) 我想从本地计算机访问这个RESTAPI 如果我错了,请纠正我

我在ComputeEngine中设置了一个Google云VM实例。我使用Windows Server 2016作为映像。创建VM实例后,我可以看到相同实例的详细信息。在网络接口下的详细信息页面上,我可以看到我的外部IP和内部IP。但是我看到IP转发被关闭了

我怎样才能打开它

我努力实现的目标如下:

  • 在GoogleCloudVM实例Windows服务器上,我安装了Tomcat7
  • 我在Tomcat中部署了一个war文件(RESTAPI)
  • 我想从本地计算机访问这个RESTAPI
  • 如果我错了,请纠正我,但我正试图在 以下方式:

    4.1 From local machine access GC VM Instance External IP 
    
    4.2 Then using IP forwarding my request should be forwarded to GC VM Instance Internal IP port 8080
    
    4.3 On Internal IP port 8080 Tomcat serves the request
    
  • 请让我知道我的方法是否正确,以及我如何实现它?如果没有,请建议我应该怎么做。如果可能的话,能有人一步一步地指导我吗


    非常感谢您的帮助。

    计算引擎VM实例支持一对一NAT。公共IP将替换为VM的内部IP。你所描述的应该有用。确保在计算引擎防火墙和本地Windows防火墙中都允许连接到tomcat端口

    屏幕截图中的“IP转发”是允许VM实例发送与任何IP都不匹配的接收数据包。例如,这用于将VM设置为NAT网关,文档中有:

    为实例启用IP转发

    默认情况下,计算引擎实例无法转发数据包,除非数据包的源IP地址与实例的IP地址匹配。类似地,计算引擎不会交付目标IP地址与接收数据包的实例的IP地址不同的数据包。但是,如果您希望使用实例来帮助路由数据包,则这两种功能都是必需的。要禁用此源和目标IP检查,请启用canIpForward字段,该字段允许实例发送和接收具有不匹配的目标或源IP的数据包


    运行tomcat服务器时不需要启用IP转发。

    要启用它,需要在创建实例时设置--can IP forward标志,查看是否只有1个VM实例,我认为这不是IP转发的用例。您的Tomcat应该在0.0.0.0:8080上侦听,然后您可以使用外部IP从本地机器访问它。