DIY个人智能家庭网关—— python篇之获取路由器外网地址
2017-02-26 20:28
387 查看
免费的DDNS域名服务有时候刷新不及时,解析不到路由器的IP,就可以采用这种方法来解决
#!/usr/bin/env python # -*- coding: utf-8 -*- import socket import fcntl import struct import subprocess import jpush from time import sleep SIOCGIFADDR = 0x8915 def get_ip_address(ifname): s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) try: ip = socket.inet_ntoa(fcntl.ioctl( s.fileno(), SIOCGIFADDR, struct.pack('256s', ifname[:15]) )[20:24]) return ip except: return '' old_ip ='' while True: new_ip = get_ip_address('pppoe-wan') if new_ip != old_ip and new_ip != '': msg = '你的路由器IP:%s'%new_ip old_ip = new_ip try: jpush.push_msg(msg) except: sleep(2) continue sleep(10*60)
相关文章推荐
- DIY个人智能家庭网关—— 路由器篇之安装python
- DIY个人智能家庭网关—— python篇之获取手机WIFI连接(上线/下线)状态
- DIY个人智能家庭网关——python篇之读取USB串口,获取门磁报警信息
- DIY个人智能家庭网关—— 路由器篇之刷机
- DIY个人智能家庭网关——python篇之推送消息到手机
- DIY个人智能家庭网关——python篇之推送门磁报警信息到手机
- DIY个人智能家庭网关—— 路由器篇之配置DDNS
- DIY个人智能家庭网关—— 路由器篇之申请公网IP
- DIY个人智能家庭网关——python篇之门磁触发后自动点亮WIFI灯带
- DIY个人智能家庭网关——python篇之推送手机上下线事件
- DIY个人智能家庭网关——硬件篇之433M无线接收解码器(一)
- DIY个人智能家庭网关——硬件篇之433M无线接收解码器(二)
- DIY个人智能家庭网关——手机篇之客户端设计
- DIY个人智能家庭网关—— 手机篇之Jpush推送平台
- DIY个人智能家庭网关——硬件篇之WIFI灯带DIY
- DIY个人智能家庭网关—— 前言
- C#获取路由器外网IP,MAC地址
- 通过网页获取路由器外网IP地址
- python获取外网地址
- python获取外网ip地址的方法总结