I guess I should have expected this. I noticed that the new BF2 server I'm running seems to crash a lot. In fact, it crashes in such a way as to prevent automatic restart, which is a separate problem. Anyway, in researching this, I discovered that - just as with BF42 - there are well-known ways to remotely crash BF2 servers.
It's difficult to know for sure that the BF2 server is being crashed intentionally, unless someone takes credit for it. The BF2 server software has always been a bit crash-prone. But these crashes feel different, and they're happening way too often. Combine that with the fact that this is the first time I've run a public, Internet BF2 server; that the BF42 server running at the same IP address has most definitely been attacked; that there are known ways to crash BF2 servers remotely; and that the Internet is full of [expletives deleted] jerks, and I'm thinking it's likely.
If anyone has any ideas about dealing with this please let me know. The people doing the crashing apparently use proxies, so simply blocking their IP address won't help. As I see it, there are only five ways to resolve this:
1. EA/DICE fixes the bug that allows for remote server crashing. Unlikely, given the age of the game. Still, maybe if we make enough noise?
2. Someone else comes up with a patch to prevent these hacks from working. This may well happen; the TPU BF42 server is running with just such a patch.
3. I may be able to use packet inspection to look for and block packets containing the known hack sequences. I have the technology to do this, but it would be a huge pain to set up.
4. Change the BF2 server to require a password to join it. I'm seriously considering this. The password would be provided to people I know through TPU and anyone those people feel they can trust.
5. Finally, and least likely to occur, I somehow find out who's doing this and beat them to death with their own keyboard. Actually, this one is my favourite.