关于如何从HTTP请求中提取用户的MAC地址,有人能给我一些建议吗?

用户将来self 的网络.

推荐答案

这取决于您的网络设置.但很可能不是.

下面是关于以太网和IP的简短复习.MAC地址是网卡的唯一地址.它用于识别数据包在网段上属于哪个用户.您可以使用ARP获取IP地址的MAC地址.But this works as expected only if you are on the same network segment

所以问题是,什么是网段?这取决于您使用的技术,但以下是常见情况.整个无线网络就是一个网段.网络上的每个用户都可以与每个其他用户通话via Ethernet.在基于有线的网络上,这取决于硬件.如果您有很好的旧BNC或集线器,那么您就有一个所有用途的网段.同样,每个用户都可以与任何其他用户交谈.对于网络中的交换机,网段是将您连接到交换机的唯一电缆.在这里,您只能通过Ethernet与交换机通话.其他每个用户至少需要IP.

遗憾的是,在大多数基于TCP/IP的HTTP情况下,99.99%的用户从未处于与用户相同的网段中.您可以使用ARP,但只能获取第一跳的MAC地址.更好的是,取决于你的硬件,你甚至可能不在基于以太网的IP网络上;例如ATM机...

Asp.net相关问答推荐

Reaction-Native SignalR连接在调试模式下工作,在释放模式下失败

设置主键时KeyAttribute属性不起作用

如何在运行时判断动态数据类型的类型?

在 ASP.NET 中访问没有值的查询字符串参数

IIS 中 ASP.net 应用程序的单独应用程序池

ASP.NET 如何将控件呈现为 HTML?

使用实体框架从存储过程中获取数据

如何将配置转换应用于外部配置文件

如何在没有实体框架的情况下使用 ASP.NET Identity 3.0

如何计算/查找给定日期的周数?

Webapi、Webhost和Owin的关系

会话变量保存在哪里?

ASP.NET vNext 与主机无关,这意味着什么?

如何设置默认页面 asp.net

单独装配和路由中的控制器

.NET - c# - 需要跨分区查询,但在 DocumentDB 数据访问上禁用了问题

路由模板分隔符/不能连续出现 - 属性路由问题

System.Linq.IQueryable 不包含Where的定义

MVC4 - 当优化设置为 true 时Bundle 不起作用

在 Visual Studio 2013 中更改项目端口号