在ASMX Web服务上获取客户端的IP地址

时间:2014-10-07 02:07:49

标签: c# asp.net asmx

我正在尝试通过验证调用者的IP地址来验证Web服务。 Web服务应该是网络内部的。

并且在尝试这样做时,HttpContext.Current.Request.UserHostAddress有一个奇怪的值,如“:: 1”

请参阅下面的调试点截图。

enter image description here

问题:

  1. 为什么这不起作用并给出客户端正确的IP?
  2. 是否有更好的方法来验证内部客户端的Web服务?
  3. 提前致谢。

1 个答案:

答案 0 :(得分:3)

  1. 为什么这不起作用并给出客户端正确的IP?
  2. 确实在工作,你正在看" :: 1"因为它是ipv6 AKA localhost的保留环回地址或ipv4中的127.0.0.1

    IPv6

      

    环回地址0000:0000:0000:0000:0000:0000:0000:0001,可能是   通过使用两个规则缩写为:: 1。

    1. 是否有更好的方法来验证内部客户端的Web服务?
    2. 你必须知道身份验证和放大器之间的区别。授权,我建议您创建一个新问题,其中包含您在Web服务中使用的身份验证方法的更多详细信息