Board logo

标题: [系统相关] wifi 局域网问题怎样用批处理实现? [打印本页]

作者: allen2023    时间: 2023-11-11 11:15     标题: wifi 局域网问题怎样用批处理实现?

一、如果局域网内的电脑上有个程序,我只想让在这个本地的wifi下才能用,拷贝走用不了,该咋实现?
我只想到了获取路由器序列号,但不知道咋获取。其他办法也行。
二、另外,我通过下列代码,可以实现让ip转化为计算机名称,但发现有些电脑明明有计算机名称,却返回的还是局域网ip
刚来入门bat,麻烦各位解答下,感谢!
  1. :Get_ip2name
  2. setlocal
  3. for /f "tokens=3 delims= " %%a in ('ping -a -n 1 %1 ^|find /i "["')do (set "ip2name=%%a"&set "ip2name=!ip2name:.lan=!")
  4. REM echo.ip:%1 ip2name:!ip2name!
  5. if "%ip2name%"=="" (set Bcode=1)else set Bcode=0
  6. endlocal&set %2=%ip2name%&exit/b %Bcode%
复制代码

作者: Batcher    时间: 2023-11-11 18:53

回复 1# allen2023


问题二的排查思路:
找一台正常的电脑和一台不正常的电脑,分别按照以下步骤操作。
双击文件 C:\Windows\System32\cmd.exe
在打开的CMD窗口中执行以下命令:
ping -a -n 1 局域网真实IP

结果发出来看看
作者: ShowCode    时间: 2023-11-11 19:44

回复 1# allen2023


一、如果局域网内的电脑上有个程序

你说的这个程序,它也是一个BAT脚本吗?
假设默认网关地址是 192.168.0.1
你打开一个CMD窗口,执行命令:
  1. arp -a | findstr /c:" 192.168.0.1 "
复制代码
看看能否获取到网关的MAC地址
作者: allen2023    时间: 2023-11-11 20:23

本帖最后由 allen2023 于 2023-11-11 20:24 编辑

回复 2# Batcher


    图片上传不上去,结果如下,问题是有一些电脑不显示计算机名称,显示的是ip ,那几台电脑要明天我过去才能操作。
  1. 正在 Ping MM202104161934.lan [192.168.2.134] 具有 32 字节的数据:
  2. 来自 192.168.2.134 的回复: 字节=32 时间=2ms TTL=128
  3. 192.168.2.134 的 Ping 统计信息:
  4.     数据包: 已发送 = 1,已接收 = 1,丢失 = 0 (0% 丢失),
  5. 往返行程的估计时间(以毫秒为单位):
  6.     最短 = 2ms,最长 = 2ms,平均 = 2ms
复制代码
我需要这个是因为,robocopy 同步文件过去给这几台电脑同步一份文件夹,但robocopy 命令 貌似打不开\\ip\这样的路径,\\计算机名\这样的能成功,摸索两天了没成功,就卡这里了
作者: Batcher    时间: 2023-11-11 20:31

回复 4# allen2023


下次有机会操作有问题的电脑,试试这几个方法行不行:


如果需要上传文件,请用使用网盘。

如果需要上传截图,可以找个图床,例如:
http://bbs.bathome.net/thread-60985-1-1.html
作者: allen2023    时间: 2023-11-11 20:40

回复 3# ShowCode


  你说得对,是bat,最近发现bat可以转exe,可高兴了,昨天看版主的一个帖子,轻易就破解了,凑合着用吧
  1. arp -a | findstr /c:" 192.168.2.134 "
  2.   192.168.2.134         00-23-14-ec-ca-d5     动态
复制代码
得到的是机器的物理地址,接下来咋操作,给每台机器判断下貌似行不通,ip是动态的物理地址就变了。
所以,我想到,有没有办法判断是不是机器在指定wifi下,没接触过,找资料也找了,不会弄
作者: ShowCode    时间: 2023-11-11 20:46

回复 6# allen2023


    不是本机IP,而是网关IP,一个局域网里面的多台电脑使用的应该是同一个网关IP,也就是说你在内网不同电脑上执行这个命令行获取到的应该是相同的MAC地址。
作者: czjt1234    时间: 2023-11-11 21:29

程序加个壳,或者说加个套,把这个程序隐藏起来,然后用其它程序调用
其它程序负责判断是不是在wifi环境
作者: allen2023    时间: 2023-11-11 22:14

回复 7# ShowCode

知道了,好思路,那这个网关,用他的物理地址就可以了
  1. for /f "skip=3 tokens=1,3 delims= " %%i in ('arp -a') do (set ip=%%i&set ip=!ip:^ =!&echo %%i&call :first)
  2. :first
  3. for /f "tokens=1-3 delims= " %%i in ('arp -a ^| findstr /c:" !ip! "') do (echo %%j)
复制代码
%%j只要是确定唯一的,明天试试,能用就行
作者: allen2023    时间: 2023-11-11 22:19

回复 8# czjt1234


  咋加壳,能不能发个案例,才知道【P处理转EXE.exe】可以转bat,知道可以轻易破解后就突然感觉白高兴了
作者: czjt1234    时间: 2023-11-12 09:29

回复 10# allen2023


比如你把程序重命名为txt文件,然后用批处理启动
批处理运行时先重命名为exe文件

至于很容易破解么,人家要是会破解,你大多数手段都不管用
作者: allen2023    时间: 2023-11-12 10:30

本帖最后由 allen2023 于 2023-11-12 10:39 编辑

回复 11# czjt1234


    实际上不去研究一般人确实破解不了, 已通过【 7楼 7# ShowCode 】的建议完成了,锁定wifi下可用。拷走不能用的问题解决了,
拷贝走破解,那就先那样吧,以后再说
作者: allen2023    时间: 2023-11-12 14:22

回复 2# Batcher


  昨天用了哪个命令忘了,net view试了不对。有个命令 出来是
  1. 计算机名
  2. pc1  唯一
  3. pc1 冲突
  4. pc2  唯一
复制代码
试了好几个又找不到哪个了,反正是计算机名字有一样的,会重复,图上几个问题估计是存在的,我还在排查

客体机共享文件夹统一路径格式如下,是留给主机镜像同步文件过来用的
net share %gxname%=c:\fd1
rem gxname 是一个统一的名称
主机执行下面程序,来给每台机器同步文件
set mirdestDir=\\!计算机名称!\%gxname%\同步文件
robocopy %srcDir% !mirdestDir! !para!

robocopy 远程复制 指令 执行 \\计算机名\ 可以,  \\ip\ 不行,知识盲点
总结:现在遇到两个难题
1.部分机器获取不到计算机名称,有名称 开共享,这个 \\!计算机名称!   路径 才打得开,我继续排查是不是图片上的4条原因造成的
2.如果获取名称解决了,那名称重复,能不能远程改名称,如,pc_1
作者: hlzj88    时间: 2023-11-17 23:47

回复 13# allen2023
这文章可能解决你部分问题http://www.bathome.net/viewthrea ... =%BE%D6%D3%F2%CD%F8




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