linux下通过python获得指定网卡的ip地址详解编程语言

import socket 
import fcntl 
import struct 
   
def get_ip_address(ifname): 
   """ 
    >>> get_ip_address('lo') 
    '127.0.0.1' 
   
    >>> get_ip_address('eth0') 
    '38.113.228.130' 
    """ 
    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])

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/8364.html

(0)
上一篇 2021年7月18日
下一篇 2021年7月18日

相关推荐

发表回复

登录后才能评论