ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

同网段主机通信原理

2020-09-03 15:00:38  阅读:217  来源: 互联网

标签:arp 网段 主机 mac 通信 网卡 地址


作者:百哥 
本期分享:系列15点到16点半-技术热讯
感谢大家关注-百哥,请大家持续关注就可以了哦!
众元教育技术公开课:更多认证知识
众元教育技术交流裙:414605852

本篇文章介绍数据通信中最基础,最关键的原理之一,两台通网段的主机如何通信。
适合两台普通电脑之间,两台服务器之间,两台手机之间,电脑和打印机之间,手机和小爱同学之间,等等,只要两个同网段节点互相通信,都符合以下原理。

上篇文章提到了mac地址,但没详细说明,今天我们来详细认识他一下。

mac地址长这样
在这里插入图片描述

mac地址也叫物理地址,和ip地址不同,使用十六进制来表示,十六进制就是0到9后还没完,还有abcdef,然后才进位成20。

mac地址是每个网卡的标识。

不管有线网卡还是无线网卡,电脑还是手机,只要连入网络,一定需要网卡芯片,而mac地址就是网卡芯片上的地址信息。再来看下手机的mac
在这里插入图片描述

一般在手机设置的“关于本机”中,都可以看到手机的mac地址。

那么mac地址的作用到底是什么?

很简单,同网段的两个主机通信,归根结底就是数据包从一个网卡,送到另一个网卡,而网卡之间,通过mac地址来识别。

等等,前面不是刚讲了ip地址吗,这里怎么又来个mac地址?
这里说来话长,有网络技术发展的历史原因,本文暂不详述,欢迎关注公众号,后续文章会讲解。

本文咱们先知道,两台同网段主机通信,必须知道双方的mac地址就可以了。

当主机A想给主机B发送数据,如何才能知道主机B的mac地址呢?

通过一个叫ARP的网络协议。
ARP的全称是Address Resolution Protocol地址解析协议,用来解析出某个目标IP所对应的mac地址。

这里假设一台主机A(192.168.0.173)想给另一台主机B(192.168.0.9)发送数据为例,来看ARP的工作原理

第一步
主机A以广播的形式发出ARP请求。广播报文全网主机都会收到,包括主机B。
在这里插入图片描述

上图是使用抓包工具捕获的arp请求包,可以看出,这个包是广播发出的(目标mac为全F代表广播)。
也可以看出,这个arp请求包,请求的是192.168.0.9的mac
关于抓包工具的使用,以及常见报文的分析方法,后续文章会详细介绍,本文暂时观察arp报文的关键字段即可。

第二步
这个广播形式的arp请求,所有主机都会收到,无关主机看了”target ip“发现不是找自己的,直接丢弃
而主机B收到,则会回复一个arp回应报文。
在这里插入图片描述

上图是主机B给主机A回应的ARP包,告诉主机A自己的mac是什么。
注意看图中”sender ip“和”sender mac“两个信息,包含了主机B和他对应的mac。
本实验环境,主机B是一台苹果手机,通过mac地址也能看出手机品牌apple。
因为标准的mac地址,前半部分是网卡的厂商标识。

第三步
主机A收到arp回应后,会把主机B对应的mac写入自己的arp缓存表,这样就可以给主机B发数据了。
而且后续再给主机B发数据,就不用再去arp解析了,查下arp缓存表即可。
在命令行输入arp -a可以查看arp缓存表。

在这里插入图片描述

标签:arp,网段,主机,mac,通信,网卡,地址
来源: https://www.cnblogs.com/baige-zhynet/p/13607596.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有