第一章 网络设备
重点:
集线器:发送到集线器的信号,会不加选择的转发到跟集线器相连的所有设备上。集线器作用在OSI模型中的物理层。
交换机:
二层交换机:工作在OSI模型中的第二层,数据链路层。交换机会自动生成路由表,即mac和交换机上的端口一一对应的一张表。譬如,MAC-A对应端口1。这样,如果有数据包要发送到MAC-A这个mac地址上,数据包发送到交换机时,交换机就会自动把数据包丢到端口1,而不是丢到其它端口上。交换机可以用来划分冲突域(就是可以设置每次只允许一个设备发送信息,其他设备等待,这样来避免信息冲突),但是不能用来划分广播域(就是一台设备发送广播后,不能设置其他的机器收不到广播)。
二层交换机的工作原理:
1、当交换机某个端口接收到数据包时,会去读取数据包的源mac地址,这样数据包的源mac地址就和交换机上的端口对应起来;
2、然后再去读取目的mac地址,然后去路由表中查找对应目的mac地址与端口;
3、如果找到,就把数据包从相应的端口发出去;
4、如果找不到,就把数据包广播到所有的端口上,这样每个端口都会收到广播;
5、然后对应的目的mac地址设备回应,通过相应的端口发送消息给交换机,交换机就会记录相应的端口与目的mac地址对应的路由表;
6、下一次再发送数据包时,就可以直接查路由表然后发送。
三层交换机:工作在OSI模型的第三层,网络层。
工作原理:
1、假设A要给B发送数据;A和B在同一网段上,均为192.168.0.X,如果A不知道B的mac地址,A就可以发送一个arp请求,B收到A的arp请求,B回应给A自己的mac地址。A就可以在数据包中加上B的mac地址,然后发送数据到交换机。交换机再根据二层交换机的工作原理,把数据包发送给B。
arp请求,是一个广播包。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。
arp欺骗就是,收到arp请求的设备,发送相应消息时,发送的错误的mac地址给主机,这样让主机不能把消息发送到正确的主机上。
2、如果A和B不是同一个网段的,譬如,A的IP是192.168.0.X,子网掩码:255.255.255.0;网关为:192.168.0.1;B的IP是192.168.1.X,子网掩码是255.255.255.0;网关为192.168.1.1
1)A将第一个正常数据包发送给缺省网关(三层交换机的一个IP,譬如,192.168.0.1),这个缺省网关一般在操作系统中已经设好;
2) 三层交换机的三层路由模块接收到此数据包,查询路由表以确定到达B的路由。即IP为192.168.1.1的mac与对应的端口;
3)到达三层交换机之后,构造一个新的帧头,以缺省网关的MAC地址(三层交换机的mac)为源MAC地址,以主机B的MAC地址为目的MAC地址,把该数据包发送给B的路由设备。
4)B的路由设备收到此数据包后,再查询路由表,把数据包发送到B。
5)通过一定的识别触发机制,确立主机A与B的MAC地址及转发端口的对应关系,并记录进流缓存条目表,以后的A到B的数据(三层交换机通过读取帧中的IP地址确认该数据包是由A到B的),就直接交由二层交换模块完成。这就通常所说的一次路由多次转发。
当一台主机把数据包发送给不同IP子网上的其他主机时,它需要选择一个能到达目的子网上的路由器,把IP数据包先送给该路由器,然后由路由器负责把IP数据包送到目的地。如果没有找到这样的路由器,主机便把IP数据包送给缺省网关()。
网关是访问路由器的IP,其他的电脑必须和网关一个IP段才能访问路由器,比如说路由器的IP是192.168.0.1(这个就是网关)也是进路由器必须的地址,其他的主机也必须是192.168.0.X(2—254之间任意一个数字)这样才能访问路由器也就是说这样才能上网,电脑上的网关地址就要填写192.168.0.1。
路由器:工作在OSI模型的第三层,网络层。具有判断网络地址和选择IP路径的功能。