小米路由器如何映射端口(小米路由器端口映射)

当我尝试在家搭建私人网盘nextcloud时,遇到一个难题:如何随时随地访问家里的服务器 ?业界有几种解决方案:option1: 租用公网服务器,把应用部署在公网服务器上。优点:安全稳定,不需要维护设备;缺点:需要定期支付租赁费用。option2: 应用部署在家用服务器上,依赖“内网穿透”(如frps/frpc)访问家庭网络。优点:适用家庭宽带没有公网IP的场景;缺点:需要租用公网服务器做“代理”,带宽受公网服务器限制。option3: 应用部署在家用服务器上,用“端口映射”访问家庭网络。优点:带宽大,且

在家里尝试搭建私有网盘nextcloud的时候,遇到了一个难题:如何随时随地访问家里的服务器?业内有几种解决方案:

选项1:租用公共网络服务器,将应用程序部署在公共网络服务器上。优点:安全稳定,无需维护设备;缺点:需要定期支付租赁费。

选项2:应用程序部署在家庭服务器上,依靠“内部网渗透”(如frps/frpc)来访问家庭网络。优点:适用于家庭宽带中没有公共IP的场景;缺点:需要租用公网服务器作为“代理”,带宽受限于公网服务器。

选项3:应用程序部署在家庭服务器上,并使用“端口映射”来访问家庭网络。优点:带宽大,且无需租用服务器;缺点:取决于运营商临时公网的IP。

我试过方案一和方案二,我选了方案三,性价比高。毕竟长期租用服务器价格昂贵,带宽越大成本越高。本文是我个人经验总结,供大家参考。

1个前提

开始之前,请确认以下条件是否满足,这三个条件缺一不可。

  • 需要宽带拨号账号和密码;
  • 确认宽带使用公网IP;
  • 路由器需要DDNS功能;
  • 你需要得到广茂的超级许可。
  • 1.1需要宽带拨号账户和密码。

    宽带采用拨号上网,即PPPOE上网。通常,当家里安装宽带时,运营商的工作人员会设置广茂拨号网络,并提供用户名和密码。如果不记得用户名和密码,可以拨打运营商热线询问。

    1.2确认宽带是否有公网IP。

    电信往往有动态公网IP(ipv4),而移动宽带通常没有动态公网IP,需要你自己确认。有一种方法可以确认:

    1)查询家庭网络的外部IP地址:

    ip地址查询

    2)登录广茂查看广域网端口的IP地址:

    以电信光猫为例。光猫背后往往有IP地址,账号,密码,如下图:

    “光猫”铭牌

    在浏览器地址栏访问192.168.1.1,使用账号useradmin和密码登录,查询WAN口IP地址。

    如果以上两个IP相同,说明家庭宽带有公共IP。否则可以尝试拨打运营商热线,索要动态公网IP。

    1.3确认路由器DDNS功能

    我用的是小米AC2100。当我登录路由器管理地址并选择“高级设置”时,我会看到“DDNS”,这意味着该路由器具有DDNS(动态域名服务器)功能。

    小米路由器webUI

    1.4获得光猫的超级权限。

    猫铭牌上的Useradmin不是超级账号,telecomadmin是超级账号。在这里,您需要获得telecomadmin帐户的密码。由于我的轻猫历史悠久(2015年),获取密码非常简单。请参考豆瓣文章《烽火HG261GS破解超级用户密码》。其他型号,百度不到的话,求助万能的淘宝。

    2开始配置

    2.1将光学cat配置为桥接模式。

    登录广茂IP 192.168.1.1浏览器,输入超级帐户telecomadmin和密码。

    广茂网络

    进入网络-宽带设置-互联网连接,选择4_INETERNET_B_VID_41作为连接名称,选择网桥作为连接类型,保存配置。请注意,修改光学猫的配置将导致网络暂时断开。

    光学cat配置桥接模式

    2.2配置路由器PPOE上网

    登录浏览器小米路由器管理IP地址(我改成了192.168.0.1),“常用设置”-“互联网设置”,将上网模式改为“PPPoE”。输入PPPoE拨号帐户和密码,然后单击“应用”。

    小米路由器webUI

    在路由器上设置PPPoE

    查看“上网信息”——“外网状态”出现“拨号成功”,表示路由器拨号成功,网络已恢复。这样做了,就意味着完成了重要的一半。

    路由器拨号成功。

    2.3申请免费域名

    我用工运(www.pubyun.com)申请了一个免费域名。注册登录后,我选择动态域名——创建域名,输入域名前缀,在这里填写你想要的域名。只检查f3322.net,免费域名后缀。

    Pubyun申请了免费域名

    申请成功后,您可以通过“会员中心”查询您的域名:

    Pubyun会员中心

    2.4配置路由器DDNS

    登录小米路由器管理IP地址(192.168.0.1),常用设置-高级设置-DDNS-添加服务。这里的“服务商”可以*选择,因为我的免费域名是在公云申请的,所以我选择公云。当状态显示“连接成功”时,表示DDNS配置成功。

    DDNS构型

    DDNS配置成功

    打开windows CMD,输入“ping域名”测试域名解析。如果ping,说明域名解析已经生效;否则,您可以单击“手动更新”。

    域名解析测试

    2.5配置端口转发

    登录小米路由器管理IP地址(192.168.0.1),常用设置-高级设置-端口转发-添加规则,配置你要暴露的【名称,协议,外部端口,内部IP地址,内部端口】。除了80和443以外的端口都不能用。以我的配置测试为例。协议为TCP和UDP,外部端口为8888,内部IP地址为windows native IP,内部端口为8888。

    端口转发配置

    3测试

    3.1启动windows本地测试服务

    我用了一个简单的命令行http server nodejs的http-server(需要安装nodejs,http-server库)进行测试。服务器监听本地IP地址192.168.0.81的端口888,如下所示:

    启动测试程序http-server

    在浏览器中输入http://192.168.0.81:8888,测试http-server是否可访问,如下界面显示访问成功。

    http-服务器访问测试

    3.2测试端口映射

    在浏览器中输入“http://域名:8888”进行测试,出现如下界面,表示端口映射成功!打开手机浏览器(关闭wifi,避免连接家中局域网),访问“http://域名:8888”,也会出现以下界面!这就是端口映射的魅力。即使您没有连接到无线路由器,也可以访问家庭服务。

    端口映射测试

    这是我的nextcloud网盘接口,已经可以用“域名:端口”的形式访问了。

    访问nextcloud

    4结论

    虽然端口映射看起来很美,但还是美中不足。最重要的一点,免费域名只能通过http访问,不能通过https!Http协议不加密数据,就像你在网络上的数据传输毫无防备。

    关注我,订阅更多有趣的更新。