# Diagnosing RESP connection timeouts to Upstash Redis
## Symptom
The client hangs on connect, then times out. No auth error, no data URIs
just silence.
## Step 1: check TLS
Upstash requires TLS with no off switch. A plaintext connection
attempt gets no useful error back, it just dies.
- ioredis: use the rediss:// scheme or pass tls in options.
- redis-py: pass ssl=True.
- redigo: redis.DialUseTLS(true).
- jedis: the boolean TLS flag in the constructor.
- redis-cli: redis-cli --tls.
## Step 2: check the port and firewall
Use the port from the console TCP tab. Corporate firewalls and some
VPC egress rules block non-HTTPS ports. If TLS is on and it still
hangs, try from a different network to isolate firewall versus
config.
## Step 3: check DNS
The endpoint is a long regional hostname. A typo'd hostname hangs
rather than erroring fast in some clients. Copy it from the console,
do not retype it.
## Fix and verify
Enable TLS, re-copy endpoint and port, and connect. A PONG on the
first try confirms it. If your environment cannot do TLS on that
port at all, switch to the REST API, which is plain HTTPS.