dns.conf: use built-in 'self' keyword so it works out of the box #18

Open
opened 2026-05-04 08:35:03 -05:00 by harreh3iesh · 0 comments
harreh3iesh commented 2026-05-04 08:35:03 -05:00 (Migrated from github.com)

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.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: ```diff - 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!
Sign in to join this conversation.
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
gh-idlesauce/umtx2#18
No description provided.