gpt4 book ai didi

javascript - JavaScript如何获取IP,人们在哪里使用代理?

转载 作者:行者123 更新时间:2023-12-03 08:21:04 25 4
gpt4 key购买 nike

您能说一下网站如何可以通过JavaScript获取用户的真实IP,而人们使用代理吗?

谢谢

最佳答案

客户端 Javascript 本身无法获取您的 IP 地址。而且,即使这样做,它也可能看到的是内部网络 IP 地址,而不是公共(public) IP 地址。

因此,从纯 JavaScript 获取 IP 地址的唯一方法是要求服务器告诉您的 IP 地址是什么。您向服务器发出 Ajax 请求,该请求告诉服务器您希望它返回您的 IP 地址。然后,服务器可以返回它看到您的连接来自的 IP 地址。该地址将是您的向外的公共(public) IP 地址。由于现在大多数客户端计算机都位于某种路由器/防火墙后面,因此服务器可能看到的是从您的实际客户端计算机进行 NAT 的单个公共(public) IP 地址。

如果我的客户端计算机和服务器之间的路由中有代理服务器,那么服务器将看到代理服务器的 IP 地址,而不是客户端计算机的 IP 地址。而且,你无法改变这一点。代理和路由器经过专门设计,用于将一组私有(private) IP 寻址映射到公共(public) IP 地址,同时保持私有(private)网络的网络拓扑对外界完全隐藏。

例如,我本地计算机现在的实际 IP 地址是 192.168.1.17,这是我家庭网络上的本地 IP 地址。但是,当我在互联网上询问服务器我的 IP 地址正在使用类似 http://whatismyipaddress.com/ 的服务时,然后它会报告 Comcast 分配给我的路由器的实际公共(public) IP 地址,即 67.180.86.xxx。当我从本地计算机连接到互联网时,该连接首先到达路由器,路由器使用 NAT(网络地址转换)来映射家庭网络上的私有(private) IP 地址与特定的传出 TCP 连接之间的连接。我的公共(public) IP 地址。当数据包在该连接上流回时,路由器会将这些数据包转发到我在家庭网络上的私有(private) IP 地址。

关于javascript - JavaScript如何获取IP,人们在哪里使用代理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33746409/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com