简单物联网:外网访问内网路由器下树莓派Flask服务器

最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备。

已经在树莓上搭了一个轻量的flask服务器(在树莓派下搭flask在其他随笔有说明),在实验室的路由器下,任何设备都是可以访问的;但是有一些限制条件,比如我想在宿舍控制我种花的光照然后就不行了;

所以这是一个外网访问内网的梗,解决方案如下:

1.先在本地term命令下查看ifconfig(windows为ifconfig);找到自己的本机ip,我的树莓派被分配ip为192.168.1.103

2.tplink路由器的管理地址是192.168.1.1

在浏览器中输入192.168.1.1,输入用户名和密码进入路由器管理页面。点击转发规则---虚拟服务器,创建端口映射:

添加新条目,本机的ip是192.168.1.103,需要连接的端口是80.(要与树莓派flask服务器设置的端口一致)

点击保存即可。

3.然后查看路由器的IP为:10.11.47.71

4.在树莓派上开启flask服务器,sudo python weblamp.py

5.然后在宿舍你就可以访问10.11.47.71:80这个IP,通过转发映射到路由器下树莓派192.168.1.103这个内网ip了;

做的是一个简易物联网的网页,按钮控制灯之类,然后网页可以读到DHT11,简单有意思的一个小东西。

注意注意!!

我说的只是在校园内这个局域网,因为实验室的路由器是二级路由,只能在学校内部用这个方法,对于宿舍控制实验室还是可以做得到的;

没有权限访问学校一级路由,所以想用4G访问还是不行的,如果你有自己的独立IP当我没说,那就想怎么玩就怎么玩了;

哪天也弄一个独立IP,哈哈。

时间: 2024-10-10 18:34:06

简单物联网:外网访问内网路由器下树莓派Flask服务器的相关文章

SVN外网访问内网的操作步骤

外网访问内网SVN 需要将路由映射到VisualSVN server 的443端口 将外网的端口从路由器上进行映射到内网端口,例如将外网的6000端口映射为内网的443端口,443为svn服务器默认端口. SVN客户端访问为https://ip:6000/svn/code

外网访问内网工具ngrok tunnel 使用方法

在软件开发测试过程中,我们会经常遇到需要网站部署测试或者给客户演示这样的需求.通常的做法是申请一个域名和空间,将网站放到外网上给客户演示. 这种方法确实可行不过会有两点不好,第一是增加了开支,二是出现问题需要现在自己电脑上改好bug重新上传到外网. 那么问题来了,有没有一种简单的方法,让客户之间访问开发者的电脑上的网站?答案就是下面我将要为大家介绍的外网访问内网工具ngrok tunnel 的使用方法. tunnel可以让公网访问内网部署的站点,对于软件开发测试很有帮助. 由于国外官网经常被墙(

外网访问内网SVN服务器 IOS开发

在已经建好SVN服务器的情况 可 通过 打开Cornerstone .app 在Server Location  界面 输入server:域名 Port:443 端口  必须要填 Repository path: 路径填完填  不然也不能访问 备注:外网访问内网服务器 地址填详细. 和端口

怎样从外网访问内网Memcached数据库

外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Memcached数据库 默认安装的Memcached数据库端口是11211. 2. 实现步骤 2.1 下载并解压holer软件包 Holer软件包:holer-xxx.tar.gz Holer支持各种OS系统平台,请选择跟本地OS类型匹配的holer软件包. 2.2 获取holer acce

怎样从外网访问内网Rails

外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口是3000. 2. 实现步骤 2.1 下载并解压holer软件包 Holer软件包:holer-xxx.tar.gz Holer支持各种OS系统平台,请选择跟本地OS类型匹配的holer软件包. 2.2 获取holer access key信息 在holer官网上申请专属的holer access

外网访问内网Tomcat

外网访问内网Tomcat 本地安装了Tomcat,只能在局域网内访问,怎样从外网也能访问本地Tomcat? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1.7及以上版本 执行命令java -version检查Java安装和配置是否正确. 1.2 安装并启动Tomcat 默认安装的Tomcat端口是8080. 2. 实现步骤 2.1 下载并解压holer软件包 Holer软件包:holer-client.zip 2.2 修改holer配置文件 在holer官网上申请专属的ho

外网访问内网MySQL数据库

外网访问内网MySQL数据库 本地安装了MySQL数据库,只能在局域网内访问,怎样从外网也能访问本地MySQL数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动MySQL数据库 默认安装的MySQL数据库端口是3306. 2. 实现步骤 2.1 下载并解压holer软件包 Holer软件包:holer-xxx.tar.gz Holer支持各种OS系统平台,请选择跟本地OS类型匹配的holer软件包. 2.2 获取holer access key信息 在holer官网上申请专

外网访问内网Web

外网访问内网Web 本地安装了Web服务端,只能在局域网内访问,怎样从外网也能访问本地Web? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Web服务端 默认安装的Web端口是80. 2. 实现步骤 2.1 下载并解压holer软件包 Holer软件包:holer-xxx.tar.gz Holer支持各种OS系统平台,请选择跟本地OS类型匹配的holer软件包. 2.2 获取holer access key信息 在holer官网上申请专属的holer access key或者使

外网访问内网Docker容器

外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 Docker容器默认的sshd端口是22. 2. 实现步骤 2.1 下载并解压holer软件包 Holer软件包:holer-xxx.tar.gz Holer支持各种OS系统平台,请选择跟本地OS类型匹配的holer软件包. 2.2 获取holer access key信息 在holer官网上申请专