Board logo

标题: [网络连接] 【暂时已解决】批处理中执行xcopy后导致客户机arp无法正常绑定 [打印本页]

作者: mismore    时间: 2009-4-11 02:59     标题: 【暂时已解决】批处理中执行xcopy后导致客户机arp无法正常绑定

问题起因:
我是在讯闪08的游戏服务端放置了一个“Cver.bat”批处理,每次开机的时候服务端会把这个bat下传到每台客户机的开机启动项上,而在另一台服务器(192.168.1.123)则共享出一个墙纸文件夹"Wall"。

======================================
@echo off
arp -d
arp -s 192.168.1.1 00-12-34-56-78-99
arp -s 192.168.1.2 99-78-56-34-12-00
start \\192.168.1.123\Wall\深圳网盟墙纸.exe
===========================================

结果导致192.168.1.123经常性蓝屏幕死机。
so,我后来换了个想法,对“Cver.bat”作了如下
的小小改动

======================================
@echo off
xcopy \\192.168.1.123\Wall\*.* d:\wall\ /s /e
arp -d
arp -s 192.168.1.1 00-12-34-56-78-99
arp -s 192.168.1.2 99-78-56-34-12-00
start d:\wall\深圳网盟墙纸.exe
===========================================

结果192.168.1.123不再死机,但是导致下面的机器间歇性无法绑定192.168.1.1和192.168.1.2。但是“xcopy \\192.168.1.123\Wall\*.* d:\wall\ /s /e”则如常执行。在此想请各位大虾给俺分析一下问题所在,谢谢各位了!

注明一下,192.168.1.1是网关,192.168.1.2是存档服务器。至于“深圳网盟墙纸.exe”是一个墙纸文件,wall\还有很若个文件和文件夹是跟“深圳网盟墙纸.exe”一起执行使用的。

[ 本帖最后由 mismore 于 2009-4-12 14:11 编辑 ]
作者: lxzzr    时间: 2009-4-11 05:40

你这个问题貌似比较复杂,呵呵,START换成CALL试试
作者: mismore    时间: 2009-4-11 09:05

原帖由 lxzzr 于 2009-4-11 05:40 发表
你这个问题貌似比较复杂,呵呵,START换成CALL试试


恩?原闻其详~~谢谢啦!
作者: zqz0012005    时间: 2009-4-11 09:11

与xcopy无关。
什么叫“间歇性无法绑定”?你不就运行bat时绑定一次吗?难道你是每隔一段时间运行一次?

‘有很若个文件和文件夹是跟“深圳网盟墙纸.exe”一起执行使用的。’
蓝屏可能是这个原因造成的。start时指定路径:
  1. start "" /d "d:\wall" "d:\wall\深圳网盟墙纸.exe"
复制代码

作者: mismore    时间: 2009-4-11 09:39

原帖由 zqz0012005 于 2009-4-11 09:11 发表
与xcopy无关。
什么叫“间歇性无法绑定”?你不就运行bat时绑定一次吗?难道你是每隔一段时间运行一次?

‘有很若个文件和文件夹是跟“深圳网盟墙纸.exe”一起执行使用的。’
蓝屏可能是这个原因造成的。start时 ...


所谓“间歇性无法绑定”是指每次客户机重新启动的时候,有时候arp不能正常绑定网关,在cmd里面键入arp -a显示192.168.1.1是动态的。
作者: mismore    时间: 2009-4-11 09:43

我的本意是,是否因为命令执行先后的问题所在?例如将xcopy放在arp之后?又或者可以在arp与xcopy之间加入判断绑定是否成功然后才执行下一条的命令呢?
作者: Batcher    时间: 2009-4-11 14:09     标题: 回复 5楼 的帖子

你是把这个bat放到开机启动项里面了?如果是,请把这个信息更新到顶楼。
作者: Batcher    时间: 2009-4-11 14:12     标题: 回复 6楼 的帖子

你自己测试的结果如何呢?
  1. @echo off
  2. arp -d
  3. arp -s 192.168.1.1 00-12-34-56-78-99
  4. arp -s 192.168.1.2 99-78-56-34-12-00
  5. xcopy \\192.168.1.123\Wall\*.* d:\wall\ /s /e
  6. start d:\wall\深圳网盟墙纸.exe
复制代码
  1. @echo off
  2. ping -n 10 127.1 >nul
  3. arp -d
  4. arp -s 192.168.1.1 00-12-34-56-78-99
  5. arp -s 192.168.1.2 99-78-56-34-12-00
  6. xcopy \\192.168.1.123\Wall\*.* d:\wall\ /s /e
  7. start d:\wall\深圳网盟墙纸.exe
复制代码

作者: mismore    时间: 2009-4-11 17:24

原帖由 Batcher 于 2009-4-11 14:09 发表
你是把这个bat放到开机启动项里面了?如果是,请把这个信息更新到顶楼。


的确是把这个bat放到开机启动项里,正确来说我们是使用讯闪08的游戏平台,我是在讯闪08的服务端放置这个bat,每次开机的时候服务端会把这个bat下传到每台客户机上。恩~不明白你这话的意思“如果是,请把这个信息更新到顶楼。”-_-
作者: mismore    时间: 2009-4-11 17:27

原帖由 Batcher 于 2009-4-11 14:12 发表
你自己测试的结果如何呢?@echo off
arp -d
arp -s 192.168.1.1 00-12-34-56-78-99
arp -s 192.168.1.2 99-78-56-34-12-00
xcopy \\192.168.1.123\Wall\*.* d:\wall\ /s /e
start d:\wall\深圳网盟墙纸.exe@ech ...


恩,这个今晚会作一个测试,不过我不明白的是为什么“ping -n 10 127.1 >nul”延迟10秒呢?请教了~~ ^Q^

[ 本帖最后由 mismore 于 2009-4-11 17:35 编辑 ]
作者: Batcher    时间: 2009-4-11 19:28     标题: 回复 9楼 的帖子

请更新顶楼的帖子内容,把所有的问题背景和描述写清楚,否则这个帖子将会被关闭。
作者: zhym    时间: 2009-4-11 19:47

学习一下了,认真看看,谢谢
作者: mismore    时间: 2009-4-12 00:57

原帖由 Batcher 于 2009-4-11 19:28 发表
请更新顶楼的帖子内容,把所有的问题背景和描述写清楚,否则这个帖子将会被关闭。


希望已经够清楚了吧??? -_-!
作者: Batcher    时间: 2009-4-12 02:05     标题: 回复 10楼 的帖子

测试成功了吗?等测试成功以后我们再做进一步讨论行吗?

不一定非得延迟10秒,你可以根据实际测试情况适当增加或减小延迟时间。
作者: mismore    时间: 2009-4-12 03:56     标题: 应该算是成功了吧~~

综上所述,我自己又更改了一点。
================================================
@echo off
ping -n 3 10 127.1 >nul
arp -d
arp -s 192.168.1.1 00-12-34-56-78-99
arp -s 192.168.1.2 99-78-56-34-12-00
xcopy \\192.168.1.123\Wall\*.* d:\wall\ /s /e
call d:\wall\深圳网盟墙纸.exe
exit
=================================================

关于延迟这一点,我还没考虑到机器配置和局网内网线的问题,应该说配置好的、千兆线的应该可以设置小点,配置差的、百兆线的设置大点。不过还要继续观察一段时间,到时候会继续有反馈的!在此谢谢各位大虾D古道热肠咯~~~ ^Q^
作者: mismore    时间: 2009-4-12 14:09

原帖由 Batcher 于 2009-4-12 02:05 发表
测试成功了吗?等测试成功以后我们再做进一步讨论行吗?

不一定非得延迟10秒,你可以根据实际测试情况适当增加或减小延迟时间。


人呢?还没起床啊??? ^_^
作者: Batcher    时间: 2009-4-12 14:30     标题: 回复 16楼 的帖子

因为开启启动项运行的时候,跟网络相关的一些初始化操作可能还没有完成,所以要延时。
作者: mismore    时间: 2009-4-12 14:35

原帖由 Batcher 于 2009-4-12 14:30 发表
因为开启启动项运行的时候,跟网络相关的一些初始化操作可能还没有完成,所以要延时。


恩~不过其中涉及到arp绑定的问题,的确还不是太懂。虽然思路上有些模糊的影子,但是暂时还不算太过清晰,你所说的初始化操作的确有可能,不过根据我自己对下面机子的观察的结论,局网线路质量也算一定的影响。所以我在还打算在ping之前加上判断机器而进行延迟时间长短的选择!请问这样是否会影响Bat本身的运行速度呢?
作者: Batcher    时间: 2009-4-12 14:39     标题: 回复 18楼 的帖子

你可以把完整代码贴出来大家讨论一下




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2