跨网络通信跨网络通信就是分别处于不同局域网的两台主机之间进行通信,根据前面的知识我们可以知道,两个局域网之间是通过路由器进行通信的,所以这两台主机进行通信要经过至少一台路由器,更多的时候是多台路由器,下面是跨网段的两台主机的文件传输,中间会经过很多台路由器,下面的过程只经过一台路由器:
![概念+协议的了解+OSI七层模型,TCP/IP五层协议,网络数据传输流程 Linux--网络基础](http://shimg.jingyanzongjie.com/230727/1IH23136-10.png)
文章插图
可以看到的是,这里的通信比局域网内通信多了一个封装和分用的过程,数据封装完毕不是把数据包直接通过网络交付给对端的数据链路层,而是交付给路由器,这是为什么呢?
路由器横跨两个局域网,两个局域网负责设备之间的数据帧传送的网络协议可能是不同的,有以太网、令牌环网和无限LAN等通信协议标准 。在上面的图片中显示,一个局域网使用的是以太网协议标准,两一个局域网使用的是令牌环网,双方的标准有差异不能够直接通信,所以就需要有中间媒介处理进行处理,这个媒介就是路由器 。前面说过了,路由器是从网络层到物理层,所以数据封装完毕会把数据包交付给路由器,最后一次封装会添加路由器的mac帧(这样局域网内的主机就可以找到对应的那一台路由器,局域网的主机都认为路由器是自己所在局域网的一台主机) 。路由器处于数据链路层的以太网驱动会把数据包中的以太网协议(路由器mac帧)报头去掉,将剩下的有效载荷交付给路由器的网络层,路由器根据目的IP地址,查询路由表进行路由转发,然后将数据包进行向下交付给令牌环网的驱动程序,它会给数据添加上对端的令牌环网协议报头信息,最后将数据包传送给对端协议栈的数据链路层
总结:数据包在路由器中不断调整mac帧协议报头,也就是,数据包的源mac地址和目的mac地址是在不断变化的,但是源IP和目的IP是不变的 。可以看到的是IP层往上的数据报头信息是不变的,变的是IP层往下的协议报头信息,这就体现了IP层协议的好处:通过IP地址虚拟化了底层协议的差异,这样就不需要关心底层使用的是那种通信协议,只要有源IP地址和目的IP地址就可以将数据转发出去
网络中的地址管理IP地址IP协议有两个版本,IPv4和IPv6 。我们整个的课程,凡是提到IP协议,没有特殊说明的,默认都是指IPv4
- IP地址是在IP协议中,用来标识网络中不同主机的地址;
- 对于IPv4来说,IP地址是一个4字节,32位的整数;
- 我们通常也使用 “点分十进制” 的字符串表示IP地址,例如 192.168.0.1 ;用点分割的每一个数字表示一个字节,范围是 0 - 255;
- IP地址可以由人手动静态分配,也可以让路由器来动态分配
IP地址的类型:国际标准组织ISO定义地址分类:五大类(是以IP地址的第一位进行区分的)
A类:1-126默认子网掩码:255.0.0.0
B类:128-191默认子网掩码:255.255.0.0
C类:192-223默认子网掩码:255.255.255.0
D类:224-239组播地址
E类:240-254科研使用
![概念+协议的了解+OSI七层模型,TCP/IP五层协议,网络数据传输流程 Linux--网络基础](http://shimg.jingyanzongjie.com/230727/1IH21525-11.png)
文章插图
特点:
- 不同网段的设备不能直接通信,如果需要通信需要通过路由器转发
- 主机ID全为0的IP地址代表网段地址
- 主机ID全为1的IP地址表示该网段的广播地址
- 私有地址
经验总结扩展阅读
- 腌豇豆的腌制方法和盐的比例
- php注解使用示例
- 1 onps栈移植说明——onps栈的配置及裁剪
- netty系列之: 在netty中使用 tls 协议请求 DNS 服务器
- 使用LabVIEW实现基于pytorch的DeepLabv3图像语义分割
- 含钾高的食物有哪些
- 我的Spark学习笔记
- 万姓男孩名字2024年7月4日出生的生辰八字五行查询
- 梭子蟹的黄为什么是苦的
- 邹姓男孩名字2024年4月19日出生的生辰八字五行查询