【网络工程师软考版】路由协议 + ACL

发布于:2025-07-31 ⋅ 阅读:(15) ⋅ 点赞:(0)

将此博客当作学习笔记,持续更新,欢迎指正。参考书目《网络工程师教程(第五版)》

涉及内容

1、RIP 2、ISIS 3、OSPF
4、BGP 5、命令 6、ACL

1、RIP协议

距离矢量路由协议

基于UDP协议,端口号520

RIP的路由最大跳数为15,限制了RIP只适用于小型网络。

如果路由器在3分钟内没有收到路由更新信息,则说明该路由不可达。

定时发布路由信息,同时也支持触发更新

组播地址224.0.0.9

RIP路由器并不清楚网络拓扑结构,只知道该从哪里邹,距离多远

RIP三个定时器

更新定时器 —> 每隔30s发送整张路由表的副表给邻居路由器

无效定时器 —> 180s,超过这个时间没有收到邻居路由器发来的更新信息,则认为路由失败

垃圾收集定时器 —> 当路由器的路由无效后,该路由成为一个无效路由项,COST值会标记为16,缺省时间为120s,如果在这段时间内没收到该路由的更新消息,计时器结束后清除该条路由项。

*RIP规定在邻居之间每30s进行一次路由更新,如果180s仍未收到邻居的通告信息,则可以判断路由事败,并将COST值设置为16。

2、ISIS协议

基于Logical-link control

3、OSPF协议

开放最短路径优先路由协议

分布式链路状态路由协议

基于IP协议(协议号89)

采用组播方式进行路由发布 ——> 不需要进行传输层的封装

在网络拓扑发生变化时发布路由信息

并非所有的路由器都发布路由信息 —> 指定路由器(DR)代表网络向外界发布路由信息

组播地址 224.0.0.5

分层的路由协议。

自治系统被划分为多个区域,每个区域运行路由选择算法的一个实例,连接多个区域的路由器运行路由选择算法的多个实例。

通过hello报文来发现邻居,并保持邻居的活动状态

Hello报文中的TTL值为1 ——> 不能跨网段组播

OSPF的一个区域可以有多个网段 ——> 可以有多个DR和BDR

OSPF的路由器知晓整个网络拓扑结构 ——> 更不容易发生环路

不支持可变长子网掩码(VLSM)

区域类型(5个)

为了限制路由信息传播范围过大,避免网络中的路由信息过多,以提高路由收敛速度

(不同类型的区域对自治系统外部传入的路由信息的处理方式不同)

1、标准区域:可以接收任何链路更新信息和路由汇总信息

2、骨干区域:连接各个区域的传输网络,其他区域都通过骨干区域交换路由信息。拥有标准区域的所有性质

3、末梢区域:不接受本地自治系统以外的路由信息,对自治系统以外的目标采用默认路由0.0.0.0

4、完全末梢区域:不接受自治系统以外的路由信息,也不接受自治系统内其他区域的路由汇总信息,发送到本地区域外的报文使用默认路由0.0.0.0

5、非完全末梢区域:类似于存根区域,但是允许接收以类型7的链路状态公告发送的外部路由信息

路由器类型

内部路由器:每个接口都属于同一个区域的路由器

骨干路由器(BR):包含有属于Area 0的接口的路由器

区域边界路由器(ABR):某些接口属于Area 0,其他接口属于别的区域的路由器

自治系统边界路由器:与本自治系统之外的网络相连的路由器

——>

所有区域边界路由器ABR都是骨干路由器BR;

所有的ABR和位于Area 0的内部设备都是骨干路由器;

4、BGP协议

外部网关协议,主要用于自治系统(Automatic Systen,AS)之间的路由选择协议。

基于距离向量。

使用TCP作为其传输层协议

BGP基于TCP的179号端口 —> 需要建立TCP连接之后进行路由更新

报文类型

OPEN报文 —> 建立邻居关系

KEEPALIVE报文 —> 对OPEN请求进行应答

UPDATE报文 —> 发送路由更新信息

NOTIFICATION报文 —> 通告路由错误

BGP路由器收到一条路由信息时,首先检查它所在的自治系统是否在通路列表中。如果在,则该路由信息被忽略,从而避免路由环路。

5、命令

display ip routing-table

华为对路由器协议优先级的定义

路由类型 优先级
直连路由 0
OSPF内部路由 10
ISIS路由 15
静态路由 60
RIP路由 100
OSPF ASE路由 150
OSPF NSSA路由 150
IBGP路由 225
EBGP路由 225

6、访问控制列表ACL

根据源地址、目标地址、源端口或目标端口等协议信息对数据包进行过滤,从而达到访问控制的目的。包含permit / deny两种动作

ACL类型

基本ACL、高级ACL、二层ACL、用户ACL

分类 规则定义描述 编号范围

基本ACL

使用报文的源IP地址、分片信息和生效时间段信息来定义规则

只能根据源IP地址过滤流量 ——>  应用在离目的地最近的位置

2000~2999
高级ACL

既可使用IPv4报文的源IP地址,也可使用目的IP地址、IP协议类型、ICMP类型、TCP源/目的端口、UDP源/目的端口号、生效时间段等来定义规则

可以根据源/目的地址/目的端口过滤流量 ——> 应用在离源最近的位置

3000~3999
二层ACL 使用报文的以太网帧头信息来定义规则,如根据源MAC地址、目的MAC地址、二层协议类型 4000~4999

用户ACL

既可使用IPv4报文的源IP地址,也可使用目的IP地址、IP协议类型、ICMP类型、TCP源端口/目的端口、UDP源端口/目的端口号等来定义规则 6000~6031

如果使用基本ACL,应该把它应用在流量传输过程中离目的地最近的位置。

如果使用高级ACL,应该把它应用到离源最近的位置。

ACL语句处理规则

*自顶向下逐个处理ACL语句 —> 要把最特殊的语句排在列表最前面,最一般的语句排在列表的最后面

1、一旦发现匹配的语句,就不再处理列表中的其他语句。

2、语句的排列顺序很重要。

3、如果整个列表中没有匹配的语句,则分组被丢弃。

例如,

rule deny ip destination 172.16.0.0 0.0.255.255

rule permit ip destination 172.16.0.0 0.0.0.255 //范围更大,但第一条ACL语句被执行后,

                                                                           //第二条ACL语句就被忽略了

ACL配置实例

基本ACL

system-view

acl 2001

rule permit source 172.16.10.3 0

---------

system-view

acl 2001

rule permit source 172.16.10.3 0

rule deny source 172.16.10.0 0.0.0.255

description Permit only 172.16.10.3 through

----------

//基于时间的ACL规则

//创建时间段 working-time

//并在名称为work-acl的ACL中配置规则

system-view

time-range working-time 8:00 to 18:00 working-day

acl name work-acl basic

rule deny source 172.16.10.0 0.0.0.255 time-range working-time

-----------

//配置基于IP分片信息、源IP地址过滤报文的规则

//拒绝源IP地址是172.16.10.0/24网段地址的非首片分片报文通过

system-view

acl 2001

rule deny source 172.16.10.0 0.0.0.255 none-first-fragment

--------------

高级ACL

//配置基于ICMP协议类型、源IP地址和目的IP地址过滤报文的规则

system-view

acl 3001

rule permit icmp source 172.16.10.3 0 destination 172.16.20.0 0.0.0.255

-----------

//拒绝建立telnet连接

system-view

acl name deny-telnet

rule deny tcp destination-port eq telnet source 172.16.10.3 0 destination 172.16.20.0 0.0.0.255

system-view 

acl name no-web

description Web access restrictions

rule deny tcp destination-port eq 80 source 172.16.10.3 0

rule deny tcp destination-port eq 80 source 172.16.10.4 0

*用于TCP和UDP端口号的操作符

*常用TCP和UDP端口号

ACL综合应用

【实例1】某公司通过Router实现各部门之间的互连。公司要求禁止销售部门在上班时间(8:00-18:00)访问工资查询服务器(IP地址为192.168.10.10),财务部门不受限制,可以随时访问,拓扑结构如图所示。

1、配置接口加入VLAN,并配置VLANIF接口的IP地址

//将路由器接口1、2分别加入VLAN10、20,Eth2/0/0加入VLAN100,并配置各VLANIF接口的IP地址。以Eth2/0/1和VLANIF10接口为例。

system-view

sysname R1

vlan batch 10 20 100

interface ethernet 2/0/1

port link-type trunk

port trunk allow-pass vlan 10

quit

interface vlanif 10

ip address 192.168.1.1 255.255.255.0

quit

2、配置时间段

time-range satime 8:00 to 18:00 working-day

3、配置ACL规则

acl 3001

rule deny ip source 192.168.1.0 0.0.0.255 destination 192.168.10.10 0.0.0.0 time-range satime

quit

4、配置基于ACL的流分类

//配置流分类c_xs,对匹配ACL3001的报文进行分类

traffic classifier c_xs

if-match acl 3001

quit

5、配置流行为

//配置流行为b_xs,动作为拒绝报文通过

traffic behabior b_xs

deny

quit

6、配置流策略

//配置流策略p_xs,将流分类c_xs与流行为b_xs关联

traffic policy p_xs

classifier c_xs behavior b_xs

quit

7、应用流策略

//由于销售部门访问服务器的流量从Eth2/0/1进入Router,所以可以在Eth2/0/1接口的入方向应用流策略p_xs

interface ethernet2/0/1

traffic-policy p_xs inbound

quit

8、检查配置结果

display acl all

display traffic-policy applied-record


网站公告

今日签到

点亮在社区的每一天
去签到