HCIA最后一次笔记(OSPF、ACL、VLAN、NAT)

OSPF — 开放式最短路由优先协议
1,OSPF使用SPF算法计算路径信息,不会出现环路,并且,OSPF使用带宽
作为开销值进行选路,相对更合理一些,所以,选路的层面优于RIP;
2,因为OSPF计时器时间短于RIP,所以,从收敛速度的角度看,OSPF优于
RIP;
3,从单个数据包的角度来看,因为OSPF传递的是拓扑信息(链路状态信
息 — LSA),所以,数据量远远大于RIP的单个数据包。但是,因为RIP
存在30S一次的周期更新,整体上看,占用资源量巨大;再加上OSPF本身
存在很多减少更新量的手段,所以,从整体的角度来看,OSPF小优于
RIP。
RIP存在三个版本 — RIPV1,RIPV2 — IPV4
RIPNG — IPV6

OSPF也存在三个版本 — ospfv1(实验室阶段夭折),ospfv2 — IPV4
ospfv3 — IPV6

RIPV2和OSPFV2的相同点:
1,OSPFV2和RIPV2一样,都是无类别的路由协议(传递目标网段信息时携
带子网掩码) – 都支持VLSM,CIDR
2,OSPFV2和RIPV2都是以组播发送信息 ----- OSPFV2所使用的组播地址
为 224.0.0.5和224.0.0.6
3,OSPFV2和RIPV2一样,都支持等开销负载均衡
不同点:
RIP只适用于小型网络环境中,OSPF可以适用于中大型的网络环境
— OSPF为了适用中大型的网络环境,需要进行 — 结构化部署
(区域划分)
如果网络规模不大,仅存在一个OSPF区域,则称之为单区域OSPF网络;若
存在多个OSPF区域,则称之为多区域OSPF网络
区域划分的主要目的:区域内部传递拓扑信息,区域之间传递路由信
息 — 链路状态型协议的距离矢量特征
区域边界路由器(ABR) — 同时属于多个区域,一个接口对应一个区
域,必须有一个接口在区域0。

区域之间可以存在多个ABR设备,一个ABR可以对应多个区域
区域划分的要求:

1,区域之间必须存在ABR;
2,区域划分必须遵循星型拓扑结构 — 星型拓扑的中间区域称为骨
干区域
为了方便对OSPF的区域进行管理,我们给区域设计了一个编号 —
区域ID(area ID) ---- 32位二进制构成 ---- 一般会采用点分十进制
的方法来表示/也可以直接用十进制来表示 ---- 规定骨干区域的area ID
为0。
一,OSPF的数据包类型
Hello包 — 周期发现,建立和保活邻居关系
hello的周期发送时间默认为 10s — hello时间。
失效判断的默认时间为4倍的hello时间 — 40S ---- 死亡时间
(dead time)
OSPF为了区分和标定不同的路由器,给每个路由器设立了一个
RID — 1,全网唯一;2,格式统一 — 统一按照IP地址的格
式 ---- 32位二进制构成
RID的获取方法有两种
1,手工配置 — 仅需满足以上两点要求即可
2,自动获取 — 路由器会先在自己的环回接口的IP地址中
选择最大的IP地址作为RID;如果,路由器不存在环回接
口,则将在自己物理接口的IP地址中选择最大的作为RID;
DBD包 — 数据库描述报文 ---- 携带的时路径信息的摘要
LSR包 — 链路状态请求报文 — 基于DBD包请求未知的LSA信息
LSU包 — 链路状态更新报文 — 真正携带LSA信息的数据包
LSACK包 — 链路状态确认报文 — 确认包
OSPF存在每30MIN一次的周期更新
二,OSPF的状态机
HCIA最后一次笔记(OSPF、ACL、VLAN、NAT)
TWO-WAY ---- 标志着邻居关系的建立
(条件匹配)

HCIA最后一次笔记(OSPF、ACL、VLAN、NAT)
主从关系选举 — 使用未携带数据的DBD包(主要是为了和之前的邻居关
系进行区分),通过比较RID来进行主从关系选举,RID大的为主,可以优
先进入下一个状态
LSDB — 链路状态数据库 — 存储LSA信息的数据库

HCIA最后一次笔记(OSPF、ACL、VLAN、NAT)
FULL状态 — 标志着邻接关系的建立 ---- 邻接关系主要为了和邻居关
系进行区分,邻居关系仅使用hello包进行周期保活,邻接关系才可以进
行LSA信息的交换。
down状态 — 启动ospf,发出Hello包之后进入下一个状态
init(初始化)状态 — 收到hello包中携带自己本地的RID,进入下一
个状态
two-way(双向通讯)状态 — 标志邻居关系的建立
(条件匹配)条件匹配成功,则进入下一个状态;否则,将停留在邻居状
态,仅发送hello包周期保活
exstart(预启动)状态 — 使用未携带数据的DBD包进行主从关系选
举,RID大的为主,优先进入下一个状态
exchange(准交换)状态 — 使用携带目录信息的DBD包进行目录共享
loading(加载)状态 — 基于DBD包中的未知的LSA信息,使用LSR包进
行请求,邻居使用LSU包回复,需要LSACK进行确认
FULL状态 — 标志着邻接关系的建立
三,OSPF的工作过程
启动配置完成后,OSPF会向所有运行协议的接口以组播224.0.0.5的
形式发送hello包;hello包中携带本地的RID以及本地已知的邻居的RID。
之后,将收集到的邻居关系记录在一张表中 ---- 邻居表。
邻居建立之后,需要进行条件匹配;匹配失败则停留在邻居关系,仅
使用Hello包进行周期保活。
匹配成功,则可以开始建立邻接关系。首先使用未携带数据的DBD包进行主从关系选举,之后使用携带数据的DBD包进行数据库目录信息共享;之后本地使用LSR/LSU/LSACk来获取未知的LSA信息;完成本地数据库的建立;
生成数据库表 — LSDB。
最后,基于本地的链路状态数据库生成有向图及最短路径树,之后计算本地到未知网段的路由信息,生成路由并添加到路由表中。
收敛完成之后,hello包10S一次进行周期保活,30MIN一次周期更新。
结构突变
1,新增一个网段 — 触发更新,直接使用携带LSA信息的LSU包进行更新,需要对反回复ACK进行确认
2,断开一个网段 — 触发更新,直接使用携带LSA信息的LSU包进行更新,需要对反回复ACK进行确认
3,无法沟通 ---- 40S
四,OSPF的基本配置
1)启动OSPF进程
[r1]ospf 1 router-id 1.1.1.1 ---- 1 — 进程号,仅具有本地
意义。
[r1-ospf-1]
2,创建区域
[r1-ospf-1]area 0
[r1-ospf-1-area-0.0.0.0]
3,宣告
[r1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0 — 反掩码 — 由连续的0和连续的1组成,0带表不可变,1代表可变
[r1]display ospf peer — 查看OSPF邻居表
[r1]display ospf peer brief — 查看邻居关系简表
[r1]display ospf lsdb — 查看OSPF的链路状态数据库
[r1]display ospf lsdb router 2.2.2.2 — 查看LSA详细信息
[r1]display ip routing-table protocol ospf
OSPF协议 — 华为设备分配的默认优先级为10
OSPF是以带宽作为开销值的度量标准的
cost = 参考带宽/真实带宽 — 华为设备OSPF的参考带宽默认为
100Mbps
[r1-ospf-1]bandwidth-reference 1000 ---- 修改参考带宽的命令
注意:如果需要修改一台路由器的参考带宽,则需要将所有(OSPF网络内)路由器的参考带宽都修改为一样的
指定路由器 — DR
备份指定路由器 — BDR
DROther
当一个广播域中存在DR和BDR时,想要看到邻居关系,至少需要4台路由设备
DR/BDR是接口概念
条件匹配:在一个广播域中,若所有设备均建立邻接关系,将造成大量的重复更新,故需要进行DR/BDR的选举,所有非DR/BDR设备之间仅保留邻居
关系。
DR/BDR的选举
1,先比较优先级,优先级大的为DR,优先级次大的为BDR
优先级的默认初始值为1。
[r1-GigabitEthernet0/0/0]ospf dr-priority ?
INTEGER<0-255> Router priority value
优先级的取值范围 0 - 255
如果,将一个接口的优先级修改为0,则代表该接口放弃DR/BDR的选举。
2,当优先级相同时,则比较RID。RID大的路由器的对应接口为DR,次大的为BDR。
DR/BDR的选举是非抢占模式的 — DR/BDR一旦选举成功,则将不能被抢
占。DR/BDR的选举时间40S。
reset ospf 1 process — 重启OSPF进程
五,OSPF的拓展配置
1)手工认证
[r1-GigabitEthernet0/0/0]ospf authentication-mode md5 1
cipher 123456
注意:两边的KEY ID必须相同
2)手工汇总 — 区域汇总
[r2-ospf-1-area-0.0.0.0]abr-summary 192.168.0.0
255.255.254.0
3)沉默接口
[r1-ospf-1]silent-interface GigabitEthernet 0/0/2
4)加快收敛 — 减少计时器时间
[r1-GigabitEthernet0/0/0]ospf timer hello 5
注意:修改hello时间后,死亡时间将自动按照4倍关系匹配
注意:ospf要求,邻居之间的hello时间和死亡时间必须相同,
否则无法建立邻居关系。
5)缺省路由
[r3-ospf-1]default-route-advertise
注意:OSPF要求边界路由器自身必须存在缺省路由,才能下发缺省路由信息
[r3-ospf-1]default-route-advertise always — 强制下发缺省信息

ACL ---- 访问控制列表
ACL的作用:
1,访问控制:在路由器流量流入或流出的接口上,匹配流量,然后
执行设定好的动作。 ---- permit 允许 , deny 拒绝
2,抓取感兴趣流:ACL可以和其他服务结合使用。ACL只负责匹配流
量,其他服务则对匹配上的流量执行对应的动作。
ACL的匹配规则:自上而下,逐一匹配,如果匹配上,则按照对应的动作
执行,不再向下匹配。
思科体系的设备:在ACL列表末尾隐含一条拒绝所有的规则
华为体系的设备:在ACL列表末尾隐含一条允许所有的规则
ACL列表的分类
基本ACL — 仅关注数据包中的源IP地址
高级ACL — 不仅关注数据包中的源IP地址,还会关注数据包中的目
标IP地址,以及协议和目标端口号
二层ACL
用户自定义ACL

HCIA最后一次笔记(OSPF、ACL、VLAN、NAT)

需求一:PC1可以访问PC3和PC4,但是PC2不行
基本ACL的位置原则:因为基本ACL只关注数据包中的源IP地址,故调用时
尽可能的靠近目标,避免对其他地址访问造成误伤。
1,创建一张ACL列表
[r2]acl ?
INTEGER<2000-2999> Basic access-list(add to current using
rules)---- 基本ACL
INTEGER<3000-3999> Advanced access-list(add to current using
rules)----- 高级ACL
INTEGER<4000-4999> Specify a L2 acl group---- 二层ACL
ipv6 ACL IPv6
name Specify a named ACL
number Specify a numbered ACL
[r2]acl 2000
[r2-acl-basic-2000]
2,在ACL列表中添加规则
[r2-acl-basic-2000]rule deny source 192.168.1.3 0.255.0.255 —
通配符 — 0代表不可变,1代表可变 — 通配符中0和1可以穿插使用
[r2-acl-basic-2000]rule permit source any — 允许所有
[r2]display acl 2000
华为默认以5为步调,自动添加ACL的规则的序号。其目的在于匹配规
则是从上向下按顺序匹配,这样便于在其中插入规则。
[r2-acl-basic-2000]rule 6 deny source 192.168.1.2 0.0.0.0 — 自
定义序号添加规则
[r2-acl-basic-2000]undo rule 6 — 按照序号删除规则
3,在接口上调用ACL列表
[r2-GigabitEthernet0/0/0]traffic-filter outbound acl 2000
注意:在一个接口的一个方向上,只能调用一张ACL列表。
需求二:要求PC1可以访问PC3,但是不能访问PC4
高级ACL的位置原则:因为高级ACL是精准匹配,不会造成误伤,所以,在
调用时应该尽量靠近源目标,避免造成额外的链路资源浪费。
[r1]acl name aa 3000 — 通过重命名的方式创建ACL列表
[r1-acl-adv-aa]
[r1-acl-adv-aa]rule deny ip source 192.168.1.2 0.0.0.0
destination 192.168.3.3 0.0.0.0
[r1-GigabitEthernet0/0/0]traffic-filter inbound acl name aa —
通过重命名的方式调用ACL列表
需求三:要求PC1可以ping通R2,但是不能telnet R2
telnet — 远程登录协议
带外管理 — 通过console接口连接console线对设备进行控制
---- 通过miniUSB接口连接MINIUSB线对设备进行控制
带内管理 — 通过telnet管理路由器
— 通过web界面管理路由器
— 通过SNMP协议进行设备管理
telnet进行管理的前提条件
1,登录设备和被登录设备之间网络必须时联通的
2,被登录设备必须开启telnet服务
telnet ---- C/S架构 — 被登录设备充当telnet服务器的角色,登
录设备充当telnet客户端的角色。 ---- TCP 23
路由器开启telnet服务的方法:
1,在AAA中创建用户名
[r2]aaa ---- 进入aaa服务
[r2-aaa]
[r2-aaa]local-user aa privilege level 15 password cipher
123456
Info: Add a new user.
[r2-aaa] — 创建用户名和密码
[r2-aaa]local-user aa service-type telnet — 设置用户服务类

2,开启虚拟的登录端口
[r2]user-interface vty 0 4
[r2-ui-vty0-4]
[r2-ui-vty0-4]authentication-mode aaa
[r1-acl-adv-3001]rule deny tcp source 192.168.1.10 0.0.0.0
destination 192.168.2.2 0.0.0.0 destination-port eq 23

VLAN
V — 虚拟的
LAN — 局域网 — 地理覆盖范围较小的网络
MAN — 城域网
WAN — 广域网
LAN — 广播域
VLAN — 虚拟局域网 — 交换机和路由器协同工作后,将原来的一个广
播域逻辑上切分为多个

第一步:创建VLAN
[Huawei]display vlan — 查看交换机上的VLAN信息
VID — vlan ID — 区分和标定不同VLAN ---- IEEE组织802.1Q标
准 — 12位二进制构成 — 0 - 4095 其中,0和4095为保留号码,可以
使用的取值范围为 1 - 4094
[Huawei]vlan 2 — 创建VLAN
[Huawei]vlan batch 4 to 100 — 批量创建VLAN
[Huawei]undo vlan batch 4 to 100 — 批量删除

第二步:将接口划入VLAN
VID配置映射到交换机的接口,实现VLAN范围的划分 — 物理VLAN/
一层VLAN
VID配置映射到数据帧中的MAC地址,实现VLAN范围的划分 — 二层
VLAN
数据帧中的类型字段标记着上层协议类型,和VID进行映射,则可以
实现VLAN范围的划分 — 三层VLAN
HCIA最后一次笔记(OSPF、ACL、VLAN、NAT)
交换机的转发原理:数据通过接口进入到交换机,交换机先看数据中的源 MAC地址和接口的映射关系,顺便,将接口所对应的VID也进行记录。之
后,看目标MAC地址,若目标MAC地址在MAC地址表中有记录且记录中的VID
和源MAC对应的VID相同,则进行单播;否则,进行泛洪,泛洪范围为VID
和源MAC地址对应VID相同的接口。
为了区分不同VLAN的数据,我们可以在数据上增加标签
(TAG)。IEEE组织规定,在原数帧中源MAC地址和类型字段之间,增加4
个字节作为tag — 包含12位VID。将符合这样要求的帧结构称为802.1Q
帧或tagged帧。将正常的帧结构称为untagged帧。
根据这个特性,我们将交换机和电脑之间的链路称为ACCESS链
路。ACCESS链路只能通过untagged帧,并且,这些帧只能属于某一种特定
的VLAN。我们把交换机和交换机之间的链路称为trunk链路(trunk干
道),trunk干道中允许通过tagged帧,并且可以属于多个VLAN。

第二步:将接口划入VLAN
[Huawei]int g 0/0/1
[Huawei-GigabitEthernet0/0/1]port link-type access — 选择
链路类型
[Huawei-GigabitEthernet0/0/1]port default vlan 2 — 设置链
路中通过VLAN
[Huawei]port-group group-member GigabitEthernet 0/0/3
GigabitEthernet 0/0/4
[Huawei-port-group] — 将接口放入到接口组中

第三步:配置trunk干道
[Huawei]int g 0/0/5
[Huawei-GigabitEthernet0/0/5]port link-type trunk
[Huawei-GigabitEthernet0/0/5]port trunk allow-pass vlan ?
INTEGER<1-4094> VLAN ID all All
[Huawei-GigabitEthernet0/0/5]port trunk allow-pass vlan 2 to 3

第四步:VLAN间路由 — 单臂路由
子接口 — 路由器的一种虚拟接口,将一个物理接口,逻辑上划分
为多个虚拟接口
1,创建子接口
[r1]int g 0/0/0.2
[r1-GigabitEthernet0/0/0.2]
2,配置子接口
[r1-GigabitEthernet0/0/0.1]dot1q termination vid 2 — 定义
子接口管理的VLAN
[r1-GigabitEthernet0/0/0.1]arp broadcast enable — 开启ARP
广播

NAT
在IP地址空间中,A,B,C三类单播地址中,各有一部分地址,他们被
称为私有地址(或私网IP地址),其余的都称为公有地址(公网IP地
址)。
A:10.0.0.0 - 10.255.255.255 — 相当于一个A类的网段
B:172.16.0.0 - 172.31.255.255 — 相当于16个B类的网段
C:192.168.0.0 - 192.168.255.255 — 相当于256个C类的网段
私网IP地址具有 ---- 可复用性 ---- 不允许私网IP地址在互联网使

我们习惯将使用私网IP地址通讯的网络称为私网,并且私网IP地址在
私网内部需要保证唯一性,使用公网IP地址通讯的网络称为公网。
NAT — 网络地址转换 — 他的基本作用就是实现私网IP地址和公
网IP地址之间的转换。
华为设备所有NAT相关配置,都是在边界路由器的出接口上配置。
静态NAT
动态NAT
NAPT
端口映射
静态NAT — 一对一NAT
静态NAT简单来说,就是通过配置在私网边界路由器上建立维
护一张静态地址映射表。静态地址映射表反应了公网IP地址和私网IP
地址之间一一对应的映射关系。
静态NAT配置
[r2-GigabitEthernet0/0/2]nat static global 12.0.0.3 inside
192.168.1.2
1,必须属于公网IP地址网段中的一个
2,必须是花钱从运营商处买来的地址
这个地址我们称为 — 漂浮地址 — 当通过ARP请求一个漂浮地址
时,他将返回其对应物理接口的MAC地址。
[r2]display nat static — 查看静态地址映射表
动态NAT — 多对多

动态NAT的配置
1,创建公网IP组
[r2]nat address-group 0 12.0.0.4 12.0.0.8
公网IP地址必须是连续的并且是经过ISP授权的。
2,利用ACL抓取感兴趣流
[r2]acl 2000
[r2-acl-basic-2000]rule permit source 192.168.0.0
0.0.255.255
3,将公网IP组和ACL抓取的流量对应
[r2-GigabitEthernet0/0/2]nat outbound 2000 address-group 0
no-pat
注意:动态NAT需要加no - pat
动态NAT在同一时间内其实也是一个一对一的NAT,当上网流量过大
时,将会造成延迟升高的现象。
NAPT ---- 网络地址端口映射 — PAT
可以实现一个公网IP地址对应多个私网IP地址的效果,最多同一时
间允许通过65535个数据包。 ---- 一对多的NAT ---- EASY IP
NAPT也可以实现多对多的NAT,每一个公网IP地址同一时间都可以通
过65535个数据包。

EASY IP 配置
1,利用ACL抓取感兴趣流
[r2]acl 2000
[r2-acl-basic-2000]rule permit source 192.168.0.0
0.0.255.255
2,在接口上配置EASY IP
[r2-GigabitEthernet0/0/2]nat outbound 2000
多对多的NAPT配置
1,创建公网IP组
[r2]nat address-group 0 12.0.0.4 12.0.0.8
公网IP地址必须是连续的并且是经过ISP授权的。
2,利用ACL抓取感兴趣流
[r2]acl 2000
[r2-acl-basic-2000]rule permit source 192.168.0.0
0.0.255.255
3,将公网IP组和ACL抓取的流量对应
[r2-GigabitEthernet0/0/2]nat outbound 2000 address-group 0
端口映射
[r2-GigabitEthernet0/0/2]nat server protocol tcp global
current-interface 80 inside 192.168.1.10 80
Warning:The port 80 is well-known port. If you continue it
may cause function failure.
Are you sure to continue?[Y/N]:y
[r2-GigabitEthernet0/0/2]nat server protocol tcp global
current-interface 8080 inside 192.168.1.20 80

上一篇:Java8新特性_新时间和日期API-时间格式化与时区的处理


下一篇:Idea问题:“marketplace plugins are not loaded”解决方案