python 用python从linux获取ip地址

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 用python从linux获取ip地址相关的知识,希望对你有一定的参考价值。

#get the mac address
import uuid
def get_mac_address(): 
    mac=uuid.UUID(int = uuid.getnode()).hex[-12:] 
    return ":".join([mac[e:e+2] for e in range(0,11,2)])

#get the ip address
import socket
def get_inet_ipaddress():
  myname = socket.getfqdn(socket.gethostname())
  myaddr = socket.gethostbyname(myname)
  #the name of computer
  print myname
  #the ineter ip of the computer
  print myaddr

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')
#'127.0.0.1'
  
#>>> get_ip_address('eth0')
#'38.113.228.130'

以上是关于python 用python从linux获取ip地址的主要内容,如果未能解决你的问题,请参考以下文章

用Linux命令行获取本机外网IP地址

Linux 上的 Python:在 /etc/hostname 中获取主机名

使用 python 获取 Linux 的 IP 信息(通过 ifconfig 命令)

python获取linux本机IP

python优雅获取本机 IP 方法

Python:获取linux中本地接口/ IP地址的默认网关