Add VPN compatibility documentation to resolve connectivity issues #20
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Problem
Users reported that MTProxy doesn't work when their VPN is active (issue #X), while other publicly shared proxies work fine with VPN enabled. This suggested a configuration issue rather than a fundamental incompatibility.
Root Cause
The issue occurs when users incorrectly use the undocumented
--address
command-line option. This option binds outbound connections (from the proxy to Telegram servers) to a specific IP address, which prevents the proxy from routing traffic through VPN tunnels. When a VPN is active, the system's routing table changes, but binding to a specific address bypasses this routing.Solution
MTProxy actually works with VPN by default without any special configuration because:
0.0.0.0
for IPv4,::
for IPv6)The fix is purely documentation—clarifying the default VPN-friendly behavior and explaining when/when not to use the
--address
option.Changes
Added a new "VPN Compatibility" section to the README that includes:
Default Behavior (VPN-friendly): Explains that no special configuration is needed for VPN compatibility
The
--address
Option: Documents this previously undocumented option with clear guidance:Troubleshooting VPN Issues: Provides 5 actionable diagnostic steps:
--address
option if presentExample
Before (doesn't work with VPN):
After (works with VPN):
Simply removing the
--address
option allows the proxy to route through VPN automatically.Impact
--address
option is now properly documentedFixes #X
Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.