在BS模式下,服务器端怎样才能获取到客户端的计算机标识或网卡物理地址(MAC)?

在BS模式下,服务器端怎样才能获取到客户端的计算机标识或网卡物理地址(MAC)?,第1张

你应该说明是在什么样的B/S模式下啊!比如服务端采用
ASP/ASPNET/JSP/PHP/CGI等等啊!在JSP下可以用InetAddressgetLocalHost()getHostName()获得

复制代码 代码示例:private void ButtonIP_Click(object sender, SystemEventArgs e)
{ SystemNetIPAddress[] addressList = DnsGetHostByName(DnsGetHostName())AddressList;
if ( addressListLength>1)
{ TextLIPText = addressList[0]ToString();
TextSIPText = addressList[1]ToString();}else{TextLIPText = addressList[0]ToString();
TextSIPText = "没有可用的连接";}}另一种获取服务器的IP地址与MAC地址的方法:
复制代码 代码示例:using SystemManagement;
string stringMAC = "";
string stringIP = "";
ManagementClass MC = new ManagementClass "Win32_NetworkAdapterConfiguration");
ManagementObjectCollection MOC= MCGetInstances();
foreach(ManagementObject MO in MOC){if ((bool)MO["IPEnabled"] == true){stringMAC += MO["MACAddress"]ToString();
TextMACText = stringMACToString();
string[] IPAddresses = (string[]) MO["IPAddress"];
if(IPAddressesLength > 0)
stringIP = IPAddresses[0];
TextIPText = stringIPToString();}}获取客户端本机的IP地址的方法:
复制代码 代码示例:using SystemNet;
TextIPText=PageRequestUserHostAddress;获取客户端本机的MAC地址刚复杂一些,需要调用两个API,用ARP协议获取,但也只能获取到同网段机器的MAC,对于跨网段的得利用IP扫描或cmd中nBTstat命令获取MAC地址。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10614273.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存