atm 我正在构建自己的身份验证系统。但是今天我偶然发现了一个小问题。
如何区分具有相同 ip 的客户端?
我首先想到的是“嘿没问题,只要看看他们的 macip”。但是 HTTP 不包含 mac ip 地址,我无法在客户端上运行 python 程序。
所以我将不得不使用某种javascript。
但这感觉就像一个黑客。
所以我做了一些调查 区分同一 Intranet 上的两台计算机
但是我怎样才能访问“clientport”呢?这是一个好的解决方案吗?
atm 我正在构建自己的身份验证系统。但是今天我偶然发现了一个小问题。
如何区分具有相同 ip 的客户端?
我首先想到的是“嘿没问题,只要看看他们的 macip”。但是 HTTP 不包含 mac ip 地址,我无法在客户端上运行 python 程序。
所以我将不得不使用某种javascript。
但这感觉就像一个黑客。
所以我做了一些调查 区分同一 Intranet 上的两台计算机
但是我怎样才能访问“clientport”呢?这是一个好的解决方案吗?
在客户第一次访问时给他一个令牌,他必须在每次请求时将其发送回服务器以识别自己。在网络浏览器中,这是一个带有会话 ID 或类似唯一标识符的 cookie。在非 Web 浏览器系统上,您可以执行类似的操作。在协议级别上没有办法做到这一点,因为底层协议(TCP/IP、HTTP)被设计为将数据包路由到它们的目的地,唯一标识不是该过程的一部分。
根据您的问题,我推断您正在编写基于 HTTP 的身份验证系统,而不仅仅是裸 TCP。在这种情况下,您可以使用 cookie,它提供了您需要的那种跟踪机制,并且是 HTTP 登录机制的首选。
一般来说,使用 HTTP,您不必担心和处理 IP 地址,您在堆栈中的级别更高。