3、集线器、交换机、路由器、ip的关系。

集线器、交换机、路由器三者的关系

1、集线器

一开始两台电脑通信就需要网线就可以,但是三台或者更多主机通信时,就需要很多网口,用来插网线。这样显然是不合理的。集线器就应运而生。大家都接集线器,集线器通过广播的形式进行工作。主机1要和主机5通信时候,需要携带目标的mac地址、源mac地址、数据.。然后给到集线器,集线器通过广播的形式寻找通信的目标。机器多了,通信需求多,这样的通信方式很容易造成广播风暴。

2、交换机(每个交换机是不同的广播域,ip地址起到划分广播域的作用)

为了应对上述的情况,需要划分广播域,但是mac地址不满足需求,这个时候,ip地址产生了。这种情况下,需要为每台机器,自动分发ip 地址,集线器不满足需求了。需要交换机中的DHCP,来给主机分发ip .

3、 路由器

交换机集群多了以后,就需要路由器来管理交换机了。夸交换机通信的请求,需要通过路由器来实现。请求通过路由器找到对应的交换机的地址段,转发请求到对应的交换机。交换机拿到请求,通过ARP协议,将ip地址转换我mac地址。arp协议本质上是ip和mac地址对照表

4、ip地址

ipv4地址现在不够用:

主要采用以下解决办法:

  • 通过划分私网和公网ip。比如将192.168.x.x划分为私网ip地址。私网ip可以在不同的局域网里面,重复出现。但是它们上不了公网。通过连接的公网路由器来上网。公网ip地址是唯一的。

  • 举例:如果我们访问www.baidu.com

  • 1、首先我们要将请求中的地址,通过DNS转换为数据形式的ip。119.12.66.22。

  • 2、我们在路由器这边通过NAT网络地址转换,打包一个数据包。

    数据包内容:目标ip(百度服务器所在的公网路由器)、源ip(主机所在的公网路由器)、自己的私网ip、目标程序的port (请求到百度所在的公网ip以后,通过端口号来寻找服务所在的主机)。

  • 请求到达百度所在的服务器以后,通过端口映射找到。80对应192.168.12.11这台主机。

  • 第一次找百度服务所在的公网路由器时候,需要通过路由跳转,但是这是个人主机所在的路由器会记录百度服务器的ip地址,下次请求直接发送过去。

相关推荐
猫头虎3 小时前
如何查看局域网内IP冲突问题?如何查看局域网IP环绕问题?arp -a命令如何使用?
网络·python·网络协议·tcp/ip·开源·pandas·pip
hello_2506 小时前
动手模拟docker网络-bridge模式
网络·docker·桥接模式
武文斌776 小时前
项目学习总结:LVGL图形参数动态变化、开发板的GDB调试、sqlite3移植、MQTT协议、心跳包
linux·开发语言·网络·arm开发·数据库·嵌入式硬件·学习
爱吃喵的鲤鱼6 小时前
仿mudou——Connection模块(连接管理)
linux·运维·服务器·开发语言·网络·c++
爱吃小胖橘6 小时前
Unity网络开发--超文本传输协议Http(1)
开发语言·网络·网络协议·http·c#·游戏引擎
萧鼎7 小时前
Python schedule 库全解析:从任务调度到自动化执行的完整指南
网络·python·自动化
7哥♡ۣۖᝰꫛꫀꪝۣℋ8 小时前
网络层--数据链路层
网络·tcp/ip·智能路由器
_清浅8 小时前
计算机网络【第四章-网络层】
网络·计算机网络·智能路由器
沐浴露z8 小时前
【深入理解计算机网络08】网络层之IPv4
网络·计算机网络·网络编程·信息与通信·408
望获linux10 小时前
【实时Linux实战系列】实时系统的可观测性:Prometheus 与 Grafana 集成
大数据·linux·服务器·开发语言·网络·操作系统