ubnt解决方案
查看: 848|回复: 1

宽带没有公网IP开TCP服务的方法,可任意主机无需客户端直连访问

[复制链接]

0

回帖

8

积分

4 小时

在线时间

预备兵

注册时间
2022-10-17
金币
8 个
威望
0 个
荣誉
0 个

尚未签到

发表于 2022-10-17 11:28
本帖最后由 hev 于 2022-10-17 11:29 编辑

有消息称国内各大运营商将会逐步收紧家庭宽带分配公网IPv4地址,有些地区已经在执行了,申请改公网IPv4的难度越来越大了。

好消息是几大运营商的固网宽带的CGNAT基本都是NAT1(Full cone)类型的,技术层面上给打洞开TCP服务允许任意公网主机访问提供了可能性。在此也非常感谢v2ex网友mike wang分享了这一思路。

现在,我们可以很方便的借助 natmap 工具来完成私网内的TCP服务端口向公网开放。

1. 适用于路由器拨号的场景,如果是光猫拨号,需要登录光猫配置DMZ。
2. 建议将natmap程序运行在拨号路由器上,如果运行在用户侧内网PC上,则同样需要配置拨号路由器的DMZ。
3. 支持调用脚本进行公网地址分发,比如更新到DDNS记录中。

下面以OpenWrt 路由器拨号并将natmap运行在路由器上例举两种基本场景的使用方法,详细使用文档见项目的README:

场景一:开放路由器HTTP服务至公网


1. 下载 natmap

项目地址: https://github.com/heiher/natmap
程序下载: https://github.com/heiher/natmap/releases  (或本贴附件)

2. 配置防火墙

配置防火墙允许WAN口访问路由器的TCP 80端口:
登录路由器Web管理页面,转到 网络 -> 防火墙 -> 传输规则,增加如下配置:
  1. * Protocol: TCP
  2. * Source zone: wan
  3. * Destination zone: Device (input)
  4. * Destination port: [bind port]
  5. * Action: accept
复制代码

3. 运行 natmap

  1. natmap -s stun.stunprotocol.org -h qq.com -b 80
复制代码

程序运行后会输出映射后的公网IPv4地址和端口,在浏览器中能够访问说明映射成功:
  1. 101.82.24.32 43648 2001::aa80:6552:1820 80
复制代码
浏览器中访问: http://101.82.24.32:43648

场景二:开放内网PC上SSH服务至公网

1. 下载 natmap
2. 配置防火墙

同上

3. 运行 natmap

  1. natmap -s stun.stunprotocol.org -h qq.com -b 80 -t 10.0.0.2 -p 22
复制代码
-t 指定转发的目标地址
-p 指定转发的目标端口



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册 微信登录

x

4

回帖

12

积分

1 小时

在线时间

新兵上阵

注册时间
2023-2-28
金币
8 个
威望
0 个
荣誉
0 个

尚未签到

发表于 2023-3-15 18:20
好家伙,好好学习下

站点统计 | Archiver | 手机版 | 无线门户 ( 粤ICP备11076993号|粤公网安备44010602008359号 ) |网站地图

GMT+8, 2025-4-1 05:19

返回顶部 返回列表