战网中国

标题: 关于最近ban IP现象的总结和解决方法探讨 [打印本页]

作者: yfzh2012    时间: 2018-7-8 12:03
标题: 关于最近ban IP现象的总结和解决方法探讨
本帖最后由 yfzh2012 于 2018-7-8 13:17 编辑

新赛季以来,本来都很好,但是上周服务器维护以后,出现了严重的ban ip 现象,而且时间超长,我不确定到底多久,但是肯定超过 1 ~2 小时(应该是远远不止,我怀疑可能会超过12小时,当然我没测试),除了重置路由器切换ip 没其他办法。
我总结下现象和解决方法:


现象:
1.单开没有问题。
2.被ban 之后 切换ip ,马上就可以使用账户和cdkey,不受上次的影响,不会被持续锁定。
3.角色登录 和 房间加载 时间变长,但是很奇怪如果你同时几个角色登录却会几乎同时进去,所以一定是服务器端有个监测ip登录或者加载的 时间片断,也许这也是个解决问题的办法,但是这个做起来很难,测试起来太难 ,我也就不研究了。
4. win7 下 多开被ban 概率极高,XP下要相对好一些,无论是kolbot 或者我未公开的NTBOT 方法都不行,即便在XP下NTBOT 的问题比KOLBOT 严重。
5. 如果因为吃鸡导致多开账户同时退出,几乎100% ,Kolbot 要修改退出方法,因为它默认是 队长退 ,跟班全部顺退。
6.多开倒装备切换账户和角色过于频繁,也会被ban


分析:

       服务器应该在单IP多开 :账户登录、  角色加载房间 、 角色退出房间这几个方面,做了比以往都要严厉的 和 速度 和频度限制 检测。好消息是只锁定IP,而不会象以前哪样锁定账户和cdkey!!!

解决方法:


1.运行在XP下,kolbot 相对稳定
2.不要频繁切换账户和角色,不要频繁建立新房间
3.单开
4.重点是多开
   a. 要加长 角色登录同一个房间的时间间隔  ,我认为至少要8-10秒(我怀疑在这个10秒左右的时间片中多账户同时登录,会不受检测影响,但是很难做到同步,所以把每个登录都分割到不同的时间片去是目前能做到的,但是退出不行,退出一定要把每个账户退出都加延迟间隔开,同时退出一定ban) ,
kolbot 修改  D2BotFollow.dbj
// Put your lines under this one. Multiple entries are separated by commas. No comma after the last one.
  "pal": {JoinDelay: 10},
  "bar": {JoinDelay: 18},
  "dps": {JoinDelay: 25},
  "dps1": {JoinDelay: 30},
  "dps2": {JoinDelay: 35},   
  "dps3": {JoinDelay: 40},
  "dps4": {JoinDelay: 45},
  b. 用crash 大法 加上我的waiter 方法,确保 每个角色不要同时退出房间,基本上也是要间隔 8-10 秒,也不能加太长要不然 会出现先退出的角色 又进入老房间的问题。当然也可以靠增加新建房间的时间间隔来协调。(重要的事情说三遍,每个账户退出一定都加延迟,间隔开,同时退出一定ban)
     具体请参考   http://www.battlecn.net/forum.php?mod=viewthread&tid=228261&highlight=crash

我也新修改了 Waiter.js 如下,加大 延迟, 如果你觉得不行可以加的更长

function Waiter() {
var waitsec;
  waitsec = me.classid *5000+(Math.round(Math.random()*3)+1)*1000;
  if(Config.MFLeader) waitsec =40000;
while (waitsec > 0) {
    waitsec = waitsec - 1000;
//    print("Waiting : "+ waitsec+"  !!!");
  delay(1000);
}
return true;
}
c.  kolbot 打造足够硬的队长,确保 它不吃鸡,因为队长吃鸡退出,是会导致 所有账户同时退出的,这个是无解的,用我的crash 大法也没用
d.  多开 加长 延迟之后,确保 各个角色同步 ,避免吃鸡 ,请参考  
     http://www.battlecn.net/forum.php?mod=viewthread&tid=228262&extra=page%3D3

5. 多开倒装备,确保每个角色登录之后 在房间里待够  2- 5分钟。不要频繁退出换角色,换而言之 自动仓库就别用了。。。
6. 适当加长 游戏时间间隔  D2BotLead.dbj
MinGameTime: 180, // Minimum game length in seconds. If a game is ended too soon, the rest of the time is waited in the lobby
PingQuitDelay: 30, // Time in seconds to wait in lobby after quitting due to high ping
CreateGameDelay: 15, // Seconds to wait before creating a new game
ResetCount: 99, // Reset game count back to 1 every X games.
CharacterDifference: 99, // Character level difference. Set to false to disable character difference.
ChatActionsDelay: 5, // Seconds to wait in lobby before entering a channel

SwitchKeyDelay: 5, // Seconds to wait before switching a used/banned key or after realm down
CrashDelay: 20, // Seconds to wait after a d2 window crash
FTJDelay: 180, // Seconds to wait after failing to create a game
RealmDownDelay: 5, // Minutes to wait after getting Realm Down message
UnableToConnectDelay: 5, // Minutes to wait after Unable To Connect message
CDKeyInUseDelay: 5, // Minutes to wait before connecting again if CD-Key is in use.
ConnectingTimeout: 30, // Seconds to wait before cancelling the 'Connecting...' screen
PleaseWaitTimeout: 30, // Seconds to wait before cancelling the 'Please Wait...' screen
WaitInLineTimeout: 60, // Seconds to wait before cancelling the 'Waiting in Line...' screen
GameDoesNotExistTimeout: 30 // Seconds to wait before cancelling the 'Game does not exist.' screen

7. 即便你照做了,也不能完全避免吃鸡和ban ip,但是明显可以减少,所以你可以自己修改以上这些参数,照我的思路,重置路由器去解决问题。

8.多开确保每个房间的时长不要低于15分钟,我觉得20分钟以上更稳定。




作者: good_lucky    时间: 2018-7-8 12:12
谢谢大佬  感谢 感谢
作者: xzy6610    时间: 2018-7-8 12:13
前排支持!
作者: xzy6610    时间: 2018-7-8 12:14
第二排占位!
作者: xzy6610    时间: 2018-7-8 12:15
网络延迟,被插队了。
作者: 凌晨四点的天    时间: 2018-7-8 14:30
雪中送炭,值得一赞!
作者: tlwh163    时间: 2018-7-8 15:02
方法论呢? 不能全用猜测吧
作者: tlwh163    时间: 2018-7-8 15:03
有条件的多用几个IP 组队就解决了
作者: yfzh2012    时间: 2018-7-8 15:12
tlwh163 发表于 2018-7-8 15:03
有条件的多用几个IP 组队就解决了

你说的对 多IP是可以解决这个问题,kolbot 不知道怎么弄多ip,NTBoT 用坚果云盘同步是可以实现的,但是只能一个IP 一个账户 ,4ip 一般人做不到,单IP 我试过双开都会ban,我用手机加了一个IP,一旦被封时间很长都解不了,因为手机的ip 你自己重置不了。
作者: tlwh163    时间: 2018-7-8 15:35
虚拟机
作者: yfzh2012    时间: 2018-7-8 16:20
tlwh163 发表于 2018-7-8 15:35
虚拟机

你理解错了吧,需要公网的ip是4个才行的,单机多开没用的,因为你公网地ip 还是一个,
kolbot是通过控制台进行进程同步通讯和控制的,多IP 怎么进行同步通讯?
ntbot 是可以通过写文件方式进行进程通讯的,所以才可以用云盘进行文件同步通讯。
作者: yfzh2012    时间: 2018-7-8 18:38
本帖最后由 yfzh2012 于 2018-7-8 18:44 编辑

5点开始4开 ,没吃鸡的情况下还是稳定能跑的,

刚才没看仔细,发现出现过一次 realdown  ,大概持续了几分钟,很快恢复了,这是在没吃鸡的情况下出现的

18:03:34 (sor) Window has unexpectedly exited... starting profile
18:03:37 (sor) Crash Info: Script: Waiteragain Area: Harrogath
18:09:29 (sor) Realm Down - Restart
18:09:29 (sor) Restarting
18:28:59 (pal) [Game: Vdbmf13


作者: Jongrong    时间: 2018-7-11 14:15
目前四開同房 開了七組 都是隊長退出 打手就退
沒有BAN過
作者: newcertify    时间: 2018-7-11 14:40
yfzh2012 发表于 2018-7-8 15:12
你说的对 多IP是可以解决这个问题,kolbot 不知道怎么弄多ip,NTBoT 用坚果云盘同步是可以实现的,但是只 ...

手机加IP你的意思是手机开热点吗?这种情况手机的IP可以重置的,切换到飞行模式,3-5秒后再切换回正常通讯模式,实测可行
作者: newcertify    时间: 2018-7-11 14:43
继楼主的解决方案,我分享一个我的解决方案。
因为同样发现,只要换了IP之后,CHAR和CDKEY都不存在被BAN的情况,所以最彻底的还是换IP。
实测,联通宽带的猫可以设置每隔一段时间重启,如果一盘游戏的时间基本在15分钟以内,那么设置猫15分钟重启,这样做的缺点就是,不管游戏过程进程如何,猫必定15分钟重启。猫重启后,BOT自动进游戏,如果过程不出意外,一盘打好肯定是REALMDOWN,就等着猫重启吧。
但电信、移动和长城的没试过。
作者: gufeng0903    时间: 2018-7-11 17:11
虚拟机+vpn把
作者: yfzh2012    时间: 2018-7-11 18:38
Jongrong 发表于 2018-7-11 14:15
目前四開同房 開了七組 都是隊長退出 打手就退
沒有BAN過

如果你压根没有我们的国内访问亚服出现的ban ip 情况,当然可以无视我这个帖子
作者: yfzh2012    时间: 2018-7-11 18:38
Jongrong 发表于 2018-7-11 14:15
目前四開同房 開了七組 都是隊長退出 打手就退
沒有BAN過

如果你压根没有我们的国内访问亚服出现的ban ip 情况,当然可以无视我这个帖子
作者: yfzh2012    时间: 2018-7-11 18:39
newcertify 发表于 2018-7-11 14:40
手机加IP你的意思是手机开热点吗?这种情况手机的IP可以重置的,切换到飞行模式,3-5秒后再切换回正常通 ...

学习了,不过我试过关机好像没用。。。
作者: yfzh2012    时间: 2018-7-11 18:40
newcertify 发表于 2018-7-11 14:43
继楼主的解决方案,我分享一个我的解决方案。
因为同样发现,只要换了IP之后,CHAR和CDKEY都不存在被BAN的 ...

我用电信网络的,装了自己的路由器,没这个定时重启的功能,如果是电信自己送的路由器应该更不行了。。。
作者: yfzh2012    时间: 2018-7-11 18:43
我感觉昨天起 这个ban IP 的时间变短了,似乎服务器又恢复正常了,因为有不能加入游戏的情况出现的时候,我看记录大概5 -6分钟之后又加进去了
作者: yfzh2012    时间: 2018-7-11 18:45
gufeng0903 发表于 2018-7-11 17:11
虚拟机+vpn把

现在国内vpn 打的很厉害,基本都不能用了,即便有几个也不稳定
作者: yfzh2012    时间: 2018-7-12 11:18
本帖最后由 yfzh2012 于 2018-7-12 11:20 编辑

目前感觉是又出了新状况,现象是 ban IP 时间大大缩短了,大约为5分钟-6分钟,而且似乎跟账户或者cdkey 相关,如果我重置IP  ,这个账户的角色也不能马上加入游戏,一定要等够时间
,而且千万在这段时间里不要反复登录,否则似乎这个时间长度会一直重置,因此 我再次调整了延迟 ,目前看下来一上午确实没再重置过路由器IP

JoinRetryDelay: 310, // Time in seconds to wait before next join attempt
SwitchKeyDelay: 5, // Seconds to wait before switching a used/banned key or after realm down
CrashDelay: 45, // Seconds to wait after a d2 window crash
RealmDownDelay: 6, // Minutes to wait after getting Realm Down message
UnableToConnectDelay: 15, // Minutes to wait after Unable To Connect message


// Put your lines under this one. Multiple entries are separated by commas. No comma after the last one.
  "pal": {JoinDelay: 10},
  "bar": {JoinDelay: 30},
  "dps": {JoinDelay: 20},
  "dps1": {JoinDelay: 35},
  "dps2": {JoinDelay: 40},   
  "dps3": {JoinDelay: 45},
  "dps4": {JoinDelay: 50},

作者: newcertify    时间: 2018-7-12 15:30
yfzh2012 发表于 2018-7-12 11:18
目前感觉是又出了新状况,现象是 ban IP 时间大大缩短了,大约为5分钟-6分钟,而且似乎跟账户或者cdkey 相 ...

现在多char进房间,你这边一局游戏不吃鸡大约run几分钟,我来学习参考一下
作者: yfzh2012    时间: 2018-7-12 21:46
本帖最后由 yfzh2012 于 2018-7-12 21:50 编辑
newcertify 发表于 2018-7-12 15:30
现在多char进房间,你这边一局游戏不吃鸡大约run几分钟,我来学习参考一下 ...

前面说过了 15-20 分钟 ,我测试的五开。。。

作者: mimicwpe    时间: 2018-7-12 22:55
感謝樓主分享
真的很實用
作者: newcertify    时间: 2018-7-13 16:44
yfzh2012 发表于 2018-7-12 21:46
前面说过了 15-20 分钟 ,我测试的五开。。。

看起来15-20分钟是关键,我2开12分钟的话,最多2盘就RD了
作者: lighkl    时间: 2018-7-13 19:41
给楼主点赞,感谢分享!
作者: payallmoney    时间: 2018-7-14 13:02
赞一个 , 解决好大的疑惑
作者: 幸運七77    时间: 2019-7-6 03:34
謝謝分享,非常實用的
作者: saru5843    时间: 2019-8-14 12:55
大佬威武   !!!!!
作者: harrypili    时间: 2019-8-22 14:16
学习了
作者: leolo159    时间: 2019-9-10 10:36
谢谢大佬  感谢 感谢
作者: btlgmkii    时间: 2019-9-11 16:56
我昨天就是连着进退房间。结果被BAN了。。。还好时间不长
作者: 阿成    时间: 2021-12-18 16:16
感谢分享




欢迎光临 战网中国 (http://www.battlecn.net/) Powered by Discuz! X3.1