路由器是三层设备可以处理IP地址等信息,实际上路由器就是根据目标IP地址来选择相应的路径的继而进行转发的。这一过程被我们称为路由。
路由器的每一个接口都属于不同的网段,当从其中一个端口收到数据包的时候,路由器会根据其携带的目标IP地址来查找在路由器内部记录的一张路由表,如果该路由表中有目标网段,则从指定的下一跳地址和出接口转发出去,如果该路由表中没有,则直接丢弃该数据包。
NAT是网络地址转换的意思,是一种为了解决IPV4的公网地址短缺的技术,他在拥有私网IP的设备的数据包从路由器出接口转发到互联网上时应用,在转发该数据包之前,路由器会使用其WAN口获取到的IP地址来替换数据包中的源IP地址,通常还包括源端口!并为该数据包建立映射关系,以便回包可以被正确转发到内网相应设备上。(由于私网IP地址比如192.168开头的可以被不同家庭重复使用所以私网地址并不能出现在互联网上)
对于企业路由器来说,NAT功能是可以启用或者关闭的,而家用路由器的WAN口默认集成并开启了了NAT功能,并且无法被关闭。
这个问题其实很简单,不要把简单问题复杂化,简单归纳为:
一个IP报文从入口进入(Incoming),从出口流出(Outgoing), IP报文头的以下两个关键元素是否有改变:
源IP
目的IP
只要两者有一个改变,或者两者都改变,那就是NAT模式。
如果两者都没有改变,那么就是路由模式。
怎么看这两个元素有没有改变呢?
肯定不能用肉眼看,谁也没有那超人的本领。其实这就要求读者有一点点互联网基础知识了。
如果读者的电脑使用的是192.168.1.x,172.16.x.x -172.31.x.x,10.x.x.x,并且可以毫无障碍访问互联网。使用这些地址的IP报文在经过路由器的时候,一定会被修改,否则你没有办法访问互联网,那这就是NAT模式。
如果你家里电脑使用的IP地址,不在上文提到的范围,比如使用20.x.x.x,那恭喜你,你的IP报文不需要修改就可以进入互联网,你家里甚至都不需要什么路由器。你仅仅需要一个将网线里的电信号转换成光纤里传输的光信号的光端机(光猫)。
但是,你的IP报文还是需要互联网路由器中继到目的地(目的IP),那么这些路由器就工作在路由模式。诚如上文所说,IP报文在进入路由器,流出路由器的时候,关键的两个元素并没有改变。
读者朋友们有任何问题,可以点击关注,一起参与讨论。