目前这个问题可能太宽泛了,所以我将澄清一下。
显然,当今大多数路由器都是调制解调器、WiFi 收发器和路由器的组合,它们从电话线上获取信号,进行转换,然后通过铜线、F/O 或 802.11 发送。
但什么路由器在“路由”时究竟做了什么?通过研究 TCP/IP 堆栈,可以清楚地看出源/目标地址和端口出现在堆栈的几个不同点上,因此至少端点设备似乎应该能够进行自己的区分,只需忽略不属于它们的数据包即可。更令人困惑的是,这似乎是 10BASE-2 所依赖的主要系统,链路中的每个设备都通过相同的连接进行修补。
那么,当数据进入路由器时,它会如何处理数据(假设不考虑 WiFi 和调制解调器)?
答案1
您的“家庭路由器”实际上并不像核心路由器那样发挥作用。在 wifi 出现之前,当宽带开始在美国普及时,您过去常常需要为多个 IP 地址支付额外费用,因此同一所房子中的多台计算机每月的费用更高。因此,第一个 NAT 路由器诞生了,它们接收来自内部私人家庭网络上的多台计算机的流量,并将其发送到您在公共网络中支付的单个 IP。实际上,接收每个 tcp 或 udp 请求并将其重写,就好像它来自您的公共 IP 一样。
反过来,路由器会收到回复,并将它们路由回家庭网络上的正确主机。ISP 方面对此有所抵制,但最终它们无处不在。
现在,随着公司在市场上的竞争和新技术的出现,它们变得越来越先进。早期的防火墙是作为一项安全功能添加的,目的是“保护您免受邪恶黑客的攻击”。后来添加了诸如 wifi、VPN、打印服务器、路由优先级和其他功能。
不过,我认为家用路由器的主要用途仍然是通过一台设备连接多个专用网络设备。这不利于某些直接连接服务,如 VoIP、视频或文件共享。因此,大多数路由器还具有路由表,允许您将端口转发到某些计算机或尝试为其他计算机打开防火墙。顺便说一句,由于大多数用户无法处理添加上述配置,这催生了大量用于 nat 遍历的软件技术,基本上是另一台计算机或站点通过保持端口打开来打开与您网络中的机器的连接的方法。