获取IP地址
1,手工获取;
2,通过DHCP自动获取
DHCP(Dynamic Host Configuration Protocol) — 动态主机配置协议—端口号 67(服务器)/68(主机)
1,DHCP客户端 — 广播包 — DHCP-Discover
传输层 — UDP — SPORT:68 DPORT:67
网络层 — IP — SIP:0.0.0.0 DIP:255.255.255.255
数据链路层 — 以太网 — SMAC:自己的MAC地址 DMAC:全F
交换机的转发原理 — 交换机收到数据帧之后,首先先记录源MAC地址和进入接
口的对应关系到MAC地址表中。之后看数据帧中的目标MAC地址,因为目标MAC
地址是全F,则将进行泛洪 — 除了数据进入的接口外,所有接口都将转发数据。
交换机泛洪的情况
1,广播帧
2,组播帧
3,未知单播帧
路由器收到广播包之后
1.路由器收到数据帧之后先看二层封装。
2.因为其目标MAC地址为广播地址,则路由器解二层封装。则将根据数据帧中的类型字段将解封装后的数据包交给对应的IP模块进行处理。
3.因为三层头部中目标IP地址为受限广播地址,则路由器将解三层封装。
4.因为三层协议头部中协议字段为17,则路由器将把解封装后的数据段交给UDP模块进行处理。
5.UDP根据目标端口号为67,则将解封装后的DHCP-DISCOVER报文交给对应的DHCP服务进行处理。
2.DHCP服务器 -->- DHCP客户端 ---- DHCP-OFFER(里面将携带一个可用的IP地址) ---- 单播/广播
应用层—内容
传输层 — UDP — SPORT:67 DPORT:68
网络层 — IP — SIP:自己的IP DIP:255.255.255.255
数据链路层 — 以太网 — SMAC:自己的MAC地址 DMAC:全F
华为设备以单播的形式来发送DHCP-offer包
交换机的转发原理
交换机收到数据帧之后,首先先记录源MAC地址和进入接口的对应关系到MAC地址表中。之后看数据帧中的目标MAC地址,则根据目标MAC地址查看MAC地址表,如果MAC地址表中有记录,则将直接按照记录发送;如果没有记录,则泛洪。
3.DHCP客户端 —> DHCP服务器 :DHCP - request(如果存在多个DHCP-OFFER 包,则设备将选择第一个到达的OFFER包) — 广播
1,告诉请求IP地址的服务器,需要请求他的IP地址。
2,告诉没有选择的IP地址的服务器,自己已经有IP地址了,可以将他们的IP地址释放。
4,DHCP服务器 — DHCP客户端 — DHCP - ACK — 单播/广播
设备在通过DHCP协议获取一个IP地址的同时,还会获取到网关信息(68.85.2.1)以及
DNS服务器的信息(68.87.71.226)
2,打开浏览器,在浏览器中的地址栏上输入需要访问的服务器的URL(资源定位符) 协议+URL(Uniform Resource Locator)
DNS — 域名解析协议
设备将从输入的URL中提取到域名信息,根据域名信息通过DNS协议获取web服务器的IP
地址
DNS协议存在两种查询方式
1,递归查询
未查到时,DNS服务器向其他 DNS服务器发送请求
2,迭代查询
未查到时,向主机发送其他DNS服务器IP地址,让主机自己去查找。
设备将发送DNS请求报文(本地设备会发送递归查询请求到本地DNS服务器)
传输层 — UDP协议 — SPORT:随机值 DPORT:53
网络层 — IP — SIP:68.85.2.101 DIP:68.87.71.226
数据链路层 — 以太网 — SMAC:自己的MAC DMAC:???(网关路由器MAC但不知道,未获取)
ARP — 地址解析协议
工作过程 — 首先,主机以广播的形式发送ARP请求报文。基于已知的IP地址获取MAC地址。所有收到广播帧的设备都会先将数据包中的源IP地址和源MAC地址的对应关系记录在本地的ARP缓存表中。之后,再看请求的IP地址。如果请求的IP地址是本地的IP地址,则将回复ARP应答报文。如果请
求的IP地址不是本地的IP地址,则将直接丢弃该数据包。之后,再次发送信息时,将优先查看本地的ARP缓存表,如果存在记录,则将按照记录转发;如果没有记录,则再发送ARP请求。
传输层 — UDP — SPORT:随机值 DPORT:53
网络层 — IP — SIP:68.85.2.101 DIP:68.87.71.226
数据链路层 — 以太网 — SMAC:自己的MAC DMAC:网关的MAC地址
3,网关路由器收到DNS请求报文之后,将先查看数据帧的二层封装,确认该数据帧是给自己的,则将解二层封装看三层,根据目标IP地址查看本地的路由表。
直连路由 — 直连路由是默认生成的,生成条件
1,接口双UP
2,接口需要配置IP地址
静态路由 — 网络管理员手工添加的路由条目
动态路由 — 所有路由器运行相同的路由协议,之后,路由器之间沟通,交流最终计算出到达未知网段的路由条目。
4,本地的DNS服务器收到DNS请求信息,则将先查看本地缓存是否有记录,有则直接返回 DNS应答;如果没有,则向DNS根服务器发送迭代查询(TCP 53)。最终将结果返回给设 备。
5,本地设备将基于web服务器的IP地址,发起TCP三次握手,建立TCP会话。(主要因为 HTTP协议传输层使用的是TCP协议)— 建立本地到服务器之间双向的会话
6,本地设备将基于TCP(Transmission Control Protocol)会话通道发送HTTP请求报文 — GET
传输层 — TCP — SPORT:随机值 DPORT:80
网络层 — IP — SIP:自己的IP DIP:baidu的IP
数据链路层 — 以太网 — SMAC:自己的MAC DMAC:网关的MAC