1. 什么是以太网?
以太网(Ethernet)是当今现有局域网采用的最通用的通信协议标准,是局域网的一种,其主要是通过MAC地址识别各个结点。
那什么是MAC地址呢?
MAC地址(Media Access Control Address)是一种标识符,用来标记网络中的每个设备,就像我们每个人的身份证号一样。MAC 地址采用十六进制数表示,共 6 个字节(48 位),长度为 48bit。整个地址前 24 位代表 IEEE 的注册管理机构给不同厂家分配的代码,区分了不同的厂家;后 24 位是由厂家自己分配的,称为扩展标识符。
如: 00:0C:29:CB:E4:36
更多网工学习资料,获取认证相关学习内容,可以【加入群聊】
2. 为什么说以太网必须使用ARP协议呢?
在以太网中,当网络设备有数据需要发送给另一设备时,必须知道目标设备的IP地址,在这个前提下还不够,当这个数据必须封装成帧才能数据链路上进行传输,而数据帧中必须包括目标设备的MAC地址,那么如何知道目标设备的MAC地址呢?
这个时候就需要ARP(Address Resolution Protocol地址解析协议)协议来解决了。它是一个根据IP地址获取MAC地址的TCP/IP协议
(1)ARP协议工作原理
① 如图所示,主机A对主机B进行数据传输,在数据帧头部中并不知道对方的MAC地址,此时就需要通过ARP协议来获取。
② 如图所示,主机A发送数据包之前要先获取主机C的、MAC地址,
③ 网络设备中都有一个ARP缓存,里面存放IP与MAC地址的映射关系,在发送数据 前,设备会查询ARP缓存中是否有目标端的对应MAC地址,有则直接进行封装,然后发送。
④ 若如上图所示,主机A的ARP缓存中没有主机C的MAC地址。则以广播形式发送一个ARP Request包,此网络中所有主机都会收到这个请求包,网关会阻止该报文发送到其他网络中。
⑤ 主机在收到Request包后会检查目的协议字段与自己的IP是否匹配,不匹配这不作响应,如果匹配则会将该数据包中的源MAC与源IP记录到自己的ARP缓存中,然后做出响应发送ARP Reply包。
⑥ 如下图所示,主机C与ARP Request包匹配成功后发出ARP Reply包;
⑦ 主机A收到ARP Reply包后,检查报文中目的MAC地址与自己MAC是否匹配,匹配则将该数据包中的源MAC与源IP记录到自己的ARP缓存中。
(2)ARP包解析
为了更好理解ARP协议过程流程与其广播与单播的概念,我们这使用Wireshark抓包软件来进行抓包,通过数据包的方式来呈现(部分信息进行隐藏处理)。
主机A:192.168.1.1 MAC地址:20:f7:XX:XX:XX:XX:XX:XX
主机B:192.168.1.20 MAC地址:18:47:XX:XX:XX:XX:XX:XX
^由图中‘2’得知发送request包,由图中‘1’可知目的MAC:ff:ff:ff:ff:ff:ff:ff:ff(广播形式)
^收到Request包后,由图中‘6’得知回应reply包,由图中‘5’可知目的MAC地址为主机A的MAC地址(单播形式)
图中3、4分别为发送端与接收端MAC地址,这个时候主机A发送广播请求得知主机B的MAC地址;
图中7、8分别为发送端与接收端MAC地址,主机B通过单播形式回应主机A的请求。
主机收到arp应答报文,就可以根据arp报文中的ip和mac信息的组合,来更新自己的arp缓存表了。
更多网工学习资料,获取认证相关学习内容,可以【加入群聊】
思考小问:
在网络中ARP Request包会一直发吗?什么情况下会发?
上期回答:
在子网划分主机数需求不同时,也是使用子网划分,但是划分情况会复杂一点。
例:某公司有8个部门,每个部门拥有主机属分别为5,5,13,25,24,26,48,50,分配一个C类地址192.168.8.0/24,请问如何进行网络地址规划?
(1)可知需要划分8个子网,以最大的子网空间50为标准,那么至少需要向主机位借6位
(2)那么可知,子网号=3,主机号=6,C类地址主机位一共位8位,3+6=9,不符合
(3)此时就需要再进行子网划分,也就是子网里面划分子网
(4)此时先考虑,最大的子网空间数25<48/50<26,因此需要2个地址空间为64的子网
也就是:192.168.8.0/26-192.168.8.63/26和192.168.8.64/26-192.168.8.127/26,将这2个子网分配给48部门和50部门。
(5)此时考虑剩下的,24<25/24/26<25 因此需要3个地址空间为32的子网
将上面分配后余下的128-191、192-255利用起来
将192.168.8.128-191/26,向主机位借一位,表示为192.168.8.128/27-192.168.8.159/27和192.168.8.160/27-192.168.8.191/27
将192.168.8.192-255/26,向主机位借一位,表示为192.168.8.192-223/27和192.168.8.224-255/27
(6)此时考虑剩下的13,以此类推
192.168.8.224-255/27,向主机借一位,表示为192.168.8.224-239/28和192.168.8.240-255/28
(6)此时考虑剩下的5,5部门
192.168.8.240-255/28 再借一位,192.168.8.240-247/29和192.168.8.248-255/29
(7)子网分别为:
192.168.8.240-247/29
192.168.8.248-255/29
192.168.8.224-239/28
192.168.8.192-223/27
192.168.8.160-192/27
192.168.8.128-159/27
192.168.8.64-127/26
192.168.8.0-63/26