我们已经知道,两台电脑间要通信,电脑A通过MAC地址可以将
  

书涵139 1102

{{ttag.title}}
我们已经知道,两台电脑间要通信,电脑A通过MAC地址可以将数据交到电脑B手里。但前提是,他们俩需要在同一个“房间”。如果不在,电脑A只能把数据交给自己的网关。

我们可以把一个“房间”叫做一个“广播域”,在一个广播域内,只要有人发出广播报文(比如ARP Request),其他人都能收到,包括网关。但网关并不会把这个广播报文转发到房间外面去,房间隔音效果没得说。

可问题是,如果二台电脑不在同一个广播域,电脑A通过ARP获得网关的MAC地址后,把数据封装在以太网中,网关收到后,发现收件人正是自己,于是拆开以太网封装,把里面的数据占为己有!

所以,必须告诉网关,你拆了以太网封装后,里面的数据是不是你的,你还要看个东西。

这个东西,就是IP地址!

IP地址?不就是电脑的“名字”吗?

是的。我们人类的身份证号码中包含了省市等地理位置信息,而名字中没有。相反,电脑的MAC地址中没有位置信息,但IP地址里却有!

所以,我们只要想办法让网关拆开以太网封装后,看到收件人的IP地址,并能根据IP地址中的位置信息去找真正的收件人,问题就可以解决。

IP(Internet Protocol,互联网协议),设计的初衷就是为了提高网络的可扩展性,比如实现不同“房间”内的电脑之间的通信,实现网络间的互连。

IP主要有三个内容:IP编址方案、分组封装格式和分组转发规则。

IP地址可以在网络中唯一地标识一台网络设备。

不是说MAC地址是唯一的吗?

没错,MAC地址的确唯一,而且不会重复、无法修改,但MAC地址不包含位置信息,一般在一个广播域内使用,无法在更大范围里用它找别人。

但IP地址可以,不管范围多大,通过IP地址都能找到你!

既然这样,直接用IP就好了,干嘛还要用MAC多此一举呢?

这是因为IP地址资源有限,分配给电脑的 IP地址可能会发生变化,并不是唯一不变的。如果一台电脑今天和明天的IP地址不同,那别人找起来会非常麻烦。比如你每天换个名字,你周围的人可能会“疯”!而MAC地址固定不变,找起来要容易得多。所以,不管你IP地址怎么变,电脑都会用ARP协议把多变的IP地址和唯一不变的MAC地址建立对应关系就可以了。

也有人把IP地址叫“逻辑地址”,MAC地址叫“物理地址”或“硬件地址”。

我们曾经说过,通过IP地址和子网掩码,可以计算出网络地址。网络地址表示了你在网络中的哪个“房间”,就是你的位置。

所以,我们只要让电脑在把数据封装为以太网格式之前,先把数据用IP封装一下。

内容挺多,但我们最关心的是最后两行:

Source:发件人的IP地址;

Destination:收件人的IP地址。

其他内容我们也解释一下:

Version版本号,目前使用的是版本4(IPv4);

Header Length头部长度,表示这份“快递单”的大小,一般为20字节;

Differentiated Services Field区分服务字段,用于QoS,我们可以理解为表示该数据包的重要或优先程度。这东西以后讨论;

Total Length总长度,表示该数据包(被IP封装之后)的总大小。它等于里面的数据加上Header Length的大小。IP协议定义了MTU(Maximum Transmission Unit,最大传输单元),也就是IP传输的数据包最大值,一般这个值为1500字节。

Identification标识号,表示该数据包的唯一编号;

Flags标志位,共有3位:第1位保留没有使用,第2位为DF位,第3位为MF位;

Fragment offset分片偏移量;

当数据包总长度大于MTU时,IP无法传输,需要把数据包“切开”,使数据包大小不超过MTU,这叫“IP分片”。你可以理解为IP用很多辆汽车运输数据,每辆车最多能装1500字节。

如果IP在分片前发现DF置为“1”,表示该数据不允许“分片”。IP无法传输大于MTU的数据包,只能丢弃:

如果数据包需要分片,IP在分片后,除最后一片的MF位为“0”外,其他的分片均为“1”,并把第1个分片中的Identification复制到所有分片中。另外,除最后一片的Fragment offset分片偏移量为0外,其他分片的Fragment offset均为下一个分片的长度。

Time to live生存时间,这个东西以后讨论;

Protocol协议,收件人收到数据包,拆除IP封装后根据Protocol填写的内容判断把里面的数据交给谁处理,作用类似以太网封装中的Type;

Header checksum头部校验和,只校验IP头部信息,不校验里面封装的数据。这样做的好处是简单、效率高。

IP协议用于实现不同网络之间的互通,所有具备路由功能的网络设备都能实现IP寻址,比如路由器。网关也是具备路由功能的设备,可以是路由器,也可以是其他设备。

IP是一个“尽力而为”的协议,意思是IP协议答应会尽力把数据送到目的地,但不保证什么。如果数据包在传输过程中出现错误,IP会根据协议规定把它丢弃。

听上去IP很不靠谱,但这样做的好处是简单而高效。很早的时候曾因为IP的不靠谱,也有其他的协议想取代IP网络协议的地位,比如ATM(不不,不是取款机,它叫Asynchronous Transfer Mode,异步传输模式)。ATM虽然也很高效,但过于复杂,最终还是失败了。

如果想保证什么,可以想别的办法,IP还是简单点好。

既然IP成为在不同网络中寻址的协议,那IP如何编址就显得格外重要。

IP地址由32位二进制位组成,共4个字节,为书写方便,使用点分十进制表示,如192.168.1.10。

IP地址可以分成网络地址和主机地址两部分,网络地址标识了这个IP地址在什么地方,在哪个网络。你看,IP地址包含了位置信息,而MAC地址并没有。

主机地址,就是你在这个房间里的编号,只要和房间里其他人不同就行。

我们发现,一幢楼的房间有大有小,可容纳的人数也有多有少。网络也是这样,可以分成许许多多的子网,子网越大,可容纳的电脑也越多,能用的主机地址也就越多。

打赏鼓励作者,期待更多好文!

打赏
暂无人打赏

发表新帖
热门标签
全部标签>
安全效果
西北区每日一问
技术盲盒
技术笔记
干货满满
【 社区to talk】
每日一问
信服课堂视频
GIF动图学习
新版本体验
技术咨询
2023技术争霸赛专题
功能体验
产品连连看
自助服务平台操作指引
标准化排查
秒懂零信任
技术晨报
安装部署配置
原创分享
排障笔记本
玩转零信任
排障那些事
SDP百科
技术争霸赛
深信服技术支持平台
通用技术
以战代练
升级&主动服务
社区新周刊
畅聊IT
答题自测
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
流量管理
每日一记
运维工具
云计算知识
用户认证
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
产品预警公告
信服圈儿
S豆商城资讯
「智能机器人」
追光者计划
社区帮助指南
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
每周精选
2024年技术争霸赛
北京区每日一练
场景专题
故障笔记
高手请过招
高频问题集锦
POC测试案例
全能先锋系列
云化安全能力

本版达人