在python中获取错误的本地IP地址

时间:2014-12-25 12:57:50

标签: python ip-address

我的操作系统是Windows 8.1,我在Vmware中安装了Windows 7和Linux debian。在python(2.7)中,当我尝试获取本地IP地址时,它显示vmware的IP地址(Win7)而不是Win8.1的IP地址(图片)!有什么问题?
我已将vmware的网络适配器设置为NAT。

编辑:我使用的代码:socket.gethostbyname(socket.gethostname())

enter image description here

2 个答案:

答案 0 :(得分:0)

尝试使用此

import socket

LocalIP = ''.join(socket.gethostbyname_ex(socket.gethostname())[2])

print(LocalIP)

答案 1 :(得分:-1)

请使用此。 那就是当您的机器上有多个IP时,您操纵[0,1]来选择正确的IP。 就我而言,这是第二个。这就是为什么1却是0的原因。

LocalIP = (socket.gethostbyname_ex(socket.gethostname())[2][1])

Documentation for socket.gethostbyname_ex(hostname)