javascript获取我的本地局域网IP地址

时间:2011-12-01 20:39:28

标签: javascript pac

我很高兴使用myIpAddress()作为函数来设置pac文件,以解析我的LAN上的本地IP以对我的代理进行负载平衡。

我现在需要使用此功能,或任何简单的功能,返回本地IP,以便我可以更改我的媒体服务器的内容,以便向高带宽PC提供hq视频,同时向区域办事处提供较低质量在不同的子网上。 搜索已被证明是徒劳的。

结果是允许网页显示http://mediaserver/x到一个IP范围,http://mediaserver/y到另一个IP范围。 我真的不在乎他们拥有什么WAN地址,它是一个内联网。

我的pac文件工作正常。

我需要做些什么才能在可以在win32,OSX和sun机器上运行的Web脚本中获得相同的功能?

1 个答案:

答案 0 :(得分:1)

本地机器无法确定其他服务器看到的自己的IP地址。例如,我的Linux笔记本电脑有3个不同的有效IP地址,并且不包括可能为外部流量临时分配的任何NAT地址。让Javascript在本地找出哪一个是“正确的”是徒劳的任务。

您需要的是重定向服务器(例如http://mediaserver/entrypoint-for-redirect),它确定请求来自哪个IP地址,然后基于该重定向(HTTP-302)到所需资源 - 即http://mediaserver/x或y。

修改

当您使用apache时,您也可以在不使用mod-rewrite模块的重定向的情况下实现相同的功能 - 即。在服务器上安装mod-rewrite并创建一个规则来切换流量,而无需重定向到服务器上的正确资源。