路由器与交换机的主要区别有六点:
路由器:寻址,转发(依靠 IP 地址),交换机:过滤,转发(依靠 MAC 地址)。路由器可以把一个 IP 分配给很多个主机使用,这些主机对外只表现出一个 IP,交换机可以把很多主机连起来,这些主机对外各有各的 IP。
交换机用于连接局域网,数据包在局域网内网的数据转发,路由器用于连接局域网和外网,数据包可以在不同局域网转发。
交换机工作于 TCP/IP 协议的最后一层数据链路层(物理层),路由器工作于网络层。
交换机负责具体的数据包传输,路由器不负责包的实际传输,路由器只封装好要传输的数据包,然后交给交换机去传输(不一定是交换机,可能是其他传输技术),用 java 比喻大概简单理解为路由器是抽象类,定义好传输的数据包格式,交换机是具体实现类,也可以有其他实现类
交换机没有 MAC 地址和 IP 地址,路由器有 MAC 地址和 IP 地址(指纯碎的交换机和路由器,三层交换机是可以有 IP 地址的,路由器也有内置交换机功能的)
路由器提供了防火墙的服务,交换机不能提供该功能。路由器仅仅转发特定地址的数据包,不传送不支持路由协议的数据包传送和未知目标网络数据包的传送,从而可以防止广播风暴。