You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Bug]: ts3server monitor fails when voice_ip is set and query_ip is loopback #4966
ts3server monitor fails, and keeps restarting the server, when voice_ip is set to a specific address in ts3server.ini and the ServerQuery interface is bound to loopback (query_ip=127.0.0.1).
Cause
check_ip.sh only adds 127.0.0.1 to queryips when the server binds to all interfaces (0.0.0.0). If voice_ip (read as configip) is a specific address, queryips becomes ("${configip}" "${publicip}"), and the monitor never tries the loopback address that ServerQuery is actually listening on.
fn_info_game_ts3 in info_game.sh does not read query_ip from ts3server.ini, so LinuxGSM can't tell where the query interface is bound.
Suggested fix
Read query_ip in fn_info_game_ts3 and, when it is set and isn't 0.0.0.0, use it for queryips. #3730 by @drantor implemented this, but it was written against the old lgsm/functions/ layout and has gone stale. The common case (voice_ip unset or 0.0.0.0) has since been fixed, because check_ip.sh now includes 127.0.0.1.
Reproduce
In ts3server.ini, set voice_ip=<a specific LAN IP> and query_ip=127.0.0.1.
Run ./ts3server monitor.
The query check fails and the server is restarted.
Activity
fix(ts3): query the ServerQuery address set in query_ip
fix(ts3): query the ServerQuery address set in query_ip (#4975)
Release v26.3.0 (#5007)