>> get_ip_address('lo') '127.0.0.1' >>> get_ip_address('eth0') '38.113.228.130' """ s = socket.socket(socket.AF_INET, socket.S">
mn6e
10年前发布

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])