Railway ENOTFOUND redis.railway.internal
Quick answer
The app cannot resolve Railway's private Redis hostname. With ioredis or bullmq, set family=0 for dual-stack lookup; also check project and local-dev scope.
Most likely fix: ioredis: enable dual-stack
How to fix it
Try these in order — the most common fix is first.
1. ioredis: enable dual-stack
- Append ?family=0 to REDIS_URL (or &family=0 if it already has parameters)
Did this fix it?2. bullmq: pass family 0
- Parse REDIS_URL and pass family: 0 in the connection object with host, port, username and password
Did this fix it?3. Fix project or local setup
- Create Redis in the same project as the app
- For local development use REDIS_PUBLIC_URL instead of the private hostname
Did this fix it?
Symptoms
Connection fails with ENOTFOUND for redis.railway.internal, typically in ioredis or bullmq.
Why it happens
- ioredis only requests IPv4 while private networking in environments created before October 16, 2025 is IPv6-only
- Redis is in a different project (private network is scoped to one environment)
- Running locally, outside the private network
This guide also covers
- enotfound redis.railway.internal
- railway redis connection error
- railway private networking not working
Still not working?
If Railway keeps failing, you're not alone. See every Railway problem users report or the alternatives people switch to.
Have an app idea? Our small team builds any software: web and mobile apps, games, desktop, AI tools. Price agreed together.
Talk to usOther Railway errors
- Railway Application Failed to Respond (502)
- Railway: No Start Command Could Be Found
- Railway Slow Deployments and Slow App
- Railway Node.js SIGTERM Handler Not Running
- Railway Postgres: Could Not Locate a Valid Checkpoint Record
- Railway SSL Certificate Stuck or Not Working (526, 525, Too Many Redirects)
- Railway 405 Method Not Allowed on POST Requests
- Railway Services Stopped: Trial Credits Ran Out