网上搜了下 很多说这样的
Runtime.getRuntime().exec(balabala)
有用ipconfig的 有用nbtstat的
但是都报
java.io.IOException: CreateProcess error=2
感觉是win7的权限问题?
代码是这样的
<%
String sip="";
String smac="";
sip = request.getHeader("x-forwarded-for");
if(sip == null ||sip.length() == 0 || "unknown".equalsIgnoreCase(sip))
{
sip = request.getHeader("proxy-Client-IP");
}
if (sip == null || sip.length() == 0 || "unknown".equalsIgnoreCase(sip))
{
sip = request.getHeader("WL-Proxy-Client-IP");
}
if (sip == null ||sip.length() == 0 || "unknown".equalsIgnoreCase(sip))
{
sip = request.getRemoteAddr();
}
//本机过滤掉
if(!"127.0.0.1".equals(sip))
{
Process process = Runtime.getRuntime().exec("nbtstat -a " + sip);
InputStreamReader ir = new InputStreamReader(process.getInputStream());
LineNumberReader input = new LineNumberReader(ir);
String line;
while ((line = input.readLine()) != null)
if (line.indexOf("MAC Address") > 0)
{
smac = line.substring(line.indexOf("-") - 2);
}
}
out.println(smac);
out.println("<br>");
out.println(sip);
%>
--
FROM 116.77.4.82