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

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

涉及内容

|-------|--------|-----------|
| 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-rangeworking-time8:00 to 18:00 working-day

acl name work-acl basic

rule deny source 172.16.10.0 0.0.0.255 time-rangeworking-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

相关推荐
laoma-cloud2 小时前
网络基础实操篇-05-路由基础-最佳实践
运维·网络·智能路由器
伤心男孩拯救世界(Code King)3 小时前
Linux网络:多路转接 epoll
linux·运维·网络
lisanmengmeng3 小时前
正向代理与反向代理
运维·服务器·网络
羊锦磊8 小时前
[ java 网络 ] TPC与UDP协议
java·网络·网络协议
cpsvps12 小时前
文件系统完整性校验工具在美服安全审计中的关键作用与实施步骤
服务器·网络·架构
♤SF♤12 小时前
SSL 剥离漏洞
网络·安全·https
猫头虎12 小时前
新手小白如何快速检测IP 的好坏?
网络·人工智能·网络协议·tcp/ip·开源·github·php
hhj123k12 小时前
渗透作业3
网络·学习
SKYDROID云卓小助手13 小时前
无人设备遥控器之多设备协同技术篇
网络·人工智能·嵌入式硬件·算法·信号处理