asp

位置:IT落伍者 >> asp >> 浏览文章

在ASP中获取客户端MAC地址的方法


发布日期:2020年06月04日
 
在ASP中获取客户端MAC地址的方法

本程序属于一种特别的方法使用范围比较有限而且有一定的危险性借鑒了asp后门里的一些方法下面是程序代码

<%

dim remoteaddr

if RequestServerVariables(HTTP_X_FORWARDED_FOR)=empty then

remoteaddr=RequestServerVariables(REMOTE_ADDR)

else

remoteaddr=RequestServerVariables(HTTP_X_FORWARDED_FOR)

end if

ResponseWrite(GetMac(remoteaddr))

由于读取某IP的网卡MAC地址

本程序通过调用arp命令通过查询本机arp表读取特定IP的MAC地址

使用本程序需注意以下事项

本程序需要WSCRIPTSHELLScriptingFileSystemObject两个组件请确保您的服务器可以正常使用这两个组件

本程序需要调用cmdexe程序请确保IIS来宾帐号对程序有访问权限

本程序需要临时文件保存结果请确保IIS来宾帐号对临时目录有写权限

function GetMac(IP)

On Error Resume Next

Dim oScript

Dim oFileSys oFile

Dim All szTempFileipcphyctypec

Dim TempPath

Set oScript = ServerCreateObject(WSCRIPTSHELL)

Set oFileSys = ServerCreateObject(ScriptingFileSystemObject)

TempPath=d:\temp\ 临时目录

szTempFile = TempPath & oFileSysGetTempName() 获取临时文件名

Call oScriptRun (cmdexe /c ping n & IP True) 保证arp表中有此IP

Call oScriptRun (cmdexe /c arp a & IP & > & szTempFile True)

Set oFile = oFileSysOpenTextFile (szTempFile False )

All=oFileReadAll()

oFileClose

If (IsObject(oFile)) Then

Call oFileSysDeleteFile(szTempFile True)

End If

arr = Split(All vbCrLf)

If UBound(arr) = Then

ipc = InStr( arr() Internet Address)

phyc = InStr( arr() Physical Address)

typec = InStr( arr() Type)

If typec > phyc And phyc > ipc And ipc > Then

GetMac=Ucase(Trim(CStr(Mid(arr() phyc typec phyc))))

End If

End If

End function

%>

上一篇:用AspNetPager控件最详细的分页实现方法

下一篇:一个ASP显示剩余磁盘空间的函数