07/10/2026

Ping Works, but the Website Won’t Open: What Are You Missing?

The server replies to ping. There is no packet loss. Yet the browser keeps loading—or displays “This site can’t be reached.”Sound familiar?

When ping works but a website won’t open, it is tempting to declare the network healthy and blame the application. But a successful ping answers only part of the question.The next step is to find out exactly where the web connection fails.

Why can you ping a server but not access its website?

Ping uses ICMP Echo messages to test IP reachability. It does not test whether a web service is listening, whether HTTPS can establish a secure connection, or whether the application can process a request.Think of ping as confirming that someone answers the building’s intercom. It does not tell you whether the office you need is open.

A website can remain unavailable because of:

  • Incorrect or inconsistent DNS resolution.
  • A blocked or unavailable web port.
  • A stopped web service or incorrect listener configuration.
  • A TLS certificate or handshake problem.
  • A proxy, load balancer or application failure.
  • A browser-specific issue.

For a typical HTTPS connection over TCP, investigate name resolution, the TCP connection, TLS and then HTTP. HTTP/3 uses QUIC over UDP, so a TCP port test does not cover every browser connection path.

1. Start with the exact browser error

Before changing anything, record the URL, error message, time and affected users.

“This site can’t be reached,” a certificate warning and “503 Service Unavailable” point to different stages of the connection.

Ask:

  • Does the problem affect one device or everyone?
  • Does it occur only through the VPN or office network?
  • Does another browser work on the same device?
  • What changed shortly before the failure?

These comparisons help narrow the investigation without immediately restarting services or modifying firewall rules.

2. Check DNS: are you reaching the right destination?

Pinging an IP address does not test DNS. Even when a hostname responds to ping, confirm that it resolves to the intended destination.

Run:nslookup app.example.com

Replace the example hostname with the affected website.

Compare the result with the expected address and, where useful, a working device. Investigate stale records, incorrect DNS server settings or differences between internal and external DNS.

Multiple addresses are not automatically a fault: load-balanced services and CDNs can legitimately return different answers. Compare against the intended service configuration.

Do not assume that opening an HTTPS website by IP address is a reliable DNS test. Shared hosting and HTTPS depend on the requested hostname; using an IP can introduce a different certificate or virtual-host problem.

3. Test the actual web port

If the destination is correct, check whether the client can establish a TCP connection to the web service.

In Windows PowerShell:Test-NetConnection app.example.com -Port 443

Look for:TcpTestSucceeded : True

A successful result confirms that the TCP connection worked to the reported remote address and port. It does not confirm that TLS or the application works.

A failed result means you should investigate the path and listener. Possible causes include a firewall drop or rejection, a stopped service, an incorrect port, NAT configuration or a return-path problem.

For a plain HTTP service, test port 80. If the application uses a custom port, test that port instead.

A failed port test is evidence to investigate—not proof that the firewall is responsible.

4. If TCP works, inspect TLS

An open HTTPS port can still produce a certificate warning or handshake failure.

Check the certificate’s validity dates, hostname coverage and trust chain. Also verify the client’s clock. In networks using HTTPS inspection, investigate the inspection device and the client’s trust configuration.

Use curl for connection details:curl -v --connect-timeout 10 --max-time 30 https://app.example.com/

On Windows, use curl.exe if curl resolves to a PowerShell alias.

The output can help distinguish connection failure, certificate verification failure and an HTTP response. Treat verbose output carefully before sharing it: it can contain sensitive request details.

Fix certificate or trust issues at their source. Disabling certificate verification is not a production solution.

5. Read the HTTP response

If you receive an HTTP status code, a web-speaking component has responded. That component may be a proxy or gateway rather than the application server itself.

Response

What it tells you

What to investigate

403 Forbidden

The request was understood but refused.

Authorization, access policy or WAF logs.

404 Not Found

The requested resource was not found.

URL, application route or virtual-host configuration.

502 Bad Gateway

A gateway received an invalid upstream response.

Backend service and gateway logs.

503 Service Unavailable

The service is currently unable to handle the request.

Availability, capacity, maintenance and backend health.

504 Gateway Timeout

A gateway did not receive an upstream response in time.

Backend delays and connectivity.

 

Even a 200 response does not guarantee that the complete page works. A browser may load the main document while JavaScript files, APIs or authentication requests fail. Use the browser’s Network panel to identify the failing request.

A practical example: ping succeeds, HTTPS fails

Imagine this lab scenario:

  • The hostname resolves to the expected address.
  • Ping succeeds.
  • The TCP test to port 443 fails.
  • The server administrator finds that the HTTPS service is stopped.

The host can answer ICMP while no web service is listening on the required port.

After correcting the service problem, repeat the TCP test and open the website. Finally, verify the user’s actual task, such as signing in or opening a report.

Recovery is confirmed when the application works—not merely when ping replies.

Quick troubleshooting checklist

  1. Record the exact URL, error and scope of impact.
  2. Confirm that DNS points to the intended service.
  3. Test the correct destination port.
  4. Inspect TLS if the connection succeeds.
  5. Review HTTP responses and failed browser requests.
  6. Use logs or packet captures to resolve what remains uncertain.
  7. Retest the complete user workflow after the fix.

Frequently asked questions

Can a firewall allow ping but block a website?

Yes. ICMP and web traffic can match different rules. Successful ping does not prove that TCP port 443 is allowed.

Does a successful port 443 test prove HTTPS works?

No. It confirms the tested TCP connection. TLS negotiation and the HTTP request can still fail.

Can a website work when ping fails?

Yes. A device or network can block ICMP Echo while permitting web traffic.

Should I check DNS, ports or TLS first?

Start with the error and available evidence. For a hostname-based connection, checking DNS, then the required port, then TLS is a useful sequence. A clear certificate warning may let you focus on TLS sooner.

Build the habit of testing each layer

The most useful question is not simply, “Can I ping it?” It is, “Which part of this connection have I actually verified?”

Atmic Networks encourages learners to connect networking fundamentals with practical troubleshooting. Use this scenario in your lab: change one condition, observe the symptoms and explain what each test proves.

Your turn: ping succeeds, the website fails, and only one user is affected. What would you check first—and why?