没有静态IP但需要限制对特定位置的访问

时间:2012-09-07 08:18:41

标签: php ip

我有一个小的网络功能,只有当用户在办公室时才能运行。但问题是我们的互联网服务提供商定期更改其IP,我无法跟踪它。我们的办公室有Windows 7系统,他们没有任何静态IP。我甚至无法设置静态IP,因为它会妨碍互联网提供商设置,并将停止连接到互联网。我现在卡住了。有没有办法可以确保一个人只在他使用该功能时才在办公室?

6 个答案:

答案 0 :(得分:1)

最可靠的方法是使用MAC地址进行身份识别,因为IP可以更改,MAC地址更难以欺骗且不会更改。它是网卡的“序列号”。因此,除非他们将卡带回家,否则他们将无法访问它。请阅读 this post

答案 1 :(得分:1)

您可以使用dyndns获取当前的ip。 动态DNS允许ypou将主机名重新修改为动态IP。

因此,如果您从未知的ip或更多时间收到请求,那么自上次请求以来已经过了x秒,您可以使用gethostbyname来检索办公室IP。

免费动态DNS:

http://www.dnsdynamic.org/

获取IP:

$ip = gethostbyname('http://sample.dnsdynamic.org/');  

答案 2 :(得分:1)

这样做的一种方法是设置服务器,使其暴露2个服务 - “A”具有“特殊办公室功能”可用,“B”没有。

然后,设置网络安全性,以便只能通过办公室的VPN隧道访问服务A.

-

另一种方法可能是使用PKI - 使用访问服务A功能所需的证书安装办公室计算机。但是,虽然复杂,但具有足够权限和知识的用户仍可以复制证书并在家中安装。

答案 3 :(得分:0)

如果您的用户不是书呆子,您可以在办公室计算机中设置一个特殊的cookie,并在每次用户访问该应用程序时进行检查。

(如果您的用户知道设置和取消设置Cookie,则会失败,因为他们只会将此行为复制到他们的家中。)

此外,从办公室连接时,即使IP发生变化,仍然应该有一个特定的范围 IP,采样一些IP并检查重复模式。

答案 4 :(得分:0)

授权后,为您的办公室用户提供某种令牌。然后使用令牌确定是否授予访问权限。

令牌可以存储在办公室用户计算机上的cookie中,因此授权只进行一次。

答案 5 :(得分:0)

如果您可以访问办公室网络 - 您可以尝试配置您的服务器,这可以访问互联网,因此它会向所有请求(发送到您的服务器)添加一些令牌(cookie?)。你会在你的代码中检查它。