套接字:获取用户信息
我怎么才能获取连接到我的套接字的用户电脑的信息呢?
3 个回答
0
你可以试着询问一下identd来获取连接的信息,不过很多主机并不运行这个服务,或者上面提供的信息你也用不上。
1
你可以看看这里。在里面找到“# Echo server program”这一部分。
conn, addr = s.accept()
print 'Connected by', addr
我不太确定这是不是你想要的,希望对你有帮助。
3
一个“套接字”就像是两个电子设备之间通过网络(就是一堆电线)建立的“虚拟”通道。你能获取到的关于远程主机的信息,都是在网络上公开的那些。
基本的信息包括TCP/IP头部提供的内容,比如远程的IP地址、接收缓冲区的大小,还有一些没什么用的标志。想要获取其他信息,你就得向其他服务请求。
通过反向DNS查询,你可以得到与IP地址相关联的名称。使用traceroute命令可以告诉你到远程计算机的路径(或者至少是到一个作为网关/代理的机器的路径)。地理位置请求可以给你远程计算机的大致位置。如果远程主机是一个可以通过注册域名访问的服务器,WHOIS请求可以告诉你负责这个域名的人的名字。在局域网(LAN:家庭或企业网络)中,使用ARP或RARP请求可以获取到MAC地址和更多信息(这些信息是网络管理员在配置网络时设置的),甚至可能包括计算机的确切位置。
还有很多其他信息可以获取,但前提是这些信息已经被公开。如果你知道自己在找什么,以及在哪里查询这些信息,你就能很成功。如果远程主机比较隐蔽,使用了一些简单的隐匿技术(比如匿名代理),你就几乎得不到什么有用的信息。