欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python 获取本机ip地址的两个方法

程序员文章站 2022-05-31 14:51:38
第一种:复制代码 代码如下: import socket import fcntl import struct def get_ip_address(ifname): s...

第一种:

复制代码 代码如下:

import socket
import fcntl
import struct
def get_ip_address(ifname):
s = socket.socket(socket.af_inet, socket.sock_dgram)
return socket.inet_ntoa(fcntl.ioctl(
s.fileno(),
0x8915, # siocgifaddr
struct.pack('256s', ifname[:15])
)[20:24])
#get_ip_address('lo')环回地址
#get_ip_address('eth0')主机ip地址


第二种:

复制代码 代码如下:

def get_local_ip(ifname):
import socket, fcntl, struct
s = socket.socket(socket.af_inet, socket.sock_dgram)
inet = fcntl.ioctl(s.fileno(), 0x8915, struct.pack('256s', ifname[:15]))
ret = socket.inet_ntoa(inet[20:24])
return ret
print get_local_ip("eth0")