如何在ASP.NET中获取客户端设备的mac地址 [英] How to get mac address of client device in ASP.NET

查看:133
本文介绍了如何在ASP.NET中获取客户端设备的mac地址的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在网站中检索客户端设备的mac地址。



当我使用url中的IP地址访问托管网站时,会显示Mac地址,但是当我使用域名访问同一网站时不显示。



我尝试过:



 Dim remoteIpAddress = Request.UserHostAddress 
尝试
Dim userip As String = Request.UserHostAddress
Dim strClientIP As String = Request.UserHostAddress.ToString()。Trim()
Dim ldest As span class =code -sdkkeyword> Int32 = inet_addr(remoteIpAddress)
Dim lhost As Int32 = inet_addr(
Dim macinfo As New Int64 ()
Dim len As Int32 = 6
Dim res As Integer = SendARP(ldest, 0 ,macinfo,len)
Dim mac_src As String = macinfo.ToString( X
如果mac_src = 0那么
' 跳过没有阻止的macId可能是?
返回
结束如果

虽然mac_src.Length< 12
mac_src = mac_src.Insert(0,0)
结束时

Dim mac_dest As String =

for i As Integer = 0到10
如果0 =(i Mod 2)那么
如果i = 10那么
mac_dest = mac_dest.Insert(0,mac_src.Substring(i,2))
Else
mac_dest = - + mac_dest.Insert(0,mac_src.Substring(i,2))
End if
End If
Next
TextBox1。 Text = mac_dest.ToString()
hdnmacid.Value = mac_dest.ToString()

解决方案

< blockquote>这是一个非常常见的问题,请在提出问题之前先做基础研究,比如使用谷歌。



你无法获得客户端的MAC地址除非你们都在同一个本地网络上,因为它不是在本地网络之外传输的。


I am retrieving mac address of client device in a website.

Mac address is getting displayed when i access the hosted site using IP address in url, however it doesn't display when i access the same site using domain name.

What I have tried:

Dim remoteIpAddress = Request.UserHostAddress
  Try
      Dim userip As String = Request.UserHostAddress
      Dim strClientIP As String = Request.UserHostAddress.ToString().Trim()
      Dim ldest As Int32 = inet_addr(remoteIpAddress)
      Dim lhost As Int32 = inet_addr("")
      Dim macinfo As New Int64()
      Dim len As Int32 = 6
      Dim res As Integer = SendARP(ldest, 0, macinfo, len)
      Dim mac_src As String = macinfo.ToString("X")
      If mac_src = "0" Then
          'Skip No macId blocked may be??
          Return
      End If

      While mac_src.Length < 12
          mac_src = mac_src.Insert(0, "0")
      End While

      Dim mac_dest As String = ""

      For i As Integer = 0 To 10
          If 0 = (i Mod 2) Then
              If i = 10 Then
                  mac_dest = mac_dest.Insert(0, mac_src.Substring(i, 2))
              Else
                  mac_dest = "-" + mac_dest.Insert(0, mac_src.Substring(i, 2))
              End If
          End If
      Next
      TextBox1.Text = mac_dest.ToString()
      hdnmacid.Value = mac_dest.ToString()

解决方案

This is a very frequently asked question, please do basic research before asking a question such as using google.

You can't get the MAC address of the client unless you're all on the same local network as it is not transmitted outside of the local network.


这篇关于如何在ASP.NET中获取客户端设备的mac地址的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆