【Java教學】限制相同IP最多可以連接的個數(防止掛小號)
修改 C_AuthLogin.java
搜索 ACCOUNT ACCOUNT = ACCOUNT.LOAD(ACCOUNTNAME);
在上面添加代码
if(tongip != 0){ //這裡隨便到config裡面設置一個數值,同IP連接個數例如: tongip=3
int k=0;
for (ClientThread tempClient : LoginController.getInstance()
.getAllAccounts()) {
if (ip.equalsIgnoreCase(tempClient.getIp())) {
k++;
if (k>tongip-1){ // 如果相同IP數量>限制數量
System.out.println("相同ip連接超過限制:Ip "+ip+" 玩家帳號:"+ accountName); //限制
System.out.println
("============================================");
client.sendPacket(new S_LoginResult(
S_LoginResult.REASON_USER_OR_PASS_WRONG));
return; //這裡就是限制啦....
}
}
}
}
|