网络问题故障排除
处理网络问题
出
说明
此清单提供故障排除基础知识(示例网络)的链接,其中包含可能用于诊断路由器和网络问题的命令摘要。
解决方案
Task |
命令或操作 |
---|---|
隔离中断的网络连接 | |
ping (ip-address | hostname) show route (ip-address | hostname) traceroute (ip-address | hostname注册) |
|
|
|
|
|
|
隔离中断的网络连接
通过应用中图 1所示的标准四步过程,您可以隔离网络中发生故障的节点。请注意,在 15.1 X 49、15.1 X 49-D30 或 15.1 X 49-D40 版本中不支持本节中介绍的功能。

但是,在开启四步过程之前,请务必准备好应对所有网络上发生的不可避免的问题。虽然您只需尝试各种操作即可解决问题,但如果您是以您的网络维护和监控的方式进行系统化的,则可以更快地找到合适的解决方案。要对网络问题进行准备,请了解网络在正常情况下的工作原理,并记录基准网络活动,并在问题情况下仔细观察网络行为。
图 2显示了本主题中使用的网络拓扑,用于说明诊断网络中的问题的过程。

网络位于两图 2个自治系统(as)中。AS 65001 包含两个路由器,而 AS 65002 包含三个路由器。AS 65001 中的R1
边界路由器()向 as 65002 100.100/24
网络宣布了聚合前缀。此网络中R6
的问题是R5
由于和R2
R6
之间的循环,无法访问。
要隔离网络中出现故障的连接,请遵循以下主题中的步骤:
识别中断的网络连接的症状
出
说明
网络问题的症状通常非常明显,例如访问远程主机失败。
解决方案
要识别网络问题的症状,请从网络的一端开始,然后跟随路由到另一端,输入以下所有或一个 Junos OS 命令行界面(CLI)操作模式命令:
user@host> ping (ip-address
|host-name
) user@host> show route (ip-address
|host-name
) user@host> traceroute (ip-address
|host-name
)
示例输出
user@R6> ping 10.0.0.5 PING 10.0.0.5 (10.0.0.5): 56 data bytes 36 bytes from 10.1.26.1: Time to live exceeded Vr HL TOS Len ID Flg off TTL Pro cks Src Dst 4 5 00 0054 e2db 0 0000 01 01 a8c6 10.1.26.2 10.0.0.5 36 bytes from 10.1.26.1: Time to live exceeded Vr HL TOS Len ID Flg off TTL Pro cks Src Dst 4 5 00 0054 e2de 0 0000 01 01 a8c3 10.1.26.2 10.0.0.5 36 bytes from 10.1.26.1: Time to live exceeded Vr HL TOS Len ID Flg off TTL Pro cks Src Dst 4 5 00 0054 e2e2 0 0000 01 01 a8bf 10.1.26.2 10.0.0.5 ^C --- 10.0.0.5 ping statistics --- 3 packets transmitted, 0 packets received, 100% packet loss user@R6> show route 10.0.0.5 inet.0: 20 destinations, 20 routes (20 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 10.0.0.5/32 *[IS-IS/165] 00:02:39, metric 10 > to 10.1.26.1 via so-0/0/2.0 user@R6> traceroute 10.0.0.5 traceroute to 10.0.0.5 (10.0.0.5), 30 hops max, 40 byte packets 1 10.1.26.1 (10.1.26.1) 0.649 ms 0.521 ms 0.490 ms 2 10.1.26.2 (10.1.26.2) 0.521 ms 0.537 ms 0.507 ms 3 10.1.26.1 (10.1.26.1) 0.523 ms 0.536 ms 0.514 ms 4 10.1.26.2 (10.1.26.2) 0.528 ms 0.551 ms 0.523 ms 5 10.1.26.1 (10.1.26.1) 0.531 ms 0.550 ms 0.524 ms
含义
示例输出显示的是不ping
成功的命令,其中数据包由于超过了生存时间而被拒绝。该show route
命令的输出显示可进一步检查可能10.1.26.1
存在的问题的接口()。该traceroute
命令10.1.26.1
显示了(R2
)和10.1.26.2
(R6
)之间的循环,正如连续重复两个接口地址所示。
隔离网络问题的原因
出
说明
特定症状可能是由一个或多个原因导致的。缩小搜索范围以查找不需要的行为的各个原因。
解决方案
要隔离特定问题的原因,请输入以下一个或所有 Junos OS CLI 操作模式命令:
user@host> show < configuration | bgp | interfaces | isis | ospf | route >
您的特定问题可能需要使用以上列出的命令。有关常用操作模式命令的更详尽列表,请参阅相应的命令参考。
示例输出
user@R6> show interfaces terse Interface Admin Link Proto Local Remote so-0/0/0 up up so-0/0/0.0 up up inet 10.1.56.2/30 iso so-0/0/2 up up so-0/0/2.0 up up inet 10.1.26.2/30 iso so-0/0/3 up up so-0/0/3.0 up up inet 10.1.36.2/30 iso [...Output truncated...]
下面的示例输出来自R2
:
user@R2> show route 10.0.0.5 inet.0: 22 destinations, 25 routes (22 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 10.0.0.5/32 *[Static/5] 00:16:21 > to 10.1.26.2 via so-0/0/2.0 [BGP/170] 3d 20:23:35, MED 5, localpref 100 AS path: 65001 I > to 10.1.12.1 via so-0/0/0.0
含义
此示例输出显示了上R6
的所有接口。中R2
的输出显示,将静态路由 [Static/5
] 配置在R2
点到R6
(10.1.26.2
)上,并且是由于其R5
低优先级别值而进行的首选路由。但是, R2
路由从循环到R6
R5
(10.1.15.2
)的缺少引用所指示。
采取适当的措施解决网络问题
出
说明
相应的操作取决于您已隔离的问题类型。在此示例中,中配置R2
的静态路由从 [routing-options
] 层次结构级别中删除。其他相应的操作可能包括以下内容:
解决方案
检查本地路由器的配置,并在适当时对其进行编辑。
排除中间路由器故障。
检查远程主机配置并根据需要进行编辑。
路由协议故障排除。
识别其他可能的原因。
要解决此示例中的问题,请输入以下 Junos OS CLI 命令:
[edit] user@R2# delete routing-options static routedestination-prefix
user@R2# commit and-quit user@R2# show routedestination-prefix
示例输出
[edit] user@R2# delete routing-options static route 10.0.0.5/32 [edit] user@R2# commit and-quit commit complete Exiting configuration mode user@R2> show route 10.0.0.5 inet.0: 22 destinations, 24 routes (22 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 10.0.0.5/32 *[BGP/170] 3d 20:26:17, MED 5, localpref 100 AS path: 65001 I > to 10.1.12.1 via so-0/0/0.0
含义
示例输出显示从 [routing-options
] 层次结构中删除的静态路由和提交的新配置。该show route
命令的输出现在将 BGP 路由显示为首选路由,如星号(*
)所示。
评估解决方案以检查网络问题是否已解决
出
说明
如果问题得到解决,您就大功告成了。如果问题仍然存在或发现了新问题,请重新启动流程。
您可以按任何顺序解决可能的原因。与隔离中断网络连接的网络不同,我们选择从本地路由器到远程路由器,但您可能会从另一个点开始工作,特别是在有理由相信问题与已知问题,例如配置最近更改。
解决方案
要评估解决方案,请输入以下 Junos OS CLI 命令:
user@host> show route (ip-address
|host-name
) user@host> ping (ip-address
|host-name
) user@host> traceroute (ip-address
|host-name
)
示例输出
user@R6> show route 10.0.0.5 inet.0: 20 destinations, 20 routes (20 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 10.0.0.5/32 *[BGP/170] 00:01:35, MED 5, localpref 100, from 10.0.0.2 AS path: 65001 I > to 10.1.26.1 via so-0/0/2.0 user@R6> ping 10.0.0.5 PING 10.0.0.5 (10.0.0.5): 56 data bytes 64 bytes from 10.0.0.5: icmp_seq=0 ttl=253 time=0.866 ms 64 bytes from 10.0.0.5: icmp_seq=1 ttl=253 time=0.837 ms 64 bytes from 10.0.0.5: icmp_seq=2 ttl=253 time=0.796 ms ^C --- 10.0.0.5 ping statistics --- 3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max/stddev = 0.796/0.833/0.866/0.029 ms user@R6> traceroute 10.0.0.5 traceroute to 10.0.0.5 (10.0.0.5), 30 hops max, 40 byte packets 1 10.1.26.1 (10.1.26.1) 0.629 ms 0.538 ms 0.497 ms 2 10.1.12.1 (10.1.12.1) 0.534 ms 0.538 ms 0.510 ms 3 10.0.0.5 (10.0.0.5) 0.776 ms 0.705 ms 0.672 ms
含义
示例输出显示,现在R6
与R5.
show route
命令之间有一个连接,表示首选 BGP 路由R5
,如星号(*
)所示。ping
命令成功, traceroute
命令显示R6
为R5
的路径是通过R2
(10.1.26.1
),然后是R1
(10.1.12.1
)。
跟踪错误情况的清单
出
说明
表 2提供用于配置路由协议守护程序跟踪、边界网关协议(BGP)、中间系统到中间系统(IS-IS)协议以及开放最短路径优先(OSPF)协议跟踪以诊断错误情况的链接和命令。
解决方案
Task |
命令或操作 |
---|---|
配置路由协议进程跟踪 | |
|
|
|
|
monitor start filename |
|
monitor stop filename |
|
配置 BGP 特定选项 | |
|
|
|
|
|
|
配置 IS-IS 特定选项 | |
|
|
|
|
|
|
配置 OSPF 特定选项 | |
|
|
|
配置路由协议进程跟踪
操作
要配置路由协议进程(rpd)跟踪,请按照以下步骤操作:
在配置模式下,转至以下层次结构级别:
[edit] user@host# edit routing-options traceoptions
配置文件、文件大小、编号和标记:
[edit routing-options traceoptions] user@host# set file filename size size file number [edit routing-options traceoptions] user@host# set flag flag
例如:
[edit routing-options traceoptions] user@host# set file daemonlog size 10240 files 10 [edit routing-options traceoptions] user@host# set flag general
验证配置:
user@host# show
例如:
[edit routing-options traceoptions] user@host# show file daemonlog size 10k files 10; flag general;
提交配置:
user@host# commit
有些追踪选项标志会生成大量信息。跟踪也会减慢路由协议的操作速度。如果不再需要追踪选项配置,请将其删除。
查看包含详细消息的文件内容:
user@host# run show log filename
例如:
[edit routing-options traceoptions] user@pro4-a# run show log daemonlog Sep 17 14:17:31 trace_on: Tracing to "/var/log/daemonlog" started Sep 17 14:17:31 Tracing flags enabled: general Sep 17 14:17:31 inet_routerid_notify: Router ID: 10.255.245.44 Sep 17 14:17:31 inet_routerid_notify: No Router ID assigned Sep 17 14:17:31 Initializing LSI globals Sep 17 14:17:31 LSI initialization complete Sep 17 14:17:31 Initializing OSPF instances Sep 17 14:17:31 Reinitializing OSPFv2 instance master Sep 17 14:17:31 OSPFv2 instance master running [...Output truncated...]
含义
表 3列出了 Junos 支持的路由协议守护程序跟踪的跟踪标记和输出示例。
跟踪标志 |
Description |
输出示例 |
---|---|---|
all |
所有操作 |
不适用。 |
general |
正常操作和路由表更改 |
不适用。 |
normal |
正常操作 |
不适用。 |
policy |
策略操作和操作 |
Nov 29 22:19:58 export: Dest 10.0.0.0 proto Static Nov 29 22:19:58 policy_match_qual_or: Qualifier proto Sense: 0 Nov 29 22:19:58 policy_match_qual_or: Qualifier proto Sense: 0 Nov 29 22:19:58 export: Dest 10.10.10.0 proto IS-IS |
route |
路由表更改 |
Nov 29 22:23:59 Nov 29 22:23:59 rtlist_walker_job: rt_list walk for RIB inet.0 started with 42 entries Nov 29 22:23:59 rt_flash_update_callback: flash KRT (inet.0) start Nov 29 22:23:59 rt_flash_update_callback: flash KRT (inet.0) done Nov 29 22:23:59 rtlist_walker_job: rt_list walk for inet.0 ended with 42 entries Nov 29 22:23:59 Nov 29 22:23:59 KRT Request: send len 68 v14 seq 0 CHANGE route/user af 2 addr 172.16.0.0 nhop-type unicast nhop 10.10.10.33 Nov 29 22:23:59 KRT Request: send len 68 v14 seq 0 ADD route/user af 2 addr 172.17.0.0 nhop-type unicast nhop 10.10.10.33 Nov 29 22:23:59 KRT Request: send len 68 v14 seq 0 ADD route/user af 2 addr 10.149.3.0 nhop-type unicast nhop 10.10.10.33 Nov 29 22:24:19 trace_on: Tracing to "/var/log/rpdlog" started Nov 29 22:24:19 KRT Request: send len 68 v14 seq 0 DELETE route/user af 2 addr 10.10.218.0 nhop-type unicast nhop 10.10.10.29 Nov 29 22:24:19 RELEASE 10.10.218.0 255.255.255.0 gw 10.10.10.29,10.10.10.33 BGP pref 170/-101 metric so-1/1/0.0,so-1/1/1.0 <Release Delete Int Ext> as 65401 Nov 29 22:24:19 KRT Request: send len 68 v14 seq 0 DELETE route/user af 2 addr 172.18.0.0 nhop-type unicast nhop 10.10.10.33 |
状态 |
状态过渡 |
不适用。 |
task |
接口事务和处理 |
Nov 29 22:50:04 foreground dispatch running job task_collect for task Scheduler Nov 29 22:50:04 task_collect_job: freeing task MGMT_Listen (DELETED) Nov 29 22:50:04 foreground dispatch completed job task_collect for task Scheduler Nov 29 22:50:04 background dispatch running job rt_static_update for task RT Nov 29 22:50:04 task_job_delete: delete background job rt_static_update for task RT Nov 29 22:50:04 background dispatch completed job rt_static_update for task RT Nov 29 22:50:04 background dispatch running job Flash update for task RT Nov 29 22:50:04 background dispatch returned job Flash update for task RT Nov 29 22:50:04 background dispatch running job Flash update for task RT Nov 29 22:50:04 task_job_delete: delete background job Flash update for task RT Nov 29 22:50:04 background dispatch completed job Flash update for task RT Nov 29 22:50:04 background dispatch running job Flash update for task RT Nov 29 22:50:04 task_job_delete: delete background job Flash update for task RT |
timer |
计时器使用 |
Nov 29 22:52:07 task_timer_hiprio_dispatch: ran 1 timer Nov 29 22:52:07 main: running normal priority timer queue Nov 29 22:52:07 main: ran 1 timer Nov 29 22:52:07 task_timer_hiprio_dispatch: running high priority timer queue Nov 29 22:52:07 task_timer_hiprio_dispatch: ran 1 timer Nov 29 22:52:07 main: running normal priority timer queue Nov 29 22:52:07 main: ran 1 timer Nov 29 22:52:07 main: running normal priority timer queue Nov 29 22:52:07 main: ran 2 timers |
为特定路由协议配置路由协议跟踪
行动
要为特定路由协议配置路由协议跟踪,请按照以下步骤操作:
在配置模式下,转至以下层次结构级别:
[edit] user@host# edit protocol protocol-name traceoptions
配置文件、文件大小、编号和标记:
[edit protocols protocol name traceoptions] user@host# set file filename size size files number [edit protocols protocol name traceoptions] user@host# set flag flag
例如:
[edit protocols ospf traceoptions] user@host# set file ospflog size 10240 files 10 [edit protocols ospf traceoptions] user@host# set flag general
验证配置:
user@host# show
例如:
[edit protocols ospf traceoptions] user@host# show file ospflog size 10k files 10; flag general;
提交配置:
user@host# commit
查看包含详细消息的文件内容:
user@host# run show log filename
例如:
[edit protocols ospf traceoptions] user@pro4-a# run show log ospflog Sep 17 14:23:10 trace_on: Tracing to "/var/log/ospflog" started Sep 17 14:23:10 rt_flash_update_callback: flash OSPF (inet.0) start Sep 17 14:23:10 OSPF: multicast address 224.0.0.5/32, route ignored Sep 17 14:23:10 rt_flash_update_callback: flash OSPF (inet.0) done Sep 17 14:23:10 CHANGE 10.255.245.46/32 gw 10.10.208.67 OSPF pref 10/0 metric 1/0 fe-0/0/0.0 <Delete Int> Sep 17 14:23:10 CHANGE 10.255.245.46/32 gw 10.10.208.67 OSPF pref 10/0 metric 1/0 fe-0/0/0.0 <Active Int> Sep 17 14:23:10 ADD 10.255.245.46/32 gw 10.10.208.67 OSPF pref 10/0 metric 1/0 fe-0/0/0.0 <Active Int> Sep 17 14:23:10 CHANGE 10.255.245.48/32 gw 10.10.208.69 OSPF pref 10/0 metric 1/0 fe-0/0/0.0 <Delete Int> Sep 17 14:23:10 CHANGE 10.255.245.48/32 gw 10.10.208.69 OSPF pref 10/0 metric 1/0 fe-0/0/0.0 <Active Int> Sep 17 14:23:10 ADD 10.255.245.48/32 gw 10.10.208.69 OSPF pref 10/0 metric 1/0 fe-0/0/0.0 <Active Int> Sep 17 14:23:10 rt_close: 4/4 routes proto OSPF [...Output truncated...]
含义
表 4 列出了全局可用或可应用于特定协议的标准跟踪选项。您也可以为特定 BGP 对等体或对等方组配置跟踪。有关详细信息,请参阅 Junos 基本配置指南。
跟踪标志 |
Description |
---|---|
all |
所有操作 |
general |
正常操作和路由表更改 |
normal |
正常操作 |
policy |
策略操作和操作 |
route |
路由表更改 |
state |
状态过渡 |
task |
接口事务和处理 |
timer |
计时器使用 |
监控以近乎实时的时间编写的跟踪文件消息
用途
在将消息写入跟踪文件时以近乎实时的方式监控它们。
行动
要在写入跟踪文件时以近乎实时的方式监控消息,请使用以下 Junos OS 命令行界面(CLI)操作模式命令:
user@host> monitor start filename
示例输出
命令名称
user@host> monitor start isis user@host> *** isis *** Sep 15 18:32:21 Updating LSP isis5.02-00 in database Sep 15 18:32:21 Updating L2 LSP isis5.02-00 in TED Sep 15 18:32:21 Adding a half link from isis5.02 to isis6.00 Sep 15 18:32:21 Adding a half link from isis5.02 to isis5.00 Sep 15 18:32:21 Adding a half link from isis5.02 to isis6.00 Sep 15 18:32:21 Adding a half link from isis5.02 to isis5.00 Sep 15 18:32:21 Scheduling L2 LSP isis5.02-00 sequence 0xd87 on interface fxp2.3 Sep 15 18:32:21 Updating LSP isis5.00-00 in database Sep 15 18:32:21 Updating L1 LSP isis5.00-00 in TED Sep 15 18:32:21 Sending L2 LSP isis5.02-00 on interface fxp2.3 Sep 15 18:32:21 sequence 0xd87, checksum 0xc1c8, lifetime 1200
停止跟踪文件监控
操作
要以近乎实时的方式停止监控跟踪文件,请在开始监控后使用以下 Junos OS CLI 操作模式命令:
user@host monitor stop filename
示例输出
user@host> monitor start isis user@host> *** isis *** Sep 15 18:32:21 Updating LSP isis5.02-00 in database Sep 15 18:32:21 Updating L2 LSP isis5.02-00 in TED Sep 15 18:32:21 Adding a half link from isis5.02 to isis6.00 Sep 15 18:32:21 Adding a half link from isis5.02 to isis5.00 Sep 15 18:32:21 Adding a half link from isis5.02 to isis6.00 Sep 15 18:32:21 Adding a half link from isis5.02 to isis5.00 Sep 15 18:32:21 Scheduling L2 LSP isis5.02-00 sequence 0xd87 on interface fxp2.3 Sep 15 18:32:21 Updating LSP isis5.00-00 in database Sep 15 18:32:21 Updating L1 LSP isis5.00-00 in TED Sep 15 18:32:21 Sending L2 LSP isis5.02-00 on interface fxp2.3 Sep 15 18:32:21 sequence 0xd87, checksum 0xc1c8, lifetime 1200 monitor stop isis user@host>