根据 设备名(br0/eth0/em0)称获取 当前机器的IP地址与子网掩码信息

简介:

#!/usr/bin/env python 

'''
根据 设备名(br0/eth0/em0)称获取 当前机器的IP地址与子网掩码信息
'''
 
import socket, struct, fcntl
 
 
 
 
def get_ipaddress(ifname = 'eth0'):
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    return socket.inet_ntoa(fcntl.ioctl(
        s.fileno(),
        0x8915,  # SIOCGIFADDR
        struct.pack('24s',ifname))[20:24])
 
def get_netmask(ifname = 'eth0'):
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    return socket.inet_ntoa(fcntl.ioctl(
        s.fileno(),
        0x891b,  #SIOCGIFNETMASK
        struct.pack('24s',ifname))[20:24])
 
print get_ipaddress('eth0')
print get_netmask('eth0')

本文转自 swq499809608 51CTO博客,原文链接:http://blog.51cto.com/swq499809608/1130673

相关文章
|
10天前
|
负载均衡 安全 Linux
为何一个网卡需要配置多个IP地址?🌐
在Linux环境中,一个网卡配置多个IP地址是一个常见且强大的网络管理策略🛠️。这种策略不仅增加了网络的灵活性和效率,还能满足特定的网络需求和应用场景🎯。让我们一探究竟,看看在哪些情况下,为什么一个网卡会需要配置多个IP地址,并探讨不配置多个IP地址的后果。
为何一个网卡需要配置多个IP地址?🌐
|
10天前
|
负载均衡 网络架构
IP地址:是给主机配置的,还是给网卡配置的?🤔
在探索网络的奥秘时,我们经常会遇到一个看似简单但又复杂的问题:IP地址到底是配置在主机上,还是配置在网卡上?为什么我们通常说的是“主机IP地址”呢?让我们一起深入探讨。
IP地址:是给主机配置的,还是给网卡配置的?🤔
|
9月前
与10.110.12.29mask255.255.255.224属于同一网段的主机ip地址是
与10.110.12.29mask255.255.255.224属于同一网段的主机ip地址是
263 0
|
网络协议 网络架构 Linux