Get hands-on experience with 20+ free Google Cloud products and $300 in free credit for new customers.

"Cannot connect to VM HTTP port (80) despite firewall and server listening"

Hi

 

I’m facing an issue where I cannot access my VM on port 80 from the outside, even though everything seems to be properly configured. Here are the details:

 

  • VM Name: lichim-lock

  • Project: lichim-lock

  • Zone: us-central1-b

  • External IP: 34.171.213.145 (Static)

  • Internal IP: 10.128.0.2

  • Network: default

  • Subnetwork: default


     

    • The VM runs an ASP.NET Core server listening on 0.0.0.0:80.

    • Firewall rule allow-http-80 is set up to allow TCP traffic on port 80 from 0.0.0.0/0.

    • The server is confirmed running with:

      nginx
      Now listening on: http://0.0.0.0:80
      locklichi 1866 root 279u TCP *:http (LISTEN)
      • No other services (e.g., nginx) are using port 80.


        from Powershell:

      Test-NetConnection -ComputerName 34.171.213.145 -Port 80
      PingSucceeded: True
      TcpTestSucceeded: False


      From browswer:
      http://34.171.213.145 results in ERR_CONNECTION_TIMED_OUT


       

      Although the server is listening on port 80 and the firewall rule is correctly configured, external connections to port 80 are being blocked. The ping test passes, so the IP is reachable. This seems to be a networking issue on the GCP side.


       

      Please investigate why TCP connections to port 80 are not working, despite the server and firewall being properly configured.

      Thank you.



       
Solved Solved
1 2 75
1 ACCEPTED SOLUTION

It sounds like the config is mostly right, but double-check if there's a VPC network tag missing from the VM that the firewall rule is targeting. Also, verify if Google Cloud's OS-level firewall (like UFW or iptables) might still be blocking port 80 internally.

View solution in original post

2 REPLIES 2

It sounds like the config is mostly right, but double-check if there's a VPC network tag missing from the VM that the firewall rule is targeting. Also, verify if Google Cloud's OS-level firewall (like UFW or iptables) might still be blocking port 80 internally.

Thanks!
now its work. you amazing!
Maybe you can help with Git issue also?

 

I’m also trying to access my VM from an external service (GitHub webhook) on port 9000, and I encounter the same issue: it fails to connect.

Details:

  • VM Name: lichim-lock

  • Project: lichim-lock

  • Zone: us-central1-b

  • External IP: 34.171.213.145

  • Internal IP: 10.128.0.2

  • Network: default

  • Subnetwork: default

  • Firewall rule allow9000 allows TCP on port 9000 from 0.0.0.0/0 with priority 500.

  • VM is listening on 0.0.0.0:9000 (confirmed with netstat)

  • Test-NetConnection from outside shows PingSucceeded=True but TcpTestSucceeded=False for port 9000.

  • No other services are using port 9000.

I’ve also verified:
The firewall rule applies to all instances.
No OS-level firewall (ufw) is blocking the port.
The process listens on both IPv4 and IPv6.

Despite all this, the connection from GitHub (and from my local machine) times out.
Could you please help me figure out what else might be blocking external access to port 9000?

Thank you!