联通 G7615 V2 系列光猫设置端口转发,实现从外网公网IP访问内网的应用服务(以 irreader RSS 服务为例)

文章首发于公众号【小白书签】:https://mp.weixin.qq.com/s/lVUrrxWt2XQSS7Sj2CDb0Q

本文篇幅看似很长,是因为说明内容较多,真正需实操的地方很少,只需要确认有公网 IP + 设置端口转发即可。因此实际上挺简单的,不要因文章太长而有压力哦~

“端口转发”,又叫“端口映射”,到具体设置时,可能还会看到更多“替代名词”——NAT转发、虚拟主机、虚拟服务器 等等。

而所谓“端口转发”,通常是指使用路由器或防火墙进行端口映射,通过暴漏公网 IP 到互联网,让外部网络(WAN/公网/外网/互联网/广域网)能够访问内部网络(LAN/私网/内网/局域网)的特定设备或服务。

那为何需要端口映射呢? 以我们之前多次提到的 irreader 软件(跟 FreshRSS 一样属于 RSS 订阅工具)为例:

irreader RSS 服务

irreader 软件可以非常简单方便地“订阅一切网站更新”,即便没有提供 RSS 输出的网站(包括需要登录才能查看内容的论坛类网站也不在话下),也能快速添加订阅。但它之前有个致命的缺陷,就是只能在 Windows 或 macOS 系统上安装使用,基本上相当于只能在电脑本地使用。而 irreader 最新 v1.8.0 测试版,新增的“RSS 服务”(相当于 API),则使它进一步拥有了对外提供服务的能力。通过这一功能,我们就可以通过浏览器或者 RSS 阅读器软件,在其他设备(包括手机/平板等)上使用,不再局限于安装了 irreader 软件的电脑本身。

说了这么多,跟我们今天介绍的“端口转发”有啥关系呢?您先别急,先看下图:

irreader启用RSS服务.webp

irreader 开启 RSS 服务后,会生成一个 irreader RSS Index 页面,默认端口 9090,包含所有已订阅源的 RSS 地址。但由于这是 irreader 在电脑本地提供的服务,生成的是局域网地址,我们只能在内网中添加使用。一旦到外边或者通过其他网络服务调用时,比如想将其订阅地址添加到 FreshRSS 中,则不能奏效。所以,我们就需要通过“端口转发”使其具有通过外网访问的能力。

当然, 通过一开始“端口转发”的含义,我们需要知道它有一个非常重要的前提,就是需要我们的网络具有公网 IP,那怎么确认我们的网络是否有公网 IP 呢?

确认及开启公网 IP

首先说说怎么判断自己的网络是否具有公网 IP:若 WAN 口 IP = 查询到的 IP → 是真公网 IP(可端口映射)

WAN 口 IP 可以从光猫(路由器)中查询,以小白之前介绍的 中兴 G7615V2 光猫为例,先通过管理员账号密码登录光猫(http://192.168.1.1/cu.html)。按照“状态 - 网络侧信息 - IPv4 WAN连接信息(PPPoE)”即可找到“IP”地址。

查询光猫(路由器)WAN口IP.webp

之后,我们可以通过搜索引擎(百度或者谷歌等)搜索关键词“我的 IP",或者通过一些专门的 IP 地址查询网站,来获取到我们访问互联网的 IP 地址。

https://www.ip.cn/

https://ip138.com/

https://whatismyipaddress.com/

……………………

如果上述获取的两个 IP 地址一致,则说明我们的宽带具备公网 IP。 那若是两个 IP 不一样怎么办呢?如果您使用的是电信或者联通宽带,通常联系客服申请开通公网 IP 就可以了。小白这边使用的联通宽带,开通方式非常简单(该方法仅供参考,具体请咨询客服):直接在光猫中,将宽带账号中的“@adsl”替换成“@lan”(替换后最好重启下光猫),就是公网 IP 模式了。

光猫WAN连接设置.webp

设置端口映射

有了公网 IP,我们就可以在光猫或者路由器中设置“端口转发”了。如果是在路由器中设置,需要改桥接,即通过路由器拨号上网(这也是推荐和理想的方式)。这个也不难,主要是将上图“连接模式”中的“路由”改为“桥接”,然后把宽带账号密码设置到路由器中。至于设置“端口转发”,光猫与路由器的设置方法,大同小异。 最大区别可能就是界面和名称会有所差异(参考文中开头处所说的“替代名词”),我们还是G7615V2 光猫为例,其设置路径为“高级配置 - NAT设置 - 虚拟主机配置”。

设置端口转发,其实归根到底我们设置的就两项——外部端口 → 内部局域网电脑 IP:端口

而具体到 G7615V2 光猫,则主要表现在以下设置项:

  • 广域网起始端口:外网访问时使用的端口(即公网端口)。您可以设为和内网一致,也可以不同(如外网用 8080 映射到内网 9090),这里建议设为 9090
  • 广域网结束端口:如果只映射单个端口,起止端口相同。如果要映射一个范围(如 9090-9095),则分别填写。此处填 9090
  • 广域网连接:某些光猫会要求选择 WAN 连接(如 INTERNET_R_VID_7 等)。如果您只有一个上网连接,选那个即可,不确定就选默认或唯一选项。
  • 协议:您的服务如果是 HTTP/HTTPS/WebSocket 等,一般只需 TCP。如果不确定,选 TCP/UDP 更保险。
  • 虚拟主机地址:这是您 Windows 电脑在局域网中的 IP 地址(通常为 192.168.x.x[1]。务必固定,建议在路由器中给该 MAC 地址分配静态 IP,或在 Windows 中手动设置静态 IP。
  • 虚拟主机端口:你本地服务实际监听的端口,如 9090

最终设置效果图:

光猫虚拟主机配置.webp

小白测试此时已经可用(外网手机 关掉 WiFi,用 4G/5G 访问:http://你的公网IP:9090),不需要在路由器中禁用防火墙,也不用在 Windows 系统防火墙上放行相应端口[2]

至此,已具备外网访问内网的能力!但想要更好用,可能还需要进行绑定域名以及 DDNS(动态域名解析)等一系列操作。另外上述介绍的是 IPV4,现在大部分网络已开通 IPV6,甚至都不需要端口转发…… 篇幅所限,这里就不多做介绍了,有兴趣自行研究!

需要说明下,这里的公网 IP 指的是动态 IP,即每次重启光猫(路由器)之后,这个 IP 会发生变动。此时我们通过IP+端口访问时,注意使用正确的 IP 地址。

最后,大家可能会发现,该方法完全基于公网 IP。如果您的网络环境没有公网 IP,则该方法无效。那怎么办呢?其实我们还可以通过内网穿透达到同样的效果。下篇文章小白会给大家介绍一种相对简单安全的内网穿透方法—— Cloudflare Tunnels,敬请期待!

端口回流

注:我用不着局域网域名访问,而且通过下方教程也没有测试成功,故仅供参考!

通过上述方法设置域名解析后,您可能会发现在内网无法用域名访问,我们需要开启 net 回流功能。那这款光猫如何开启呢?

  1. 高级配置 - 设备命名 - 域名设置 - 填上您的域名
  2. 主机名设置:域名+内网设备 IP,不需要加端口
  3. 日常应用 - 启用 UPnP(可能非必需)

如果您在外网可以通过域名访问内网服务器,那么经过以上设置,在内网应该也可以通过域名访问了。

| 注释&引用

  1. 局域网 IP 可在命令提示符运行:ipconfig,找到 IPv4 地址。也可以在本地网络连接的属性(详细信息)等之中查看
  2. 若需要放行相应端口:命令提示符运行wf.msc 或在 控制面板 中找到 Windows Defender 防火墙 → 高级设置 → 入站规则 → 新建规则 → 端口 → TCP 9090 → 允许连接。
0

评论0

没有账号?注册  忘记密码?

社交账号快速登录

微信扫一扫关注
如已关注,请回复“登录”二字获取验证码