nps内网穿透的流量走服务器带宽还是本地带宽

用 nps 做内网穿透,服务端装在一台带宽只有 1Mbps 的云服务器上,客户端 npc 跑在公司内网。用起来速度不理想,开始纠结一个问题:这流量到底走的是服务器那 1Mbps,还是本地宽带的几百兆?

原因分析

nps 是"中转式"穿透:所有流量都要在公网服务器上落一次地。完整链路分两段——外部访问者把请求发到云服务器的公网端口(第一段,吃服务器带宽);服务器上的 nps 再通过隧道把数据递给内网的 npc,由 npc 转给内网里的真实服务(第二段,走出公司本地宽带,且上行方向是关键)。所以答案是"两段都占":访问者与服务器之间受服务器带宽规格约束,服务器与公司之间受本地宽带上行约束,整条链路的实际速度取决于两者中较低的那个。服务器带宽 1Mbps 时,理论每秒一百多 KB 就是第一段的上限,本地宽带再大也救不回来;而且服务器是中转点,上下行两个方向都要经过它,评估时两边的规格都得看。另外别忘了多隧道共享:同一台服务器上再挂几条隧道,各条流量会互相挤占,规划时不留余量,用起来一定卡。

分步解决

  1. 画出两段链路再算账:把"访问者—服务器—公司内网"画成一条线,每段标注带宽与上下行,瓶颈在哪一目了然;评估新项目先做这一步,比事后测速省事得多。
  2. 识别瓶颈在哪一段:在公司内网直接访问目标服务(不经过穿透)速度正常,走穿透就慢,说明卡在服务器段;如果本地互访也慢,先查本地宽带上行——NAS 备份、同步类任务常把上行占满,穿透速度跟着被拖低。
  3. 按业务类型定服务器带宽规格:远程桌面、管理后台这类交互型用途对带宽需求低,1Mbps 级别勉强够用;文件传输、视频流就要按峰值流量估算规格,或把大文件访问改走别的通道,别让中转链路硬扛。
  4. 分流减负:只有外部要用的服务才挂到穿透链路上,公司内部同事互访一律走内网直连。比如机房里一台 DS923+ 上的文件服务,同事在办公网里直接访问,只有出差在外的人经穿透进来,中转压力立减。
  5. 持续观测再调整:在服务器上用流量监控看穿透端口的日峰值曲线,拿数据决定要不要提升带宽规格——比凭感觉加配置靠谱,也避免长期按峰值配置闲置。

预防

把"穿透链路带宽表"纳入运维档案:每条隧道记录用途、两端带宽、实测速度与峰值时段;新上穿透需求先查表评估。中转式穿透天生让服务器成为必经之路,容量规划做在前面,才不会在业务高峰期被动救火。