端口映射是不是NAT?搞懂路由器里的这两个概念

出门在外连不上家里的监控,或者想在外地访问家里的NAS,很多人第一反应就是去路由器里设置“端口映射”。但查资料时又总看到“NAT”这个词,搞得人一头雾水:端口映射是不是就是NAT?它们到底啥关系?

先说结论:端口映射是NAT的一种具体用法

NAT,全称是网络地址转换(Network Address Translation),它的主要任务是让多个设备共用一个公网IP上网。比如你家里有手机、电脑、平板,都通过同一个宽带连接上网,运营商只给了你一个公网IP,这时候路由器就得靠NAT来区分这些设备的流量。

举个生活化的例子:你住的小区只有一个大门收快递,但每家每户都能收到自己的包裹。门卫怎么知道哪个快递该给谁?靠的是门牌号登记。NAT就相当于这个门卫,它记住了内网每个设备的私有IP和端口,把发出去的数据包做个标记,等回信的时候再准确送回去。

那端口映射呢?它是NAT的“反向操作”

正常情况下,NAT是让内网设备主动访问外网,外网没法直接找到你的手机或电脑。但如果你在家搭了个网站,或者开了远程桌面,就希望外面的人能主动连进来。这时候就得手动告诉路由器:“以后有人从外网访问我的公网IP的某个端口,你就转给我内网的这台设备。”

这个“指定转发规则”的过程,就是端口映射,也叫Port Forwarding。它属于NAT的一种特殊形式,专业点叫DNAT(目标NAT),意思是修改数据包的目标地址和端口。

比如你在家里开了一个网页服务器,监听在192.168.1.100:80上。你在路由器里设置:把公网IP的80端口映射到192.168.1.100:80。这样一来,别人在浏览器输入你家公网IP,就能看到你的网页了。

外部请求:http://203.0.113.1:80
经过端口映射后:
被转发到内网:http://192.168.1.100:80

没有这一步,路由器根本不知道该把请求交给谁,毕竟内网可能有十几台设备都在用80端口做别的事。

所以别再混淆了

NAT是个大类,涵盖了很多场景。除了最常见的内网上网(SNAT),还有端口映射(DNAT)、NAPT(带端口转换的NAT)等等。端口映射只是其中一种配置方式,目的是让外网能访问内网服务。

下次你在出差时想连一下家里的下载机,记得先登录路由器后台,找到“虚拟服务器”或“端口映射”选项,把对应的端口填好。只要你的宽带没被封锁,哪怕人在千里之外,也能像在家一样操作设备。

理解清楚这两个概念,以后设置远程访问、摄像头、游戏联机服务器,心里都有底了。