保亭黎族苗族自治县网站建设_网站建设公司_阿里云_seo优化
2025/12/22 15:28:33 网站建设 项目流程

关于交换机

交换机用于局域网内部连接多台设备,工作层级为数据链路层(OSI第二层)因此交换机被称为二层设备。

交换机内部的CPU会在端口成功连接时,将MAC地址和端口对应,形成一张MAC表。每当设备连接时,交换机会将新设备的MAC更新到转发表。

交换机的转发表:

转发表包含了MAC地址和端口

端口的作用是什么?当交换机收到一个数据帧时,会去查询目标的MAC地址,如果有查到对应的MAC地址,则精准推送,不需要广播所有端口。目的是减少不必要的网络流量。

交换机在推送数据帧时,会有两种特殊情况:1.未知MAC地址,如果表找不到对应的MAC,就会触发泛洪机制(广播到所有端口)设备相应后更新转发表。

由此可见,交换机并不关心IP,只关心MAC地址

关于路由器

路由器有两种接口:WAN口和LAN口

WAN口用于连接运营商

LAN口则用于连接多个家庭设备(wifi连接也是同理,是LAN口)(因此,如果只使用LAN口,则路由器=交换机)

TCP/IP协议规定,不同子网之间是不可以通信的,如果需要通信则只能通过网关转发。

路由是怎么实现的

首先处于子网1下的计算机a在发送数据包时,会根据目标IP判断是否与自己同一子网,如果在则直接通过网卡发出,如果不在,则目标mac改为网关mac并发给网关

网关再根据路由表,查询出来子网b,修改目标mac地址为子网b下计算机b的地址,修改源mac为自己的mac(已经不是计算机a的mac了),从子网2的网卡发出

关于IP设置

为什么要避免使用xx.xx.xx.1 xx.xx.xx.255?

在绝大部分情况下,xx.xx.xx.1是最常见的网关IP。因此如果电脑要连入互联网,就最好避免使用这个ip。

xx.xx.xx.255是绝对不能使用的IP,这是广播地址,如果分配给设备会导致网络故障

xx.xx.xx.0也是绝对不能使用的IP,这是网络地址,代表的是整个子网本身的地址,他可以用来标识一个网络段。

总结一下特殊IP:

  1. 0.0.0.0:默认路由/任意地址
  2. 255.255.255.255全网广播
  3. 网络地址(主机位全0):代表这个网段
  4. 广播地址(主机位全1):发送给所有设备

SNAT与DNAT

发送数据包到路由器上时,会有目标IP和源IP。在子网1下的计算机a的ip是192.168.1.2,在子网2下的计算机b的ip是192.168.1.2。如果就这样进行下去,那就会发生IP冲突,路由出去的数据包,在返回时找不到应该给谁。

SNAT(source nat)

源地址转换是内网设备发送数据给公网设备时,将其私有IP替换为公网IP,让回复能找回来。

在路由器拿到子网下内网设备发送的数据包时,会把其源ip替换为WAN口的公网IP,这样在公网请求的服务器返回的数据包就能找到原本的路径

但是SNAT也不只是到这里为止。如果在子网1下的计算机a和计算机b都请求了一个服务,那么服务该如何返回?很明显仅通过IP是不够的,需要更多的关联属性

以TCP\UDP为例,TCP\UDP中有其他的关键属性:源端口和目标端口,因此在SNAT中,就将原本的修改源IP变为了修改源IP+源port

在ICMP协议中,我们通常使用ping命令,ping命令是不带port的,在这里使用了其中的type+code作为替代。每一种协议都有自己对SNAT技术的实现方案。

DNAT(destination nat)

目的地址转换是在公网设备发送数据给内网设备时,数据在打入到路由器时,会将IP、port转为私有IP,让数据包找到真正的计算机。

在路由器拿到公网下的设备发送的数据包时,会将其WAN口的公网IP替换为私有设备的ip。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询