通过php(或其他东西)跟踪路由到不同的IP

Posted

技术标签:

【中文标题】通过php(或其他东西)跟踪路由到不同的IP【英文标题】:Traceroute via php (or something) to a different IP 【发布时间】:2014-04-10 19:11:14 【问题描述】:

我需要找出一种方法,让我内部网络中的用户可以触发从他们的 PC 到不是 webhost 服务器的特定服务器的跟踪路由。我的想法是使用管理员权限以某种方式在他们的 PC 上打开一个 telnet 会话,运行 traceroute,然后以某种方式检索该数据并将其放回网页上。我想用尽可能少的用户交互来做到这一点。

是否有可能做到这一点?我可以使用 fsock 打开一个 telnet 会话,但这是我所能得到的。

【问题讨论】:

我不知道,但您可以尝试查看 Java 小程序或类似的东西。重复:***.com/questions/2177431/… 【参考方案1】:

不,你不能。 php 在服务器上运行,而不是在客户端上。所以 traceroute 将从运行 PHP 脚本的服务器启动。它永远不会从请求网站的用户的 PC 触发跟踪路由。

我可以使用 fsock 打开一个 telnet 会话,但这是目前为止。

您可以使用 PHP 进行此操作,但此连接来自运行 PHP 脚本的服务器。它永远不会来自请求网站的客户。因此,按照您现在提出问题的形式,答案是:不,那是不可能的。

但是请参阅this SO question 这里建议使用 java 小程序。 Java 小程序在客户端浏览器中运行,并且能够从客户端执行跟踪路由。所以这将是你要走的路。但这与 PHP 完全无关。

【讨论】:

非常感谢。让我在尝试走上不可能的道路时节省了数小时的头痛 使用 html5 和 WebSockets,如果没有小程序或插件,这可能吗?我目前对 RTCPeerConnection 的了解并不像我想的那样熟悉。

以上是关于通过php(或其他东西)跟踪路由到不同的IP的主要内容,如果未能解决你的问题,请参考以下文章

如何使用命令追踪本机到某一个服务器之间的网络路径,该命令是基于啥类型的网络协议?

使用 cookie PHP 跟踪访问者 [关闭]

对您的原籍国进行 ip 跟踪的实际机制是啥?

路由跟踪tracert

Linux常用网络命令

网络抓包和协议初认识