-------------------------------------一--------------------------------------------
网路基础
- 应用层:抽象语言------编码
- 表示层:编码-----二进制
- 介质访问控制层:
- 物理层:
人类最早的网络-----对等网
- 节点增加
- 距离延长
RJ-45双绞线 100M
直线型拓扑:
环形拓扑:
树状拓扑:
波环型(全网状)拓扑:
星型结构:
HUB集线器--------安全 延时 地址 冲突
地址:全球唯一 出厂即烧录 格式相同 MAC地址:48位二进制构成以16进制显示
冲突:CSMA/CD 载波侦听多路访问/冲突检测机制
------------------------排队
机制解析:
- 首先使用监听功能,当发现有消息再发送时,停止自身消息发送,并且随时准备进入下一个阶段
- 当前消息发送完成时,立刻发送自身消息。
3.当消息相撞时,会给彼此发送一个阈值,因为发送的阈值时随机的,故一定会有大小之分,达到阈值后发送自身消息。
结论:虽然解决了冲突问题,但是大大增加了延时
- 无限的传输距离
- 没有冲突
- 形成单播
4.提高了端口密度
网桥----
---------交换机
速率公式:约等于(带宽/8)85%
交换机的工作过程:
1.当数据帧进入交换机后,交换机会先查看数据帧中的源MAC地址,并且将进入接口与其映射到本地的MAC地址表中,随后再基于MAC地址表查看目标MAC地址,若有记录,则直接根据MAC地址表发送;若没有记录,则进行泛洪。
泛洪:向除了进入接口以外的所有接口进行发送
泛洪区域:泛洪范围越大,网络就会越大
MAC地址表的老化时间:300s
对等网------变大网络-----无限的传输距离 无冲突 单播 ------网桥------交换机----介质访问控制层--------MAC地址 ----认识则单播 不认识则泛洪 因为泛洪范围过大------路由器----网络层-----IP------IP地址
路由器(每一个路由器的接口都是一个泛洪范围的终点)
IPV4地址:32位二进制构成 存在网络位和主机位的区分;网络位用于标识所在范围;选取点分十进制标识。
00000000 0
00000001 1
00000010 2
00000100 4
00001000 8
00010000 16
00100000 32
01000000 64
10000000 128
192.168.2.1 11000000.10101000.00000010.00000001
172.16.20.20 10101100.00010000.00010100.00010100
ARP地址解析协议:通过一种地址找到另一种地址
192.168.1.1 255.255.255.0
11000000.10101000.00000001.00000001
11111111.11111111.11111111.00000000
192.168.2.1 255.255.255.0
11000000.10101000.00000010.00000001
11111111.11111111.11111111.00000000
子网掩码的特性:由连续的1和连续的0构成 也为32位
子网掩码连续的1所对应的部分就为网络位,连续的0对应主机位
-------------------------------------二--------------------------------------------
对等网-----中继器---HUB集线器---无限的传输距离 无冲突 单播---网桥----交换机----介质访问控制层---MAC----做记录,认识则单播,不认识则泛洪。------泛洪区域越大,延时越高。-----------路由器-----网络层---IP-----IP地址
应用层:抽象语言----编码
表示层:编码------二进制
网络层:IP
介质访问控制层:
物理层:
IP地址:32位二进制构成 点分十进制标识
128 64 32 16 8 4 2 1
11000000.10101000.00000001.00000000
192.168.1.0
192.168.1.0 255.255.255.0
192.168.2.0 255.255.255.0
11000000.10101000.00000001.00000000
11111111.11111111.11111111.00000000
ARP:地址解析协议:通过一种地址找到另一种地址
广播:在同一泛洪区域内,迫使桥换机进行泛洪。
广播--广播域 广播域=泛洪区域
ARP的工作原理:ARP先通过广播发送请求包,所有收到广播的设备都将其源IP与源MAC相互映射记录在本地的ARP缓存表中,随后,查看目标IP/MAC是否为自己,若不是则丢弃该数据,若是,则以单播的形式进行回复。 在之后的传输中,将优先查看本地的ARP缓存表,若有记录则直接按照记录执行单播即可,若没有记录,则发送ARP请求包获取。
ARP缓存表老化时间:180s
PC访问其他设备时,会先基于对方的IP地址进行网络位的判断,若在同一广播域之内,则直接发送即可。若不在同一广播域之内,则封装目标MAC地址至自己的网关,由路由器代为转发。
IPV4详解:
IPV6地址:128位二进制构成 冒分16进制显示
存在ABCDE五类:
ABC类地址:单播地址
D类地址:组播地址
E类地址:保留地址
ABC类地址:单播地址----既可以作为源IP也可以作为目标IP使用。
D类地址:只能作为目标IP
E类地址:
基于IP地址的第一个8位进行分类:
A类:1-126 前8位为网络位
B类:128-191 前16位为网络位
C类:192-223 前24位为网络位
D类:224-239 不分网络位主机位
E类:240-255
A类地址:255.0.0.0
B类地址:255.255.0.0
C类地址:255.255.255.0
特殊地址:
一:127 环回地址 127.0.0.1-127.255.255.255 用于排错的历程分析
二:255.255.255.255 受限广播地址 在不知道对方IP以及MAC地址的时候使用
三:主机位全0 它并不是一个单播地址,不能被配置为IP 网段
192.168.1.0 255.255.255.0 ; 192.168.1.0/24
192.168.0.0/16 255.255.0.0 192.168.1.128/26
11000000.10101000.00000001.10000000
11111111.11111111.11111111.11000000
四:主机位全1 它并不是一个单播地址,不能被配置为IP。
192.168.1.255/24 直接广播地址
五:0.0.0.0 既代表所有地址 也代表没有地址
六:169.254.0.0/16 本地链路地址 自动私有地址
VLSM---可变长子网掩码----子网划分
192.168.1.0/24
主机数范围:主机位全0----主机位全1
192.168.1.0/24-----192.168.1.255/24 256个 可用254
192.168.1.0/25
11000000.10101000.00000001.01111111
11111111.11111111.11111111.10000000
192.168.1.0/25------192.168.1.127/25 128个
11000000.10101000.00000001.11111111
11111111.11111111.11111111.10000000
192.168.1.128/25-----192.168.1.255/25 128个
-------------------------------------三--------------------------------------------
TCP------传输控制协议-----面向连接的可靠协议;在完成传输层基本工作的同时,还要保证数据传输的可靠性。
面向连接-------三次握手 建立端对端的虚链路
SYN=发起一次链接,同时表明自身状态
ACK=代表确认
传输途中
四次挥手
FIN:断开 ,特殊情况:RST 重连,TCP严重错误且重连,PSH加急接受 , URG紧急指针 。
可靠性------4种可靠性机制-------确认 排序 重传 流控(窗口滑动)
UDP----用户数据报文协议-----非面向连接的不可靠协议
IP包头:
TCP的分段和IP的分片
IP分片的原因:收到二层MTU值的影响
TCP分段的原因:MSS------TCP数据段最大分段长度
<Huawei>----------用户视图 仅拥有查询权限
<Huawei>display ip interface brief 查看每个接口的IP配置情况
<Huawei>system-view 进入系统视图 拥有配置部分命令的权限
[Huawei] 系统视图
Ctrl+Z ------直接返回用户视图
[Huawei]sysname R1 更改设备名称为 R1
[R1]interface g 0/0/0 进入g0/0/0接口
Quit 返回上一层
Tab 自动补全
? 查询可执行的命令
[R1-GigabitEthernet0/0/1]ip address 192.168.2.1 255.255.255.0
[R1-GigabitEthernet0/0/0]ip address 192.168.1.1 24
配置IP地址为192.168.1.1 24
[R1-GigabitEthernet0/0/0]display this 查询当前视图下的所有配置
[R1]display ip routing-table 查询路由表
<R1>display current-configuration 查看缓存中的配置
<R1>save 将配置保存至闪存中
<R1>display saved-configuration 查看闪存中的配置
-------------------------------------四--------------------------------------------
DNS:域名解析协议
DNS,因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的去访问网络,而不用去记忆繁琐的IP地址。通过主机域名,最终访问到对应的IP地址的过程,我们就叫做域名解析。
DNS协议运行在UDP协议之上(TCP也存在),使用端口号53
是一个典型的C/S架构--------------DNS客户端
DNS服务器
正向解析:根据主机域名查找对应IP地址
反向解析:根据IP地址查找对应域名
DHCP------动态主机配置协议----UDP协议67/68端口
典型的C/S架构------------------DHCP服务器
DHCP客户端
初次获取IP地址:
- DHCP客户端向DHCP服务器去要地址:广播----
源IP:0.0.0.0 目标IP:255.255.255.255 源MAC:自己
目标MAC:全F DHCP----discover包
- DHCP服务器向DHCP客户端去回复:DHCP---offer
单播/广播(厂商不同),(这个包中将携带一个临时的IP地址提供给DHCP客户端使用)
- DHCP客户端向DHCP服务器发送一个:DHCP---request
(类似于我同意这份工作) 广播 “我用了那个IP地址”
- DHCP服务器向DHCP客户端发送一个:DHCP---ACK包,代表确认收到
再次获取IP地址:
1.DHCP客户端向DHCP服务器发送一个:DHCP---request
“我还想要之前的IP地址”
- DHCP服务器向DHCP客户端发送一个:DHCP---ACK包,那就给你
特殊情况:之前的地址给别人了
1.DHCP客户端向DHCP服务器发送一个:DHCP---request
“我还想要之前的IP地址”
2.DHCP服务器向DHCP客户端发送一个 DHCP---NAK包
租期:24h
T1:租期的50%----12h
DHCP客户端向DHCP服务器发送一个:DHCP---request
“续租” 单播
T2:租期的87.5%----21h-----
DHCP客户端向DHCP服务器发送一个:DHCP---request
广播
-------------------------------------五--------------------------------------------
DHCP配置:
- 开启服务 2.配置DHCP参数 3.接口调用
[R1]dhcp enable 开启DHCP服务
[R1]ip pool AA 创建地址池,名为AA
[R1-ip-pool-AA]network 192.168.1.0 mask 24 将网段192.168.1.0/24 写入地址池
[R1-ip-pool-AA]gateway-list 192.168.1.1 将网关192.168.1.1写入地址池
[R1-ip-pool-AA]dns-list 114.114.114.114 将dns 114.114.114.114写入地址池
[R1]interface g 0/0/0 进入网关所在接口
[R1-GigabitEthernet0/0/0]dhcp select global 在该接口调用DHCP服务
DHCP相关查询命令:
[R1]display ip pool 查询有那些地址池
PC>ipconfig 查询本机IP地址
静态路由:
路由器和路由器之间的链路----骨干链路(总线链路)
一般不配置任何PC端
通信是双向的,既要保证数据能过去,也同时要保证数据能回来。
当拓扑图中的每一台路由器都拥有全网所有网段的路由条目时,即可实现全网通。
路由器获取位置网段的方法:
- 静态路由:由管理员手工配置的路由条目
- 动态路由:所有路由器上运行同一种动态路由协议,之后通过路由器之间进行协商 沟通 最终计算生成的路由条目
[R1]ip route-static 192.168.3.0 24 192.168.2.2 静态路由--------去往192.168.3.0/24网段 下一跳为 192.168.2.2
Pre:优先级---当两条路由条目目标网段相同时,仅加载优先级较高的路由条目至路由表中。 范围:1-255
注意:优先级的数值越大,优先级越低。
RD:该路由条目需要进行递归查找
静态路由选择原则:尽量选择路径最短的路由路径
静态路由的拓展配置:
- 负载均衡:当路由器访问同一个目标且目标具有多条开销相似的路径时,可以让设备将流量拆分后延多条路径同时进行传输,以达到叠加带宽的作用。
- 环回接口:路由器配置的虚拟接口,一般用于虚拟测试,不需要设备支持。
配置环回接口
[Huawei]ping -a 192.168.1.1 192.168.3.1 指定一个IP地址去ping另一个IP地址
3.手工汇总:当路由器可以访问多个连续的子网时,若均通过相同的下一跳,可以将这些网段进行汇总结算,之后仅编辑汇总后的网段的静态路由,即可达到减少路由条目提高转发效率的目的。
4.路由黑洞:在汇总中若包含实际网络中不存在的网段时,可能会使消息有去无回,造成链路资源的浪费。
(合理的子网划分可以尽量减少路由黑洞的存在)
- 缺省路由:一条不限定目标的路由条目;查表时,若本地路由均不匹配,则直接匹配缺省路由。
[Huawei]ip route-static 0.0.0.0 0 12.0.0.1 缺省路由
特征:黑洞路由一旦和缺省路由相遇将百分之百形成路由环路。
- 空接口路由:在黑洞路由器上,配置一条达到汇总网段指向空接口的路由。
①:空接口:null0口 路由器的一个虚拟接口,如果一条路由被指向了空接口,则代表该流量被丢弃。
②:路由表的匹配原则:最长匹配原则/精确匹配原则
NULL0接口只能在黑洞路由器上配置
[Huawei]ip route-static 192.168.0.0 22 NULL 0 将192.168.0.0/22这条路径指向null0
- 浮动静态路由
[Huawei]ip route-static 192.168.2.0 24 12.0.0.2 preference 61
定义通往192.168.2.0/24网段下一跳为12.0.0.2 且 其 优先级为61
[Huawei]display ip routing-table protocol static 查询由静态路由生成的路由表
[Huawei-GigabitEthernet0/0/1]shutdown 关闭该接口
-------------------------------------六--------------------------------------------
动态路由
静态路由的缺点:
- 配置量大
- 不能基于拓扑的变化而实时更新
总结:只能在简单小型的网络结构中进行工作
动态路由协议的优点:实时基于拓扑的变化而更新
动态路由协议的缺点:
- 额外的占用链路资源
- 安全风险
- 选路错误的风险
动态路由协议的分类
基于AS进行的分类:IGP内部网关协议 EGP外部网关协议
AS:自治系统 标准编号 0-65535 其中 1-64511公有 64512-65535 私有
IGP内部网关协议:RIP OSPF EIGRP ISIS
EGP外部网关协议:BGP
IGP内部网关协议分类:
- 基于更新时是否携带掩码
有类别-----更新不携带掩码
无类别-----更新时携带掩码
- 基于工作特点:
DV距离矢量---RIP EIGRP ----邻居间共享路由表 以跳数作为开销 算法:贝尔曼福特算法
LS链路状态---OSPF ISIS ----邻居间共享拓扑信息 SPF算法:将图形结构转化成树形结构
RIP:路由信息协议--------距离矢量协议 基于UDP协议的520端口工作 使用跳数作为度量值 存在周期更新和触发更新 存在V1 V2 NG 三个版本,NG适用于IPV6
V1和V2的区别:
- V1为有类别理由协议----不携带子网掩
码,不支持子网汇总 子网划分
V2为无类别路由协议---携带掩码
- V1为广播更新 255.255.255.255
V2为组播更新 224.0.0.9
- V2支持手工认证(通讯会被加密,增加
安全性)
周期更新的意义:
- 保活 (每隔30s发送一个周期更新包,一共发6次)
- 没有确认机制
RIP的破环机制:
- 水平分割---------从此口入不从此口出(只能在直线型拓扑中避免路由环路,其更重要的目的是减少大量重复更新)
- 最大跳数-----15跳 16跳意味着数据死亡
- 触发更新:毒性逆转水平分割
- 抑制计时器
V1版本的配置命令:
[R1]rip 1 启动时,需要定义进程号,仅具有本地意义
[R1-rip-1]version 1 定义为版本1
宣告:rip只能进行主类宣告 基于宣告的主类网段 找到属于该网段的接口
- 激活接口----手法rip信息
- 该接口的信息可以共享给邻居
[R1-rip-1]network 1.0.0.0
[R1-rip-1]network 12.0.0.0
RIP V2的配置命令
[R1]rip 1 启动时,需要定义进程号,仅具有本地意义
[R1-rip-1]version 2 定义为版本2
[R1-rip-1]undo summary 关闭自动汇总
二:RIP的扩展配置
- RIP V2 的手工汇总
- RIP V2 的手工认证
- 被动接口
- 加快收敛
- 缺省路由
RIP V2 的手工汇总
[R1]interface g 0/0/0 从哪个接口出 从那个接口汇总
[R1-GigabitEthernet0/0/0]rip summary-address 1.1.0.0 255.255.252.0
RIP V2 的手工认证
[R2]interface g 0/0/1 必须在和邻居相链接的接口上配置
[R2-GigabitEthernet0/0/1]rip authentication-mode md5 usual cipher 666666 两端密码必须保证一直
被动接口---仅接受不发送路由协议信息,仅限于连接用户PC的接口使用,不得用于路由器之间,否则将会导致无法正常发送路由信息。
[R1-rip-1]silent-interface g 0/0/1
加快收敛
30s更新 180s失效 180s抑制 300s刷新
- 认为修改计时器可以一定程度加快收敛,但是不易修改的过小
- 尽量维持原有的倍数关系
- 一台设备修改计时器全网所有设备都需修改
[R1-rip-1]timers rip 30 180 300
缺省路由:在边界路由器上,进行RIP的缺省配置后,该路由器将向内部运作的所有进行RIP工作的路由器发送缺省更新,使得内部所有路由器都拥有一条指向该设备的缺省路由。
[R3-rip-1]default-route originate
-------------------------------------七--------------------------------------------
OSPF:开放式最短路径优先协议
无类别链路状态IGP动态路由协议
距离矢量协议:运行距离矢量协议的路由器周期性的泛洪自己的路由表,通过路由的交互,每台路由器都能从 相邻的路由器学习到路由条目,并且加载进自己的路由表中;对于网络中的所有路由器而言,路由器并不清楚网络的结构,只是简单的知道去往某个目的地的方向在哪儿,距离多远。这即使距离矢量算法的本质。
链路状态协议:与距离矢量协议不同,链路状态协议通告的是链路状态信息而不是路由表,运行链路状态协议的路由器之间首先会建立一个协议的邻居关系,然后彼此之间开始交互LSA(链路状态通告)。每台路由器都会产生LSA,路由器将接收到的LSA加载进自己的LSDB(链路状态数据库)中。路由器通过LSDB,掌握了全网的拓扑结构。最后路由器计算出最优路径加载进自己的路由表中。
OSPF的特征:
支持等开销负载均衡
基于组播更新 224.0.0.5 224.0.0.6
支持触发更新 ; 每30min周期更新一次
需要结构化的部署---区域划分 地址规划
区域划分的规则:
1.星型结构 骨干区域为0去,大于0为非骨干区域,所有非骨干区域必须接在骨干区域上
2.ABR-----域间路由器 两个区域互联时,必须存在一台ABR同时工作在两个区域
必须两个条件均成立
Router ID 路由器标识符 ,用于在一个OSPF域中唯一的标识一台路由器
Router ID 的设定可以使用手工配置的方式,也可由系统自动生成
建议:使用手工配置的方式 ,要是不手工配置,由系统自动生成,则会自动----优先配置环回的最大数值,如果没有环回,则配置为物理接口最大数值。
使用cost值作为度量值;cost=开销值=参考带宽/接口带宽;默认参考带宽为100M,整段路径之合最小为最佳。
我们在接口带宽大于参考带宽的网络中,会去人为修改参考带宽。
一:OSPF的数据包类型
二:OSPF的状态机
三:OSPF的工作过程
四:OSPF的基础配置
五:OSPF的扩展配置
OSPF的数据包类型
- hello包 用于邻居的发现 关系建立 及 周期保活
- DD包 数据库描述包 用于携带本地的数据库目录
- LSR包 链路状态请求包 在查看完对端的DD包后,基于本地的LSDB,查询出需要去索要的LSA信息,随后,通过LSR包区索要。
- LSU包 链路状态更新包 用于携带各种LSA信息
- LSack包 链路状态确认包 用却确认接收到对端的信息
OSPF的状态机
Down状态:表示未被激活的状态,一旦本地发出hello包,则进入下一个状态机
Init状态:表示初始化的状态,
Two-Way状态:双向通讯,表示建立了邻居关系
匹配条件:
Exstart状态:预启动 使用不携带数据库目录的DD包进行主从选举,RID大者为主,且优先进入下一个状态机
Exchange状态:准交换 ,发送携带具体的数据库目录的DD包进行交换,需要ack确认
Loading状态: 加载 , 通过LSR包索要未知的具体的LSA信息;通过LSU包区给对端索要的SLA信息;通过LSack去确认收到的LSA信息
Full状态:转发 , 邻接关系建立的标志
OSPF的工作过程
启动配置完成后,本地组播 224.0.0.5 发送hello包;
Hello包将携带本地的RID值,以及本地已知的所有邻居的RID值;
若接受到对端的hello包含有自己的RID则视为双方认识,邻居关系建立;
生成 邻居表;
邻居关系建立后,进行条件匹配,匹配失败则永远停留于邻居关系,仅hello包保活即可;
匹配成功则双方进入下一个状态,表示可以建立邻接关系;
先使用不携带数据库目录的DD包进行主从选举,RID大为优,优先共享自己的链路状态数据库目录;
最后基于对端的目录对比本地的LSDB来查找未知的LSA信息;
通过 LSR包 LSU包 LSack包 同步LSDB;
最终生成数据库表(LSDB链路状态数据库表)
之后启用本地SPF算法,将图形结构转化为树形结构,基于树形结构,计算出最短路径树,得到本地到达目标网段的最短路径,加载于本地路由表中;
收敛完成后,hello包保活即可。
每隔30min邻接关系之间,进行DD包的比对,若一致则继续保活,若不一致,则重新收敛。
结构突变:
- 新增一个网段 直接连接一台设备 直接使用更新包告知邻接关系即可 需要ack确认
- 断开一个网段 直接断开一台设备 直接使用更新包告知邻接关系即可 需要ack确认
- 无法沟通 hello time 10s ; dead time 40s 时间到了直接删除邻居信息
OSPF的基础配置
[R1]ospf 1 router-id 1.1.1.1 创建ospf;进程为1 ;RID为1.1.1.1
[R1-ospf-1]area 0 进入0区
[R1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[R1-ospf-1-area-0.0.0.0]network 12.1.1.0 0.0.0.255
反掩码:掩码反过来
[R1]display ospf peer 查看详细邻居关系
[R1]display ospf peer brief 查看邻居表
[R1]display ospf lsdb 查看链路状态数据库目录
[R1]display ospf lsdb router 2.2.2.2 打开目录的详细内容
[R1-ospf-1]bandwidth-reference 1000 修改参考带宽为1000MB/S
注意:一旦修改参考带宽 全网所有设备 均需修改
OSPF的扩展配置
- 从邻居关系建立成为链接关系的条件
网络类型--------两个类型
①点到点的:在一个网段中仅支持存在两个节点
②MA:多路访问-----在一个网段中,存在节点不限制
在MA的网络类型中,若所有设备均是邻接关系,则会出现大量的重复更新;故进行DR/BDR的选举,所有非DR/BDR设备之间仅维持邻居关系。
所有非DR/BDR的设备统称为 DRother
选举规则是什么:
①先比较参选接口的优先级,默认为1,范围0-255,大为优
②若参选接口的优先级相同,则比较参选设备的RID,数值大为优
[R1-GigabitEthernet0/0/0]ospf dr-priority 2 将该接口在ospf协议额DR参选中 优先级调整为2
切记:DR/BDR的选举并非是抢占性质的
<R1>reset ospf process 重启ospf进程
手工认证
在邻居间的接口上定义安全密钥
[R1-GigabitEthernet0/0/0]ospf authentication-mode md5 1 cipher 123456
手工汇总------区域汇总 在ABR上将A去汇总给B区
[R2-ospf-1]area 0 进入需要汇总的区域
[R2-ospf-1-area-0.0.0.0]abr-summary 1.1.0.0 255.255.252.0 将0去内所有网段进行汇总随后发放到其他区域
被动接口-----沉默借口--仅接收不发送路由信息的接口
[R1-ospf-1]silent-interface g 0/0/1 在ospf进程中使用,定义g 0/0/1 为沉默接口
加快收敛---改计时器
Hello time 10s dead time 40s
修改一台设备的hello time ,该接口的dead time将会自动关闭 故 不建议进行修改
缺省路由-----在边界路由起上进行配置,配置一条缺省路由之后,该设备将向内部所有设备下发一条指向自己的缺省路由。
[R3-ospf-1]default-route-advertise always 在边界路由器R3上配置缺省路由