Otherhand how can i manipulate where the game client want to connect? I've built a python proxy server that can handle this proxy server, it is a basic thing that just: bind a server, wait till the client connect, and connect to the server, and send all data that have got from the client via this proxy, and send forward to the main server. And here is the problem that i not able to solve, the client don't want to connect to my proxy server. I modified my etc/hosts before, and i failed as well. Any idea to solve this problem?
It seems that the address you are trying to define in your etc/hosts file is not the one that the game is going to connect to.
You should first find out what address the game is trying to connect. Install Wireshark or any other network packet sniffer, while it is running, start the game and then close it. Take a look at the Wireshark traffic and search for "DNS Queries" or filter the traffic using port number 53.
When you found that the exact address, define it in etc/hosts to point to 127.0.0.1, then verify with a ping command and then run the game...