通过Python获取我的本地IP地址和网络的子网掩码

时间:2019-03-10 00:07:18

标签: python networking

我想获取我的本地 IP地址,以及使用Python代码的网络的子网掩码。 我尝试使用以下代码获取IP地址:

import socket
print socket.gethostbyname(socket.gethostname())

但是我得到的IP> 169.254.236.99,这不是我的本地IP地址。

那么也许您可以帮助我做到这一点?谢谢。

编辑:我发现了适用于Linux和Windows的 IP地址的不错的解决方案

import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect(("8.8.8.8", 80))
print(s.getsockname()[0])

因此,如果您能为我提供子网掩码的帮助,那将非常有用:)

1 个答案:

答案 0 :(得分:0)

环回通常不是,但总是127.0.0.1 您的本地IP(LAN)是192.168.1.11(wifi)

看看这个:Netifaces

这有点麻烦,可能会进一步帮助您。 :-)