检查ip是否在Raspberry上的Python范围内

时间:2014-05-17 21:51:26

标签: python ip raspberry-pi

我试图解决我的问题2天了。但是,我尝试过的却无法工作。

树莓的ip:192.168.1.129

import socket
import fcntl
import struct
#import time

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

#print get_ip_address('lo')
#print get_ip_address('eth0')
#print get_ip_address('wlan0')

shortip = get_ip_address('wlan0')[:3]
#print shortip

if shortip in range(1, 255):    
   print get_ip_address('wlan0')
else:
   print 'No connection'

当我解开打印get_ip_address(' wlan0')时,我得到一个结果:192.168.1.129

当我解开短信时,我得到一个结果:192

那应该在范围内。

但我只能得到结果"没有连接"

为什么会发生这种情况? 谢谢!

0 个答案:

没有答案