HCIP day1
OSI七层网络模型
1.应用层 人类语言(抽象)输入输出 抽象语言–>编码 2.表示层 编码–>二进制(数据)上三层均为应用程序处理加工数据,上三层被称为应用流层 3.会话层 应用程序内部提供的内部区分地址 4.传输层 提供端口号 分段(受MTU限制)TCP/UDP 下四层负责数据的传输 统称为数5.据流层 6.网络层 —路由器 internet协议(ip) 7.介质访问控制层–MAC层 控制物理硬件
传输层
提供端口号,分段(受MTU限制) TCP/UDP 1.通过端口号来区分不同的服务 a.静态端口号1-1023 一个端口号对应一个服务–呈永久绑定关系 80 23 22 21 20 53 b.动态端口号 1024-65535 一个端口号对应一个服务—呈暂时性绑定关系 c.特殊端口号0—代表所有端口号–网络编程中使用 2.数据分段 MSS 最大段长度 1480b MTU最大传输单元 1500b 3.提供可靠的传输 TCP 传输控制协议 —面向连接的可靠传输协议 可靠机制:确认 重传 排序 流控 UDP 用户数据报文协议 —非面向连接的不可靠传输协议
网络层
Internet 协议 – IP地址 编址、寻址、根据IP地址来进行逻辑寻址 ipv4地址 介质访问控制层–MAC 控制物理硬件
数据链路层
根据Mac地址来物理寻址 MAC媒介访问控制子层 LLC逻辑链路控制子层
PDU:协议数据单元
上三层:数据报文 传输层:数据段 网络层:数据包 数据链路层:数据帧 物理层:比特流
IP地址
IPV4——私有地址、公有地址 32位2进制数——点分十进制的表示方法 一个完整的IP地址拥有网络掩码 netmast 网络掩码的作用:区分网络位和主机位 IPv4地址通过第一个8位还区分了主类 A:1-126 B:128-191 C:192-223 D:224-239 E:240-254 0.0.0.0/0 代表所有地址 127.0.0.1:本地环回地址 167.254.x.x:本地私有地址 192.168.1.0:主机位全0,网段号 192.168.1.255:主机位全1,网段广播地址 255.255.255.255:广播到所有的ip地址,仅作为目标地址 192.168.1.1/24 私有地址——本地唯一,免费 10.0.0.0/8 172.16.0.0/16-172.31.0.0/16 192.168.0.0/24-192.168.255.0/24 公有地址——全球唯一,付费
ARP协议
在同一个广播域目标mac未知的前提下,通过广播获取目标mac地址所使用的技术被称之为arp(地址解析协议) arp的分类 正向arp:已知对端ip,通过广播来获取对端mac 反向arp:已知对端地址的mac,来获取对端的ip地址 免费arp:检测地址冲突
VLSM
可变长子网掩码 做法:通过借用主机位来充当网络位
CIDR
无类域间路由——汇总 做法:母网号一致,保留相同位去不同为 超网:汇总后的子网掩码长度小于主类子网掩码长度
VRP的使用
VRP——通用路由平台——华为设备的操作系统 IOS——思科 comware——H3C
路由器
路由器有一个非常重要的功能:选路 1.不同网络之间的互联 2.为它承载的数据,选择一条最适合的路,到达想去的网段 路由器中也有一张地图,叫做路由表 路由表功能:若表中存在记录 存在相应网段路由,我们无条件转发 如果表中不存在记录,直接丢 交换机认识直接转发,不认识洪泛 我们想要解决这个问题 加一条路进去,在路由器中我们称之为静态路由
静态路由
静态协议的优缺点: 缺点:1、中大型网络配置量过大 ? 2、不能基于拓扑的变化而实时的变化 优点: 1、不会额外占用物理资源 2、安全问题 3、计算路径的问题
ip route-static 想去的网段 网段掩码 下一跳地址 ip route-static 想去的网段 网段掩码 出接口 下一跳地址 网络分为很多种不同的类型 1.点到点网络 2.点到多点网络
虚拟接口
环回口 个人PC上 环回口 127.0.0.1(ping不通表示网卡有问题) 127 --环回127.0.0.1 用于测试该设备的TCP/IP协议栈道能否正常工作
路由汇总
取相同位,去不同位
缺省路由
以0.0.0.0代表目标网段,子网掩码长度为0
路由黑洞
汇总的地址中包含了网络中不存在的网段,将导致流量的有去无回,尽量精确汇总来避免
空接口路由
为了防止网络出现环路,路由器使用最长匹配原则
浮动静态路由
静态路由的默认优先级为60;优先级0-255,越小越优; 在编写静态路由的时候,通过修改默认的优先级,来实现静态路由的效果。
TCP/IP模型 — TCP/IP协议簇
TCP/IP四层模型 — TCP/IP标准模型
TCP/IP五层模型 — TCP/IP对等模型
TCP和UDP的应用场景
TCP更适合于效率要求相对较低,但准确性要求较高的场景。
UDP更适合于效率要求相对较高,但准确性要求较低的场景 (即事类通讯)
可靠传输:按需传输、有确认机制、丢失重传、严格校验
不可靠传输:只管传,其他都不管,尽力而为音乐
UDP:语音类,实时传输类(视频,游戏)
TCP:文件类,追求完整传输的信息类
微信和QQ的聊天数据用的是UDP
封装和解封装
我们一般把数据从应用层开始到数据链路层的加工过程称为封装,反过程称为解封装
封装 — 将每一层最重要的数据添加到原始数据当中,来实现这一层的功能
应用层 — 应用层需要进行封装,封装方式取决于不同的应用
传输层 — 端口号 — TCP/UDP
网络层 — IP地址 — IP协议
数据链路层 — MAC地址 — 以太网协议
物理层
TCP/IP模型和OSI模型的区别:TCP/IP模型支持跨层封装
TCP/IP的跨层封装一般应用在直连设备之间的近距离通讯
跨层封装主要存在两种形式
1.跨四层封装 — OSPF
2.跨三,四层封装 — 直连交换机
四层详解
传输层:解决数据交给哪个应用程序,端口字段
还需要解决传输的质量和方法
两种传输协议,对应了两种不同的传输服务,TCP和UDP
TCP是一种可靠的传输协议,UDP是一种不可靠的传输协议
面向连接与无连接
面向连接的意思是数据传输之前收发俩方需建立一条逻辑通路,类似我们电话时不能拿起来就说,需要先拨 号,对方拿起接通电话之后,才能说话,这里说话之前的动作就是面向连接。 无连接的意思是通信前不需要建立通路,通信完也不需要断开,自由发送。类似于古代的寄信,寄之前不需要 向对方打招呼,邮差收到信也不需要确认收件人是否方便接信直接处理就行。
TCP和UDP的应用场景
TCP更适合于效率要求相对较低,但准确性要求较高的场景。
UDP更适合于效率要求相对较高,但准确性要求较低的场景 (即事类通讯)
可靠传输:按需传输、有确认机制、丢失重传、严格校验
不可靠传输:只管传,其他都不管,尽力而为音乐
UDP:语音类,实时传输类(视频,游戏)
TCP:文件类,追求完整传输的信息类
微信和QQ的聊天数据用的是UDP
tcp的头部:
源端口:启动应用是根据空闲端口随机生成。 目的端口:固定的,代表了某中特定的应用。1-65535 范围,其中1-1023是知名端口号,代表的知名应 用。比如:http 80,ftp 20,21,https 443,ssh 22,telnet 23 。
首先,源端口与目的端口必不可少,没有这个数据就不知道发给那个应用。下来是报文序列号,为什么需要给 报文编号呢,当然是解决数据的乱序问题,不编个号怎么确认那个数据是先来的那个是后到的。然后确认序列 号,发出去的报文应该有个确认,不然我怎么知道对方收到没收到,如果没收到就应该重传,当然出现损坏也 会重传,如果是职场人,凡事有个响应是必要的。TCP是一个可靠传输协议,他面临的网络环境可能很复杂, 网络层是没有可靠性保证的,如果网络环境比较差,TCP作为靠谱协议他不能改变网络环境但是他可以通过算 法和重传来保证数据传输可靠。 下来的数据偏移指的是首部长度,指出TCP报文段的数据起始处距离TCP报文段的起始处有多远,以32比 特(4字节)为计算单位。最多有60字节的首部,若无选项字段,正常为20字节。Reserved, 保留字段,必须填0。 接下来是一些状态位,syn表示发起一个连接,ack是确认,RST是重新连接,表明TCP连接中出现严重错 误(如由于主机崩溃或其他原因),必须释放连接,然后再重新建立连接。FIN表示断开连接。PSH,表示数据 应尽快的交付接收应用进程,而不再等待整个缓存都填满了后再向上交付。URG,紧急指针有效标识。它告诉 系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据)。 window表示窗口大小,TCP能够做一次发多个数据,而不是一个一个发送,这样效率更高,确认是只需 要确认最后一个即可。那么窗口值设置多少好呢,TCP有流控机制,根据双方发送能力和接受能力来,也就是 说不能发的太多把对方撑死,也不能太少把对方饿死,TCP还有拥塞机制,如果网络传输拥塞丢包了,他就会 降低窗口值减小速度,也就说路上堵车我管不了,我能做的就是不开车骑个单车上班,尽量不迟到,不能改变 世界我就改变自己。这里其实就是算法来控制的,大家下去需要查阅资料写在作业里面,TCP的慢启动算法, TCP的拥塞避免算法,快重传算法,快速恢复算法等。
TCP的运行过程:
三次握手:
第一次握手 客户端给服务器发送一个SYN段(在 TCP 标头中 SYN 位字段为 1 的 TCP/IP 数据包), 该段中也包含客户端的初始序列号(Sequence number = J)。
第二次握手 服务器返回客户端 SYN +ACK 段(在 TCP 标头中SYN和ACK位字段都为 1 的 TCP/IP 数据包), 该段中包含服务器的初始序列号(Sequence number = K);同时使 Acknowledgment number = J + 1来表示确认已收到客户端的 SYN段(Sequence number = J)。
第三次握手 客户端给服务器响应一个ACK段(在 TCP 标头中 ACK 位字段为 1 的 TCP/IP 数据包), 该段中使 Acknowledgment number = K + 1来表示确认已收到服务器的 SYN段(Sequence number = K)
四次挥手
第一次挥手: 客户端向服务器端发送断开 TCP 连接请求的FIN=1报文,在报文中随机生成一个序列号 SEQ=x,表示要断开 TCP 连接。
第二次挥手: 当服务器端收到客户端发来的断开 TCP 连接的请求后,回复发送标志位ACK=1报文,表示已经收到断开请求。回复时,随机生成一个序列号 SEQ=y。由于回复的是客户端发来的请求,所以在客户端请求序列号 SEQ=x的基础上加 1,得到确认序列号ACK=x+1。
第三次挥手: 服务器端在回复完客户端的 TCP 断开请求后,不会马上进行 TCP 连接的断开。服务器端会先确认断开前,所有传输到客户端的数据是否已经传输完毕。确认数据传输完毕后才进行断开,向客户端发送FIN=1报文。再次随机生成一个序列号 SEQ=z。由于还是对客户端发来的 TCP 断开请求序列号 SEQ=x 进行回复,因此确认序列号ACK依然为 x+1
第四次挥手: 客户端收到服务器发来的 TCP 断开连接数据包后将进行回复,表示收到断开 TCP 连接数据包。向服务器发送标志位ACK=1 报文,生成一个序列号 SEQ=x+1。由于回复的是服务器,所以确认序列号ACK字段的值在服务器发来断开 TCP 连接请求序列号 SEQ=z 的基础上加 1,得到ACK=z+1
ipv4的计算
32个二进制组成 192.168.1.1 -->点分10进制书写格式 地址由2部分组成 网络位 主机位 192.168.1.1 192.168.1.2 这个俩个地址在同一网络位,也就是在一个广播域 到底如何判断俩个或多个地址是否在同一个网段(广播域) IETF早期规定的网络位划分方法:主类划分法 XXXXXXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX 1x20+1x21+1x22+1x23+1x24+1x25+1x2^6=1+2+4+8+16+32+64 130.1.1.1 130.2.2.2 180.1.2.2 180.1.3.3 199.2.2.2 199.2.1.2
特殊IP地址
1,127.0.0.1 - 127.255.255.255 ---- 环回地址 2,255.255.255.255 ---- 受限广播地址 ---- 受路由器的限制 — 只能作为目标IP使用 3,主机位全1 — 192.168.2.X/24 — 192.168.2.255 — 直接广播地址 — 只能作为目标IP使用 4,主机位全0 — 192.168.2.X/24 — 192.168.2.0 – 网段 – 网络号 5,0.0.0.0 — 1,代表没有IP。2,代表任意IP。 6,169.254.0.0/16 — 自动私有地址
VLSM与CIDR
无类地址—不在通过数字来辨识网段而是使用子网掩码来辨别,规则是网络位的地址子网掩码置1
10.1.1.1 255.255.255.0 24 10.1.1.1/24 20.1.1.1 255.255.224.0 19 20.1.1.1/19 192.168.1.0 255.255.255.252 30 192.168.1.0/30
VLSM — 可变长子网掩码 ---- 子网划分 核心思路:通过延长子网掩码(将主机位借到网络位)来实现网段的划分
192.168.1.0/24 公司新增俩个部门预计20人,如何拆出俩个网段并且不能浪费地址? 192.168.1.0 0XXXXXXX 25 192.168.1.128 1XXXXXXX 25 27 192.168.1.0/27 255.255.255.224 192.168.1.32/27 192.168.1.64/27 192.168.1.96/27 192.168.1.128/27 192.168.1.160/27 192.168.1.192/27 192.168.1.224/27
CIDR — 无类域间路由 ---- 汇总
可变长子网掩码—取相同去不同
192.168.1.0/27 192.168.1.32/27 192.168.1.160/27 192.168.1 NNNXXXXX 000XXXXX 0 001XXXXX 32 00XXXXXX 0 26 192.168.1.32/27 192.168.1.160/27 192.168.1 NNNXXXXX 001XXXXX 32 101XXXXX XXXXXXXX 24 192.168.1.64/27 192.168.1.96/27 192.168.1 NNNXXXXX 010XXXXX 011XXXXX 01XXXXXX 26 192.168.1.64/26
公司在上述任务完成后又增加一个预计50个人的部门,如何解决? 192.168.1.64/27 192.168.1.96/27 192.168.1.64/26 结果 192.168.1.128/27 192.168.1.160/27 192.168.1.192/27 192.168.1.224/27
|