[Feature Request] Make "listen" field configurable per inbound (UI support & persistence)
Hi, thank you for your work on 3x-ui - it's a great project!
I have a feature request regarding the ability to bind specific inbounds to specific IP addresses using the "listen" field in config.json.
Currently, when I manually add "listen": "x.x.x.x" to an inbound (for example, to bind a VLESS+Reality port to one public IP), it appears in the config - but as soon as I restart the panel or apply any changes via the UI, the "listen" field is reset to null.
This makes it impossible to persistently bind inbounds to specific IPs in multi-IP environments.
Would it be possible to:
- Prevent the
"listen"field from being reset tonull, if set manually - Add a new input field in the UI to set
"listen"per inbound directly
This would greatly help in advanced multi-IP setups, where different ports need to be routed or firewalled based on IP.
Thanks again for maintaining this project!
Update
Update: After further testing, I discovered that the "Monitoring IP" field in the UI actually controls the listen parameter in the final config.json. So this feature already exists — thank you for that.
However, there’s one important usability issue:
When editing an existing inbound (e.g. changing the "Monitoring IP"), the config.json is not updated immediately — not until the 3x-ui service is restarted manually.
The UI also does not prompt or inform the user that a restart is required for changes to take effect.
Suggestion:
- Trigger automatic config reload or service restart after editing inbound rules
(or at least show a message to the user saying "Please restart panel to apply changes").
This would prevent confusion where the panel shows updated values, but xray is still using the old configuration.
Thanks again for your great work!
(Merged into the main comment above)
Yes, 3x-ui is a configuration template generated based on the database. I have written a batch script on a multi-ip server, currently based on socks, and other protocols can be modified. Batch add nodes, batch delete, batch set traffic restrictions, batch set expiration time, etc. and one-click configuration of routing rules and outbound rules. If you need, please contact me
Thanks for the offer, but I’m not interested in third-party scripts.
I'm using 3x-ui for private purposes only and not for commercial use. I’ve already solved the issue with the listen field, and I prefer to keep everything within the standard panel and XRay setup.
Appreciate your message.