IP : 边界网关协议(BGP)

IP 路由常见问题

2016 年 10 月 24 日 - 机器翻译
其他版本: PDFpdf | 英语 (2015 年 8 月 22 日) | 反馈


目录


简介

本文档针对有关 IP 路由的一些常见问题提供了解答。

注意: 有关文档规则的信息,请参阅 Cisco 技术提示规则

Q. 在同一接口上“启用”和“禁用”快速或自主交换会怎么样?

A. 请看示例:

Ethernet 6 is up, line protocol is up
      Internet address is 192.192.15.1, subnet mask is 255.255.255.0       
      Broadcast address is 192.192.15.255
      Address determined by non-volatile memory MTU is 1500 bytes
      Helper address is 192.192.12.5
      Outgoing access list is not set
      Proxy ARP is enabled
      Security level is default
      Split horizon is enabled
      ICMP redirects are always sent
      ICMP unreachables are always sent
      ICMP mask replies are never sent
      
      IP autonomous switching is enabled
      IP autonomous switching on the same interface is disabled 
      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
      Gateway Discovery is disabled
      IP accounting is disabled
      TCP/IP header compression is disabled
      Probe proxy name replies are disabled

如果在接口上启用快速或自主交换,来自路由器上其他任何接口的数据包都将快速交换(或自主交换)到该接口。如果启用同一接口的快速或自主交换,则会快速或自主交换源地址和目标地址相同的数据包。

如果将帧中继或异步传输模式 (ATM) WAN 链路配置为同一主接口上的子接口,则可使用同一接口的快速或自主交换。另一种情况是:当您正在 LAN 接口上使用辅助网络时,比如在 IP 地址迁移过程中。要启用同一接口的快速交换,请使用 ip route-cache same-interface configuration 命令。

Q. 如果为两条容量相等的并行线路配置负载均衡,它们之间的负载将如何分担?

A. 对于 IP,如果路由器是快速交换的,它将按目标平衡负载。如果路由器是进程交换的,则按数据包平衡负载。有关详细信息,请参阅负载均衡的工作原理?思科IOSï ¿  ½软件也支持每个小包和每平衡与思科快速转发(CEF)的目的地负载。有关详细信息,请参阅使用 CEF 执行负载均衡使用 Cisco 快速转发的并行链路上的负载均衡故障排除

Q. 什么是路由汇总?

A. 汇总就是将掩码较长的多个路由折叠形成另一个掩码较短的路由。有关详细信息,请参阅 OSPF 与路由汇总以及增强型内部网关路由协议 (EIGRP) 的“汇总”部分。auto-summary 命令只在子网连续的情况下有效。如果您使用的子网不连续,则需要在参与路由进程且要为其配置汇总的每个接口上都使用 ip summary-address 接口配置命令。

Q. Cisco 路由器何时生成源抑制?

A. 在Cisco IOSï ¿  ½软件版本11.3和12.0之前,只有当不安排缓冲空间必要排队数据包, Cisco路由器生成源淹没(source quench)。如果路由器不能将路由的数据包排在输出接口的队列中,它将生成源抑制,并向输出接口注册一个输出丢弃。如果路由器没有拥塞,则不会生成源抑制。

通过查看 show ip traffic 命令的输出可了解发送的源抑制。此外,还可查看 show interface,以便检查是否丢弃了数据包。如果没有丢弃,则不会看到任何源抑制。

Cisco IOS 软件 11.3 和 12.0 之后的版本不具备源抑制功能。

Q. Cisco 路由器何时向其接口发出路由请求?

A. 只要满足下列任一条件,运行距离矢量路由协议的 Cisco 路由器就会向其接口发出路由请求:

无论由哪个接口触发,此请求都将发送到针对该特定协议而配置的所有接口中。如果针对该协议仅配置一个接口,此请求将只发送到这一个接口中。

已启用 debug ip igrp events 或 debug ip igrp transactions 命令时,在任何一种条件下都会发生这种情况:

IGRP: broadcasting request on Ethernet0 
IGRP: broadcasting request on Ethernet1 
IGRP: broadcasting request on Ethernet2 
IGRP: broadcasting request on Ethernet3

Q. ip default-gateway、ip default-network 和 ip route 0.0.0.0/0 命令之间有何区别?

A. 在路由器上禁用 IP 路由时,将使用 ip default-gateway 命令。但是,在路由器上启用 IP 路由时,只能使用 ip default-networkip route 0.0.0.0/0 命令;数据包不具备与路由表中完全匹配的路由时,将使用这两个命令进行路由。有关详细信息,请参阅使用 IP 命令配置最后选用网关

Q. 如何使用 ip helper-address 命令转发 Bootstrap 协议 (BOOTP) 帧?

A. ip helper-address 命令采用 BOOTP 服务器的 IP 地址或 BOOTP 服务器所在网段的定向广播地址的参数。如果拥有多个 BOOTP 服务器,也可使用多个带有不同 IP 地址的命令实例。ip helper-address 命令还可用在单个子接口上。

Q. 增强型内部网关路由协议 (EIGRP) 会自动与 IGRP IP 路由协议进行重分配。EIGRP 是否还会与路由信息协议 (RIP) IP 路由协议进行交互?

A. EIGRP 可使用 redistribute 命令与 RIP 进行交互。由于 RIP 和 EIGRP 有着本质的区别,因此自动交互可能会产生无法预料的负面结果。但同时又因为二者在体系结构上具有相似性,在 EIGRP 和 IGRP 之间进行自动交互也是有可能的。有关详细信息,请参阅重分配路由协议

Q. 从两个源同时获知路由时,如何配置路由器选择开放最短路径优先 (OSPF) 路由而非 EIGRP 路由?

A. 最简便的方法是在路由进程下使用 distance 命令。对于内部路由,OSPF 的默认管理距离为 110,EIGRP 的默认管理距离为 90。如果在两个路由协议下获知相同的路由前缀,就会将 EIGRP 获知的路由安装到 IP 路由表中,因为其管理距离较小(90 小于 110)。要让 OSPF 路由而非 EIGRP 路由安装在路由信息库 (RIB) 中,关键方法是使用 distance ospf 命令让 OSPF 的管理距离小于 EIGRP 的管理距离。要了解有关管理距离的详细信息,请参阅什么是管理距离

Q. 使用扩展 IP 访问控制列表 (ACL) 是否会过滤常规路由更新(如 OSPF)?是否需要明确允许路由协议所使用的多播 IP(如 OSPF 所使用的多播 IP 224.0.0.5 和 224.0.0.6)进行更新以确保路由协议能够正常工作?

A. 接口上的任何 IP ACL 都可应用于该接口上的任何 IP 数据流。所有 IP 路由更新数据包都在接口层级作为常规 IP 数据包处理,因此,会使用 access-list 命令将这些数据包与该接口上定义的 ACL 进行匹配。要确保 ACL 不拒绝路由更新,请使用下列语句加以许可。

要允许 RIP,请使用:

access-list 102 permit udp any any eq rip 

要允许 IGRP,请使用:

access-list 102 permit igrp any any

要允许 EIGRP,请使用:

access-list 102 permit eigrp any any 

要允许 OSPF,请使用:

access-list 102 permit ospf any any 

要允许边界网关协议 (BGP),请使用:

access-list 102 permit tcp any any eq 179
access-list 102 permit tcp any eq 179 any

有关 ACL 的详细信息,请参阅配置 IP 访问列表配置常用的 IP ACL

Q. 接口子命令 no arp arpa 是否会禁用路由器接口的地址解析协议 (ARP) 功能?

A. 高级研究项目管理局 (ARPA) ARP 是针对“以太网接口”而言,默认情况下 ARP ARPA 与 no arp snap 一起设置。这意味着将发送 ARPA 样式的 ARP,但 ARPA 和子网接入协议 (SNAP) 样式的 ARP 均可获得应答。通过设置 no arp arpa 可禁用 ARP 请求,但对 ARP 请求所尝试的每个站创建空条目。可以单独启用 SNAP、单独启用 ARPA(默认设置)、同时启用 SNAP 和 ARPA(每次发送两个 ARP)或者 SNAP 和 ARPA 均不启用(设置 no arp arpa 并且也不设置其他任何 ARP 时即如此)。

Q. 是否可以为 255.255.254.0 以太网和 255.255.252.0 串行子网配置路由器?IGRP/RIPv1 是否支持可变的子网划分?

A. 是的,可以配置这些子网掩码。要在 Cisco 路由器上划分子网,子网位必须是连续的,因此 225.255.252.0 (11111111.11111111.11111100.00000000) 无效,255.255.253.0 (11111111.11111111.11111101.00000000) 有效。在进行子网划分时,需要至少保留 2 位主机位。此外,通常情况下不允许使用单个位进行子网划分。以上掩码都满足这些条件。有关详细信息,请参阅 IP 编址和子网划分入门指南

IGRP RIP 版本 1 不支持可变长度的子网掩码 (VLSM)。运行这些协议中任意一种的单个路由器可以很好地进行可变长度的子网划分。为其中一个已配置子网指定的传入数据包会被适当地路由并传送到正确的目标接口上。但是,如果 VLSM 和不连续的网络配置在 IGRP 域中的多个路由器间,就会引发路由问题。有关详细信息,请参阅 RIP 或 IGRP 为什么不支持不连续网络?

新版的 IP 路由协议(EIGRP、ISIS、OSPF 以及 RIP 版本 2)支持 VLSM,因此应在网络设计中优先使用。有关所有 IP 路由协议的详细信息,请参阅 IP 路由协议技术支持页

Q. 接口的配置中是否可拥有多个 ip access-group 语句?

A. 在 Cisco IOS 版本 10.0 及更高版本中,每个接口可拥有两个 ip access-group 命令(每个方向一个):

interface ethernet 0
	ip access-group 1 in
	ip access-group 2 out

一个 access-group 用于入站数据流,另一个用于出站数据流。有关 ACL 的详细信息,请参阅配置常用的 IP ACL配置 IP 访问列表

Q. 是否可在同一子网中配置两个接口(t0 = 142.10.46.250/24,t1 = 142.10.46.251/24)?

A. 不能。要使路由有效,每个接口都应各自位于不同的子网中。但如果只是进行桥接而非 IP 路由,则可在同一子网中配置这两个接口。

Q. 同一路由器的两个串行接口中是否可以存在重复的 IP 地址?

A. 可以,串行接口上允许存在重复的 IP 地址。对于捆绑链路(即MLPPP)而言,这是一个更为有效的方法;并且这也是保留地址空间的更佳方法。将封装从默认的 HDLC 更改为 PPP,以便分配重复的 IP 地址。

Q. 我在以太网接口上配置了主 IP 地址和辅助 IP 地址,我的路由器正在运行 RIP(一种距离矢量路由协议)。水平分割如何影响路由更新?

A. 请参阅涉及辅助地址时水平分割如何影响 RIP/IGRP 路由更新

Q. 在扩展 ACL 中使用 IP 访问列表关键字 established 是否具有性能优势?使用“established”是否会使访问列表更容易受到影响?是否有具体的使用示例?

A. 没有实际的性能优势。关键字 established 仅仅意味着,已设置确认 (ACK) 或重置 (RST) 位的数据包可以通过。要了解有关 ACL 的总体信息,请参阅配置 IP 访问列表

建立的关键字允许内部主机建立外部TCP连接,并接收回归的控制流量。大多数情况下,这种类型的 ACL 在防火墙配置上会是必需的。相同的结果也可以通过使用自反 ACL 或基于上下文的访问控制来实现。有关示例配置,请参阅配置常用的 IP ACL

Q. 我找到指向同一目标位置的四个等价并行路径。我在两个链路上配置快速交换,在另外两个链路上配置进程交换。这种情况下会如何路由数据包?

A. 假设有四个等价路径,都指向同一组 IP 网络。接口 1 和 2 快速交换(在接口上已启用 ip route-cache),3 和 4 则没有 (no ip route-cache)。路由器首先在列表中建立四个等价路径(路径 1、2、3 和 4)。执行 show ip route x.x.x.x 时,这四个路径将“下一跳”为 x.x.x.x 显示。

接口 1 上的指针称为 interface_pointer。interface_pointer 会以某种有序的特定方式(如 1-2-3-4-1-2-3-4-1 依此类推)循环通过这些接口和路由。show ip route x.x.x.x 的输出在“下一跳”左侧有一个“*”符号,该“下一跳”是 interface_pointer 为缓存中不存在的目标地址而使用的。每次使用 interface_pointer 时,它都会前进到下一个接口或路由。

为了更好的理解这一点,请考虑以下重复环路:

  • 传入一个数据包,指定给这四个并行路径所服务的网络。

  • 路由器检查该网络地址是否在缓存中。(缓存起初为空。)

  • 如果在缓存中,路由器会将其发送到存储在缓存中的接口上。否则,路由器会将其发送到 interface_pointer 所在的接口中,并将 interface_pointer 移至列表中的下一个接口。

  • 如果路由器刚刚发送数据包所在的接口正在运行路由缓存,路由器将会使用该接口的 ID 和目标 IP 地址填充缓存。这样,对于传入同一目标的所有后续数据包,都将使用路由缓存条目进行交换(因此为快速交换)。

如果有两个路由缓存接口和两个非路由缓存接口,则未缓存的条目会有 50% 的可能命中缓存条目的接口,然后将该目标缓存到此接口中。随着时间的推移,运行快速交换(路由缓存)的接口将承载除缓存中没有的目标以外的所有数据流。出现这种情况的原因是,传入目标的数据包通过某接口进行进程交换后,interface_pointer 将移动并指向列表中的下一个接口。如果此接口也采用进程交换,则第二个数据包会通过此接口进行进程交换,interface_pointer 随之继续移动并指向下一个接口。由于只有两个进程交换接口,第三个数据包将路由到快速交换接口上,此接口继而执行缓存。一旦缓存到 IP 路由缓存中,传入同一目标的所有数据包都将变为快速交换。因此,未缓存的条目会有 50% 的可能命中缓存条目的接口,然后将该目标缓存到此接口中。

一旦进程交换的接口发生故障,路由表将会更新,并且您将拥有三个等价路径(两个快速交换,一个进程交换)。随着时间的推移,运行快速交换(路由缓存)的接口将承载除缓存中没有的目标以外的所有数据流。如果有两个路由缓存接口和一个非路由缓存接口,则未缓存的条目会有 66% 的可能命中缓存条目的接口,然后将该目标缓存到此接口中。可以预计随着时间的推移这两个快速交换接口将承载所有数据流。

同样,如果快速交换接口发生故障,将有三个等价路径,一个快速交换和两个进程交换。随着时间的推移,运行快速交换(路由缓存)的接口将承载除缓存中没有的目标以外的所有数据流。未缓存的条目会有 33% 的可能命中缓存条目的接口,然后将该目标缓存到此接口中。在这种情况下,可以预计随着时间的推移已启用缓存的单个接口将承载所有数据流。

如果没有接口运行路由缓存,路由器将会逐包轮询数据流。

总之,如果对于某个目标存在多个等价路径,那么有些路径采取进程交换,另外一些则采取快速交换,然后随着时间的推移,大部分数据流都仅由快速交换接口承载。由此获得的负载均衡不是最佳的,并且在某些情况下还会降低性能。因此,建议您执行下列操作之一:

  • 将全部接口上的所有路由缓存或非路由缓存都置于并行路径中。

  • 预计随着时间的推移已启用缓存的接口将承载所有数据流。

Q. 什么是单播反向路径转发 (uRPF)?默认路由 0.0.0.0/0 是否可用于执行 uRPF 检查?

A. 单播反向路径转发用于防止源地址欺骗,它是一种“回顾”功能,使路由器能够检查路由器接口上接收到的 IP 数据包是否到达最佳返回路径(返回路由),该路径指向数据包的源地址。如果数据包是从最佳反向路径路由之一接收到的,则正常转发该数据包。如果在接收数据包的同一接口上不存在反向路径路由,则丢弃或转发该数据包,具体取决于是否以 ip verify unicast reverse-path list 接口配置命令指定了访问控制列表 (ACL)。有关详细信息,请参阅 Cisco IOS 安全配置指南,版本 12.2配置单播反向路径转发一章。

默认路由 0.0.0.0/0 不能用于执行 uRPF 检查。例如,如果源地址为 10.10.10.1 的数据包到达“串行 0”接口,与 10.10.10.1 匹配的唯一路由是默认路由 0.0.0.0/0(指出路由器上的“串行 0”),这样,uRPF 检查将失败,并且丢弃该数据包。

Q. 针对同一目标位置有多个链路时,Cisco 快速转发 (CEF) 和路由协议中哪一个用于执行负载均衡?

A. CEF 会根据路由协议(如 EIGRP、RIP、开放最短路径优先 (OSPF) 等)正在填充的路由表执行数据包的交换。计算路由协议表之后,CEF 会执行负载均衡。有关负载均衡的详细信息,请参阅负载均衡的工作原理?

Q. 在路由器接口上可以配置的辅助 IP 地址的最大数目是多少?

A. 在路由器接口上配置辅助 IP 地址时,没有数目限制。有关详细信息,请参阅配置 IP 编址

Q. 什么是暂停控制计数器?

A. 暂停控制计数器表示一个路由器向另一个路由器发出减缓数据流发送速率的请求次数。例如,两个路由器(路由器 A 和路由器 B)通过一个链路互相连接,此链路上已启用流控制。如果路由器 B 中出现数据流突发,它将发送暂停输出数据包通知路由器 A 减缓数据流的发送速率,因为链路已超额订阅。这时,路由器 A 会收到暂停输入数据包,该数据包会将路由器 B 发送的请求通知给路由器 A。暂停输出/输入数据包不属于问题或错误。它们只是两个设备之间的流控制数据包。

Q. VLAN 接口和隧道接口能否具有相同的 IP 地址?

A. 不能。不支持在隧道上进行桥接,因为隧道会要求将 IP 数据流封装在 GRE 报头中,但您无法封装第 2 层数据流。

Q. 什么是虚拟路由和转发 (VRF)?

A. 虚拟路由和转发 (VRF) 是 IP 网络路由器中提供的一种技术,它允许路由器中存在多个路由表实例并同时运行。这样就增强了功能,因为通过此技术可对网络路径进行分段,而无需使用多个设备。由于数据流会自动分离,VRF 还增强了网络安全性,而且还不必进行加密和身份验证。Internet 服务提供商 (ISP) 经常利用 VRF 为客户创建单独的虚拟专用网络 (VPN)。因此这种技术也称为 VPN 路由和转发。

VRF 运行方式类似于逻辑路由器,但逻辑路由器可包含多个路由表,VRF 实例只能使用一个路由表。此外,VRF 还需要为每个数据包指定下一跳的转发表、一系列可调用以转发数据包的设备以及一组控制数据包转发方式的规则和路由协议。这些表可防止在特定 VRF 路径外转发数据流,同时也将属于 VRF 路径外的数据流阻止在该路径外。

Q. 如何连接两个不同的 ISP,并将不同的数据流路由到不同的 ISP?

A. 基于策略的路由 (PBR) 功能使您能够根据源地址将数据流路由到不同的 ISP。

Q. 创建静态路由的两种方法之间有何区别?

A. 创建静态路由有两种方法:

  • ip route 10.1.1.1 255.255.255.0 eth 0/0 命令会生成一个 ARP 广播,用于查找下一跳 IP 地址。

  • ip route 10.1.1.1 255.255.255.0 172.16.1.1 命令不会生成 ARP 请求。它将第 2 层排除在路由进程之外。

Q. 端口 2228 和 56506 有何用途?

A. 端口 2228 和 56506 是未注册的端口号。任何应用程序都可使用这两个端口。有些应用程序会使用这些端口号发起连接。因此,这些端口号会显示在 show ip sockets 命令的输出中。如果需要阻止端口号,请配置一个访问列表以阻止端口。

Q. 点对点子接口和多点子接口之间有何区别?

A. 点对点接口用于串行通信。这类连接应该只向对端站进行传输。点对点的例子有 EIA/TIA 232、EIA/TIA 449、X.25、帧中继、T 载波以及 OC3 - OC192。

单点对多点是将一个站点连接到多个其他站点。单点对多点有以下两种类型

  • 单点对多点非广播

  • 单点对多点广播

在单点对多点非广播中,通信会复制到所有远程站点上。只有在特定情况下,选定站点会收到复制的通信。例如,帧中继和 ATM。

单点对多点广播中使用的与所有计算机相连的物理介质,这种情况下所有站点都收到全部+通信。

Q. 能否为同一主接口下的子接口配置不同的 MTU?7500/GSR/ESR路由器如何正常运行在此方案?

A. 可以使用 ip mtu 命令在不同的子接口上配置不同的 IP MTU。更改子接口上的 MTU 时,路由器将检查来自主接口的 MTU。如果主接口上设置的 MTU 值低于子接口上配置的值,路由器将更改主接口上的 MTU,以便与子接口匹配。因此,使用 mtu 命令在主接口上配置的物理 MTU 需高于子接口上配置的 IP MTU。

将根据 75000/GSR 上配置的最高 MTU 划分数据包内存。这里有一个特例;引擎 4+ 线路卡不要求根据 MTU 的更改划分缓冲区。在 ESR 中,数据包内存会在引导时划分,并且不受 MTU 设置的影响。因此,更改 MTU 不会对 ESR 有任何影响。

Q. 如何在客户访问网络时限制会话数?

A. 如果客户使用同一 IP 地址,则使用 ppp ipcp address unique 命令,以便减少客户使用的会话数。

Q. 如何计算记账数据年龄值?

A. 记账数据年龄值会从 IP 记账启用时开始每分钟递增一次。发出 clear ip accounting 命令时即停止递增,将此值重置为 0。

Q. IP SLA 操作中的术语“阈值”和“超时”是什么意思?

A. “阈值”会设置一个上升阈值,可针对 IP SLA 操作生成反应事件并存储历史信息。

“超时”会设置一个时间值,表示 IP SLA 操作等待其请求的数据包发出响应的时间长度。

Q. 路由表条目中提到的“时间”有什么意义?

A. 这是路由表中路由的存留时间。它表示路由在路由表中存在了多长时间。

Q. 什么是网络描述符块 (NDB)?

A. 它表示网络信息,这些信息以路由描述符块 (RDB) 存储在“路由表”中。用于存放 IP 路由表获知的前缀的内存被划分为 NDB 和 RDB。路由信息库 (RIB) 中的每个路由都要求每个路径拥有一个 NDB 和一个 RDB。如果路由经过子网划分,则要求额外的内存来维护 NDB,通过 show ip route summary 命令可显示 IP RIB 的直接内存使用。


相关信息


Document ID: 28745