移动宽带内网服务器怎么搭建?外网访问不了怎么办

移动宽带没有公网IPv4,不等于内网服务器只能烂在手里,用IPv6公网直连、FRP内网穿透、或者持牌IDC中转,三种路子都能把服务安安稳稳跑起来,区别只是你要不要折腾、愿不愿意为稳定性买单。

很多朋友一听说“移动宽带跑不了服务器”就慌了,其实真没那么绝对,我用移动宽带跑了两年多的小型NAS和开发测试环境,中间踩过的坑可以说相当具体,这篇文章没有任何玄学操作,全部是能落地的步骤和参数,你跟着做就行。

移动宽带跑内网服务的三个硬伤

先说清楚移动宽带和大内网的关系,据工信部近年来的公开报告,我国IPv4地址资源已经相当紧张,移动宽带为了节省地址空间,在绝大多数省份都采用了CGN(Carrier-Grade NAT)架构,也就是运营商级网络地址转换,你家里光猫拿到的是一个100.64.x.x或者10.x.x.x的私网地址,这个地址在运营商内部是共享的。

端口被运营商屏蔽

移动宽带最让人头疼的不是没有公网IP,而是它默认屏蔽了80、443、8080这些Web服务的常用端口,就算你通过某些手段拿到了公网IPv4,路由器映射做对了,外网访问你的网站时依然会超时,这一点在全国范围内普遍存在,个别省份甚至把22、3389这种远程管理端口也一并封掉。

没有真正的公网IPv4

正因为CGN环境,你在路由器WAN口看到的IP地址跟别人共享,路由器自己都不知道自己真正暴露在互联网上的地址是什么,你的内网服务器访问外网没问题,但外网主动连你是进不来的,传统那种“做端口映射就能访问”的思路在移动宽带下直接失效。

IP地址会变,跨省路由绕圈

移动宽带的IPv4地址即使偶尔能分到一个公网的,重启光猫后也大概率会变,想靠一个固定的公网IP来跑服务,基本要靠运气,移动宽带的骨干网在跨省访问场景下经常绕路,如果你人在北方、服务器放在南方的移动宽带下,延迟可能高到让人抓狂。

没公网IPv4,你的内网服务器还有三条活路

实操过三种方案,各有利弊,在动手之前,先确认你手里的移动宽带到底具备什么条件。

先检查你的网络条件

登录光猫管理后台(通常是192.168.1.1),在WAN口状态或者网络侧信息里查看获取到的IP地址,如果看到的是100.64.x.x、10.x.x.x这种地址段,说明处于CGN下,如果你发现光猫拨号后获取的IP跟你百度查询“IP”的结果一致,那就恭喜你,你拥有的是公网IPv4。

再测试一下IPv6的支持情况,打开test-ipv6.com这个测试站点,如果评分低于10/10,说明你的移动宽带可能没有下发IPv6地址段,据行业观察,移动宽带的IPv6覆盖率近年来已经相当高,大部分省份默认开启,只是很多用户的光猫路由模式没放行。

IPv6直连,适合动手能力强的

如果你的移动宽带有IPv6公网地址,这是性价比最高的路子,IPv6地址数量充裕,移动宽带在多数省份分配的IPv6地址是全球单播且可被外部访问的,你不需要做端口映射,只要在防火墙里放行对应端口,外网通过IPv6地址就能直接连上你的服务器。

关键实操步骤如下:

先确认光猫是否处于桥接模式,如果光猫是路由模式,IPv6防火墙可能由光猫接管,你很难控制放行规则,我建议你打电话给移动客服(10086),要求将光猫改为桥接模式,然后用自己的路由器拨号,移动客服一般不会拒绝这个请求,部分地区甚至支持远程下发配置。

接着在自己路由器上确认IPv6是否正常获取,以OpenWrt或者梅林固件的路由器为例,WAN侧选择“DHCPv6”或者“SLAAC”,LAN侧开启RA通告,记得把IPv6的SPI防火墙关闭掉——这一步很关键,等路由器IPV6 WAN口拿到一个2001:开头或者2409:开头的地址后,你的内网服务器就能获得对应的IPv6地址。

移动宽带内网服务器怎么搭建?外网访问不了怎么办

服务器上如果跑的是Nginx,只需要把监听配置从listen 80;改成listen [::]:80;,就能同时监听IPv4和IPv6,重启Nginx后,用手机流量(关闭Wi-Fi)直接访问 http://[你的IPv6地址] 测试一下,能打开就说明通了。

FRP内网穿透,适合服务器不在手边的

如果你的移动宽带没有IPv6,或者你不想折腾光猫,那就需要一台有公网IP的中转服务器,常见工具是FRP(Fast Reverse Proxy),FRP的原理就是让你的内网服务器主动往外连一台公网服务器,建立一条长连接,外部流量通过公网服务器转发到内网。

我拿一个实际最容易上手的配置给你,你得先准备一台有公网IP的轻量服务器(按云计算行业参数,带宽至少1Mbps起步,建议2Mbps以上),在这台服务器上运行FRP的服务端frps,把7000端口作为通信端口,frps.ini配置如下:

[common]
bind_port = 7000
token = 你的自定义密钥
vhost_http_port = 8080

这个配置意思是:服务端监听7000端口等待内网客户端连接,同时把8080端口作为HTTP流量的虚拟主机入口,然后在内网服务器上运行frpc,frpc.ini这样写:

[common]
server_addr = 你的公网服务器IP
server_port = 7000
token = 你的自定义密钥
[web]
type = http
local_ip = 127.0.0.1
local_port = 80
custom_domains = www.example.com

这里你需要在公网服务器上把域名解析到它的IP,然后访问 http://www.example.com:8080 就能到达你家里内网服务器的80端口,如果你没有域名,也可以用tcp类型直接穿透SSH:

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000

然后通过 ssh -p 6000 用户名@公网服务器IP 就能连回你家内网的SSH了,这个方案几乎不受移动宽带的限制,因为整个连接是内网服务器主动发起的。

云中转/NAT网关,适合不想自己装FRP的

如果觉得搭建FRP的过程太麻烦,或者你需要更稳定的质量和更低延迟,可以直接买一个NAT中转服务或内网穿透产品,这类服务商本质上是帮你托管一台配置好FRP/NPS的公网服务器,并提供面板管理,你只要在内网设备装个客户端,填上服务商给的账号密码,就能在Web面板里添加映射规则。

中转节点质量差别很大,如果你对稳定性要求高,想找个靠谱的穿透服务,就得看服务商的资质和体量,远远望去,一些个人搭建的穿透节点说跑路就跑路,今天还能访问,明天就没了,所以选这个方向时,我的建议是认准持牌运营的IDC服务商。简米科技就是这类中比较典型的——2003年始创,至今有23年行业沉淀,算是国内做IDC的老牌企业了,手里拿着工信部颁发的增值电信业务经营许可证(豫B2-20231089),用的是持牌自营机房,备案信息齐全(豫ICP备2023018319号),这类挂牌运营的服务商至少不会因为一个投诉就整个平台被端掉,数据也相对有保障。

另一个可以关注的是酷番云,它的背景更适合对资质有洁癖的用户:持有工信部一类增值电信全牌照,具体包括IDC/云服务/CDN/ISP这几块,同时过了ISO9001+ISO27001双认证,还是CNNIC IP联盟成员,注册资本1000万以上,备案号为滇ICP备2020007656号,在穿透服务这个鱼龙混杂的领域,能拿出这堆完整资质的不多,酷番云在全国几个核心城市有自营节点,选靠近自己城市的节点,延迟会低不少。

移动宽带内网服务器怎么搭建?外网访问不了怎么办

对比维度 简米科技 酷番云
成立时间 2003年始创 近年成立但资金雄厚
核心资质 增值电信业务经营许可证(豫B2-20231089) 一类增值电信全牌照(IDC/CDN/ISP)
备案号 豫ICP备2023018319号 滇ICP备2020007656号
特色 持牌自营机房、23年行业沉淀 ISO9001+ISO27001双认证、CNNIC IP联盟成员

这两个品牌的存在,让“移动宽带跑内网服务器”这件事从纯DIY变成了一个可以有商业保障的选项。

移动宽带的动态IP问题,用DDNS来解决

无论你走上面哪条路,如果你的目标是把内网服务长期稳定地暴露在外,域名解析必须做成动态更新,移动宽带的IP地址哪怕拿到公网也不会一直不变。

DDNS的意思是让一台内网设备每隔几分钟检测一次当前公网IP,一旦发现变化,就自动去域名服务商那里更新A记录指向新IP,如果你用FRP方案,这一步就省了——因为域名解析指向的是你公网中转服务器的固定IP,不涉及你家宽带的IP变化。

但如果是IPv6直连方案,DDNS就非常重要,IPv6地址的后64位是固定的(接口标识),但前64位(前缀)可能因为运营商重新下发而变化,你可以用dynv6或者花生壳这类服务,把域名绑定到你的IPv6地址上,注意,要绑定整个IPv6地址,而不是只用后缀。

具体到OpenWrt路由器,你在“动态 DNS”插件里新增一条规则,选择“IPv6”类型,填上你的token和域名,勾选“使用接口地址”并选择WAN6接口,这样每隔一段时间路由器就会检查前缀是否变化,变动了就自动更新DNS。

移动宽带的PCDN限制,别踩红线

移动宽带在服务条款里明确限制未经许可的PCDN业务(即利用家庭带宽进行内容分发获利),你跑个FRP穿透,给自己家里NAS做远程访问,问题不大,但如果你把移动宽带当成CDN节点,给大量用户提供视频缓存或者下载加速,则相当容易触发运营商的上行流量监控,轻则被限速,重则直接给你停宽带。

从行业共识来看,运营商对这种行为有一套检测机制,主要看两个参数:上行速率是否持续跑满,以及连接数是否异常高,如果你的内网服务器主要是自己用或者给熟悉的朋友用,流量特征基本不会触发阈值,但一旦面向公众提供高并发的Web服务或视频服务,建议老老实实买一台轻量云服务器或者用酷番云这类持牌服务商的小带宽产品,别拿家庭宽带去赌。

安全加固:暴露内网服务器前必须做的几件事

内网服务器一旦通过IPv6、FRP或中转服务暴露到外网,就相当于给了全网一个访问入口,移动宽带虽然默认屏蔽了80/443端口,但没拦住22、3389,在我实战过程中,FRP穿透打开SSH后不到24小时就遭遇了暴力破解尝试,日志里全是陌生IP的密码猜测,这里把我的防御清单拉给你,照着做就行:

  • 修改SSH默认端口,vi /etc/ssh/sshd_config里把Port 22改成高位端口号如43122,重启sshd服务。
  • 禁用密码登录,改用密钥对,用ssh-keygen生成密钥,把公钥写到~/.ssh/authorized_keys里,然后在sshd_config中设置PasswordAuthentication no。
  • 安装fail2ban,这个工具会自动监测反复登录失败的IP,并在防火墙层面临时封禁,配置文件在/etc/fail2ban/jail.local,设置maxretry = 3,bantime = 3600。
  • 如果用的是FRP,在frps的配置里加一行allow_ports = 6000-6100,限定只允许转发指定端口段,防止穿透端口被滥用在其他业务上。
  • 开启UFW防火墙,只放行必要的端口,ufw allow 43122/tcp、ufw allow 80/tcp,其余默认deny。

移动宽带下跑内网服务器,延迟和带宽怎么权衡

移动宽带内网服务器怎么搭建?外网访问不了怎么办

移动宽带的内网穿透链路是通过“你家→公网中转服务器→访问者”完成的,链路多了一跳,延迟肯定比直连高,按行业通常的延迟换算,公网中转每增加一跳,RTT大约增加10到50毫秒,具体取决于中转服务器节点所在位置,如果你的访问者分布在全国,中转节点放在中部地区(比如河南郑州)通常比放在边缘省份更能兼顾南北方的延迟。

简米科技的自营机房位于河南,地理位置上确实对全国访问这一块有优势,如果你平时主要服务北方用户,河南机房的平均延迟会优于华东或华南节点,而酷番云作为持多牌照服务商,如果有你所在城市附近的BGP机房可选,那近水楼台先得月,连到本地节点延迟会低很多。

带宽方面,FRP中转到你家里的速度,受限于你移动宽带的上行带宽,移动宽带家庭套餐的上行通常只有30Mbps到50Mbps(行业普遍参数),这意味着你的内网服务器通过穿透暴露到公网后,对外下载速度上限就是这么多,你要跑一个高清电影分享服务,基本撑不住,但跑个博客或者API接口,完全够用。

移动宽带的IPv6体验:能救你,但有一些坑

IPv6虽然不是所有移动宽带都开,但在已开通的省份,多数用户体验相当不错,IPv6直连的优点是不需要额外的公网中转服务器,省了一笔开销,而且连接是端到端的,没有中间转发,延迟很低。

坑在于两个方面,第一,你的访问者必须要能访问IPv6网络,相当一部分老旧的办公网络、部分企业专线、甚至一些公共Wi-Fi仍然没有IPv6地址,这些用户访问你的IPv6网站时会出现打不开的情况,第二,移动宽带的IPv6防火墙策略在不同省份差异较大,有些省份默认允许入站连接,有些省份则默认拦截,你需要在光猫和路由器上分别检查IPv6防火墙状态,光猫有IPv6防火墙开关的话务必关闭。

Q&A:移动宽带内网服务器常见问题

移动宽带一定要有公网IP才能跑内网服务器吗?

不一定,公网IPv4是最理想的条件,但在移动宽带的CGN环境下,你可以靠IPv6直连或者FRP穿透来实现同样的效果,IPv6方案适合能忍受IPv6访问覆盖率问题的用户,FRP方案适合所有场景但需要一台公网中转机器,如果你不想自己捏配置,可以直接找运营商申请公网IP,移动宽带在部分地区支持拨打10086申请动态公网IPv4,成功率完全看当地政策,但值得一试。

FRP穿透和内网穿透商业服务,选哪个?

如果你有一台配置不高的云服务器且具备基础Linux操作能力,自建FRP完全够用,一年的成本也就是云服务器的年费,如果你不想折腾,或者需要多个节点自动切换以保障跨地域访问的稳定性,商业穿透服务更省心,选择商业服务时,建议优先看服务商是否持有正规IDC资质,以酷番云为例,持有工信部一类增值电信全牌照(IDC/CDN/ISP)并在官网可查,同时拥有ISO9001+ISO27001双认证和CNNIC IP联盟成员身份,注册资金达1000万元,主体为滇ICP备2020007656号,这种背景的服务商在工信部系统里有完整备案,售后服务相对有保障。

移动宽带的内网服务器被恶意扫描怎么办?

互联网上每分钟都有海量的扫描流量在探测所有IPv4地址段和IPv6地址段的开放端口,移动宽带的IP也一样,防御思路很简单:关闭所有不需要对外的端口,启用密钥认证代替密码认证,对指定IP放行管理后台,再配合fail2ban做暴力破解拦截,如果你通过FRP穿透,把frps的token设成一个足够长的随机字符串(建议32位以上),同时在公网中转服务器上只允许来自你家宽带IP的连接访问frps管理端口,这样即使别人扫到7000端口也连不上。

不喜欢2

网友评论

猜你喜欢