PHP - 可以找到用户是否从路由器浏览并获取路由器信息

Fáb*_*nes 4 php networking router

大家好.

我认为不可能只使用PHP,但只是为了确定.

  • PHP是否可以知道用户是否从路由器后面访问Web ?
  • 如果是,我怎样才能获得有关该路由器的一些信息,例如:
    • 路由器名称,品牌,序列号,......
    • 用户连接在同一网络中.
  • PHP还可以找到该网络中访问者的本地IP地址吗?

一些简单的问题.我还没有找到一个可靠的答案,而且我认为一些PHP天才可以告诉我.教我

谢谢你的帮助.

编辑:这个隐私侵入性问题的动机

我没想到我不得不这么说......但我想我会这样做

我正在编写一些函数来获取浏览器首选语言,并根据IP查找用户来自哪个国家/地区,以便以正确的语言向访问者提供我的网站内容.

然后我开始思考,大多数人从路由器后面浏览,我能否知道它们是否确实存在?


然后我想起了一个简单的程序,它们显示网络细节,网络连接的人.我的想法是这样做,但Web App Based不是桌面应用程序基于此类所有其他程序.

正如大多数开发人员所做的那样,我非常欣赏隐私,所以我有点理解Down Votes,我可能会自己向下投票.

如果你因为我的奇怪问题误判我,我很抱歉,我无所事事.这些事情刚刚出现在我的头上.

Fel*_*ing 7

首先,您是在谈论有关访问您网站的用户的信息吗?请记住,这意味着侵入他们的隐私(你可以尝试自己;))

PHP是否可以知道用户是否从路由器后面访问Web?

你不能.只有当你知道例如你有来自一家公司的很多访问者并且他们都拥有相同的IP地址时,他们可能会在路由器后面,但它也可能是一个代理.

如果是,我怎样才能获得有关该路由器的一些信息,例如:

  • 路由器名称,品牌,序列号,......

如果您拥有IP,则可以使用nmap等工具发现有关主机的各种信息 .您可能能够找到路由器和主机系统的品牌,但绝对不是序列号和这样的东西.但是,nmap不是PHP.
注意:在某些国家/地区,未经许可使用此类工具是非法的.无论如何,未经许可使用此类工具在道德上是有问题的.

  • 用户连接在同一网络中.

正如我在第一个问题中提到的,如果您有不同的用户使用相同的 IP地址,则他们可能位于同一网络中.他们也可能在不同的子网络中.无论如何,你无法获得他们的本地IP地址.

PHP还可以找到该网络中访问者的本地IP地址吗?

见前一个答案.


你看,一切都很模糊,主要是基于假设.你无法获得可靠的信息,我很高兴我们还没有完全透明.

一旦我们都使用IPv6,整个故事就是另一个故事.

  • 通过比较源自同一IP的多个会话的User-Agent标头,您可以检测到存在多个路由器(如果相同的IP报告Mac浏览器而另一个在Windows Vista上报告,则可能涉及NAT). (3认同)
  • 可以基于TTL行为将代理与NAT区分开(与例如ping相同地址相比).但是确定这超出了我怀疑的PHP的能力(当然这取决于Web服务器以及它提供的任何其他功能来获取低级别的数据包信息). (3认同)

Cha*_*rch 5

我不知道你想做什么,但它让我有点担心.

所以我很高兴(因为你怀疑)这是不可能的.

您询问的所有细节都是没有理由让本地网络以外的任何人需要的信息,如果路由器向全世界广播这将是一个巨大的安全问题.