Teamspeak2 - SocketError
Posted: Thu Apr 13, 2006 10:01 pm
[Problem]
After the ts2 server ran for quite a while, and had some traffic going, it suddenly hung up. It was still "running" (as in, there was a pid, and i could stop it and restart it with the startscript w/o problems), but did not respond to any connection attempts. The logfile says:
Google says this happens when the default route on that box is deleted or reset while the ts2 server is running - it unbinds on the socket, but does not try to bind again, and thus is not operabel until its restartet.
[Solution]
As i thought (See possible solution) exactly that was the problem. When TS is listening on an interface that is not disconnected every now and then (ethx), this error does not happen. So .. dont run it directly on an interface that might go down, but bind it to a static interface and just reroute the port from the internet interface to be bent to the listening port of TS2 on the other interface. Problem solved!
[Possible solution]
I think this error happens if the ts2 server binds on an interface that looses the connection (like, ppp0 disconnect (DSL), or someone pulled the cat5 of the ethx device). The device disappears - as does the socket ts2 is bound to. Thus, => Socket Error.
Here we have a DSL connection over a Modem. Sometimes the line is closed (whyever), and the ppp0 interface disappears.
Tomorrow i'll try to bind the ts2 server to a eth0 interface (does not disappear that easily). However, it might not listen to the external IP then, so i might have to bend the port with iptables from external IP Adress to the local eth0 adress - a small hack that might work! We'll know tomorrow. I think.
After the ts2 server ran for quite a while, and had some traffic going, it suddenly hung up. It was still "running" (as in, there was a pid, and i could stop it and restart it with the startscript w/o problems), but did not respond to any connection attempts. The logfile says:
Code: Select all
ERROR,All,TTSUDPSender.Execute, SID: 1 Exception1 EIdSocketError.Socket Error
[Solution]
As i thought (See possible solution) exactly that was the problem. When TS is listening on an interface that is not disconnected every now and then (ethx), this error does not happen. So .. dont run it directly on an interface that might go down, but bind it to a static interface and just reroute the port from the internet interface to be bent to the listening port of TS2 on the other interface. Problem solved!
[Possible solution]
I think this error happens if the ts2 server binds on an interface that looses the connection (like, ppp0 disconnect (DSL), or someone pulled the cat5 of the ethx device). The device disappears - as does the socket ts2 is bound to. Thus, => Socket Error.
Here we have a DSL connection over a Modem. Sometimes the line is closed (whyever), and the ppp0 interface disappears.
Tomorrow i'll try to bind the ts2 server to a eth0 interface (does not disappear that easily). However, it might not listen to the external IP then, so i might have to bend the port with iptables from external IP Adress to the local eth0 adress - a small hack that might work! We'll know tomorrow. I think.