From 5ec1cb8e9ce17129f282aa96d4c7af3df7cbcc53 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E8=94=9A=E4=B8=9C?= <14091797+cpgh@user.noreply.gitee.com> Date: Tue, 22 Apr 2025 10:13:49 +0800 Subject: [PATCH 1/2] 0422 --- .../20250422\346\200\235\347\247\221.md" | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 "13 \346\235\250\350\224\232\344\270\234/20250422\346\200\235\347\247\221.md" diff --git "a/13 \346\235\250\350\224\232\344\270\234/20250422\346\200\235\347\247\221.md" "b/13 \346\235\250\350\224\232\344\270\234/20250422\346\200\235\347\247\221.md" new file mode 100644 index 0000000..a258446 --- /dev/null +++ "b/13 \346\235\250\350\224\232\344\270\234/20250422\346\200\235\347\247\221.md" @@ -0,0 +1,64 @@ +# 路由重分发 + + + +在大型的企业中,可能在同一网内使用到多种路由协议,为了实现多种路由协议的协同工作,路由器可以使用路由重分发(route redistribution)将其学习到的一种路由协议的路由通过另一种路由协议广播出去,这样网络的所有部分都可以连通了。 为了实现重分发,路由器必须同时运行多种路由协议,这样,每种路由协议才可以取路由表中的所有或部分其他协议的路由来进行广播 + + + +```bash +# 在路由器上配置多路由协议间的重分发,比如将路由协议A重分发到路由协议B中,要先进入路由协议B的路由模式下,然后再执行redistribute命令进行重分发的操作,并配置相应的路由选路参数。 + +#步骤1:先将负责转发的路由器,设置好各种协议,RIP\OSPF\静态 + +# 将RIP转成OSPF怎么办? +// 1.先进入目标协议OSPF +Router(config):router ospf 1 +// 2.将来源RIP重分发 +Router(config-router)#redistribute rip subnets // 获取来自RIP子网络的路由进行分发 + +# 将OSPF转成RIP怎么办? +// 1.先进入目标协议RIP +Router(config):router rip +Router(config-router):version 2 +// 2.将来源OSPF重分发 +Router(config-router)#redistribute ospf 1 metric 5 // 获取来自OSPF进程1的路由进行重分发,且设置metric为5 + +# 将静态转成OSPF怎么办? +// 1.先进入目标协议OSPF +Router(config):router ospf 1 +// 2.将来源静态重分发 +Router(config-router)#redistribute static subnets + + +# 注意: +# 只能将静态重分发为动态,而不能将动态重分发为静态,所以指向动态的方向可以用默认路由,指向具体静态网络时,要写具体 + + +``` + +中间负责重分发的路由器核心代码: + +```bash +# 进入OSPF 将RIP和静态重分发为OSPF +router ospf 1 + log-adjacency-changes + redistribute rip subnets + redistribute static subnets + network 9.9.9.0 0.0.0.255 area 0 +! +# 进入RIP 将OSPF和静态重分发为RIP +router rip + version 2 + redistribute ospf 1 metric 5 + redistribute static + network 11.0.0.0 +! +# 静态路由,直接设置,不用重发分,但与当前路由连接的静态路由器,要将当前路由器调为默认出口 +ip classless +ip route 0.0.0.0 0.0.0.0 12.12.12.1 +ip route 192.168.200.0 255.255.255.0 12.12.12.1 +ip route 192.168.220.0 255.255.255.0 12.12.12.1 +! +``` + -- Gitee From a019df22d019688d63d7a6721f029b9dc393eef9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E8=94=9A=E4=B8=9C?= <14091797+cpgh@user.noreply.gitee.com> Date: Thu, 24 Apr 2025 10:08:53 +0800 Subject: [PATCH 2/2] 0424 --- .../20250424\346\200\235\347\247\221.md" | 192 ++++++++++++++++++ 1 file changed, 192 insertions(+) create mode 100644 "13 \346\235\250\350\224\232\344\270\234/20250424\346\200\235\347\247\221.md" diff --git "a/13 \346\235\250\350\224\232\344\270\234/20250424\346\200\235\347\247\221.md" "b/13 \346\235\250\350\224\232\344\270\234/20250424\346\200\235\347\247\221.md" new file mode 100644 index 0000000..4dfbd0a --- /dev/null +++ "b/13 \346\235\250\350\224\232\344\270\234/20250424\346\200\235\347\247\221.md" @@ -0,0 +1,192 @@ +### ACL类型 + +| 类型 | 编号范围 | 匹配依据 | 特点 | +| ----------- | ------------------ | ------------------------ | ------------------ | +| **标准ACL** | 1-99, 1300-1999 | 仅源IP地址 | 简单,效率低 | +| **扩展ACL** | 100-199, 2000-2699 | 源IP、目的IP、协议、端口 | 精细控制,推荐使用 | + +--- + +### 标准ACL语法 + +#### **1. 创建ACL** + +```bash +access-list <编号> <动作> <源IP> <通配符掩码> +# 编号范围 1-99 +# 动作:permit 允许 、 deny 拒绝 +``` + +#### **2. 示例** + +```bash +access-list 10 permit 192.168.1.0 0.0.0.255 # 允许192.168.1.0/24g整个网络 +access-list 10 permit 192.168.10.2 # 允许192.168.10.2单个IP通过 +access-list 10 deny any # 拒绝其他所有流量 +``` + +#### **3. 应用ACL** + +```bash +# 语法分两步骤 +# 步骤1:先选择要应用ACL的端口 如 interface g0/0 +# 步骤2:通过ACL编号及方向来应用ACL,格式如下 +ip access-group <编号> <方向> # +# 方向 in / out 代表流量流入/流出路由器的方向 +# 示例: +interface GigabitEthernet0/0 # 第一步,进入G0/0端口 +ip access-group 10 in # 第二步,在G0/0端口的入口方向应用编号为10的ACL +``` + +--- + +### **扩展ACL语法** + +#### **1. 创建ACL** + +```cisco +access-list <100-199|2000-2699> {permit|deny} <协议> <源IP> <通配符掩码> [源端口] <目的IP> <通配符掩码> [目的端口] [选项] +``` + +#### **2. 常用协议关键字** + +- `ip`:所有IP流量 +- `tcp`:TCP协议 +- `udp`:UDP协议 +- `icmp`:ICMP协议 + +#### **3. 示例** + +##### **(1)允许特定TCP端口** + +```cisco +access-list 101 permit tcp 192.168.1.0 0.0.0.255 any eq 80 ! 允许192.168.1.0/24访问任意HTTP +access-list 101 deny tcp any any eq 22 ! 拒绝所有SSH流量 +access-list 101 permit ip any any ! 允许其他所有IP流量 +``` + +##### **(2)允许ICMP(Ping)** + +```cisco +access-list 102 permit icmp any any echo-reply ! 允许Ping回应 +access-list 102 permit icmp any any echo ! 允许发起Ping +``` + +##### **(3)拒绝特定子网访问** + +```bash +# 拒绝来自192.168.10.0网段主机的IP流量访问172.16.1.0的主机 +access-list 103 deny ip 192.168.10.0 0.0.0.255 172.16.1.0 0.0.0.255 +#允许其它任意网络IP流量访问任意网络(除上一条拒绝的以外) +access-list 103 permit ip any any +``` + +#### **4. 应用ACL** + +```cisco +interface GigabitEthernet0/1 + ip access-group 101 out ! 在接口出方向应用 +``` + +--- + +### **命名ACL(更易管理)** + +#### **1. 创建命名ACL** + +```cisco +ip access-list {standard|extended} +``` + +#### **2. 示例** + +```cisco +ip access-list extended WEB_TRAFFIC + permit tcp 192.168.1.0 0.0.0.255 any eq 80 + deny tcp any any eq 22 + permit ip any any +``` + +#### **3. 应用命名ACL** + +```cisco +interface GigabitEthernet0/2 + ip access-group WEB_TRAFFIC in +``` + +--- + +### **ACL高级选项** + +#### **1. 通配符掩码(Wildcard Mask)** + +- `0.0.0.255` = 匹配前24位(类似子网掩码`255.255.255.0`的反向)。 +- `host 192.168.1.1` = 精确匹配单个IP(等价于`192.168.1.1 0.0.0.0`)。 + +#### **2. 端口匹配** + +- `eq 80`:等于80端口(HTTP) +- `gt 1023`:大于1023端口 +- `range 20 21`:20到21端口(FTP) + +#### **3. 日志记录** + +```cisco +access-list 104 deny tcp any any eq 23 log ! 拒绝Telnet并记录日志 +``` + +--- + +### **验证与排错** + +#### **1. 查看ACL配置** + +```cisco +show access-lists ! 显示所有ACL +show ip interface Gig0/0 ! 查看接口应用的ACL +``` + +#### **2. 清除ACL统计** + +```cisco +clear access-list counters ! 重置ACL命中计数器 +``` + +--- + +### **注意事项** + +1. **隐式拒绝**:ACL末尾默认有`deny any`,需显式允许必要流量。 +2. **顺序敏感**:ACL按从上到下匹配,首条匹配的规则生效。 +3. **性能影响**:过多ACL规则可能影响设备性能,尽量合并规则。 + +--- + +### **完整示例** + +#### **场景**:允许内网访问Web,禁止访问SSH,允许Ping。 + +```bash +# 创建扩展ACL +access-list 105 permit tcp 192.168.1.0 0.0.0.255 any eq 80 +access-list 105 deny tcp any any eq 22 +access-list 105 permit icmp any any +access-list 105 deny ip any any log + +# 应用ACL +interface GigabitEthernet0/0 + ip access-group 105 in +``` + +--- + +掌握这些语法后,可以灵活实现流量过滤、安全策略等功能!建议在模拟器(如Packet Tracer)中实践验证。 + + + + + + + +![image-20250423162234863](https://gitee.com/onesheet/images_backup/raw/master/img/upgit_20250423_1745396555.png) + -- Gitee