Hey — love the project, been running it successfully. Wanted to flag a small friction point and a fix that's already baked into fakedns.py.
The problem
dns.conf ships with a hardcoded IP (10.0.0.143) that every user has to change before anything works. It's a common first-run stumbling block — the PS5 hits the fake DNS, gets the wrong IP, and nothing happens.
The fix
fakedns.py already supports a self keyword in config files (see RuleEngine2._replace_self()). It dynamically resolves to the host machine's LAN IP at runtime. The fix is a single character change:
- A manuals.playstation.net 10.0.0.143
+ A manuals.playstation.net self
No changes to fakedns.py, no new dependencies — the feature is already there.
Bonus idea (optional)
While I was at it I threw together a small launch.sh that starts both fakedns.py and host.py together and runs them under a watchdog: https://gist.github.com/harreh3iesh/a888d6d74d56d52de09eaa45bd04f766
The key reason for the watchdog: if host.py goes down mid-session and the PS5 has a secondary DNS set to a real resolver (e.g. 8.8.8.8), the PS5 silently falls back and manuals.playstation.net resolves to Sony's real server — the exploit never fires and there's no obvious reason why. The watchdog auto-restarts either process if it exits, closing that window. It also auto-detects the host IP and prints it so the user knows exactly what to set on the PS5.
Happy to include launch.sh in a PR too if it fits the project's direction, or keep the PR minimal with just the dns.conf change — your call.
Let me know if a PR would be welcome. Cheers!
Hey — love the project, been running it successfully. Wanted to flag a small friction point and a fix that's already baked into fakedns.py.
The problem
dns.confships with a hardcoded IP (10.0.0.143) that every user has to change before anything works. It's a common first-run stumbling block — the PS5 hits the fake DNS, gets the wrong IP, and nothing happens.The fix
fakedns.pyalready supports aselfkeyword in config files (seeRuleEngine2._replace_self()). It dynamically resolves to the host machine's LAN IP at runtime. The fix is a single character change:No changes to
fakedns.py, no new dependencies — the feature is already there.Bonus idea (optional)
While I was at it I threw together a small
launch.shthat starts bothfakedns.pyandhost.pytogether and runs them under a watchdog: https://gist.github.com/harreh3iesh/a888d6d74d56d52de09eaa45bd04f766The key reason for the watchdog: if
host.pygoes down mid-session and the PS5 has a secondary DNS set to a real resolver (e.g.8.8.8.8), the PS5 silently falls back andmanuals.playstation.netresolves to Sony's real server — the exploit never fires and there's no obvious reason why. The watchdog auto-restarts either process if it exits, closing that window. It also auto-detects the host IP and prints it so the user knows exactly what to set on the PS5.Happy to include
launch.shin a PR too if it fits the project's direction, or keep the PR minimal with just thedns.confchange — your call.Let me know if a PR would be welcome. Cheers!