oclaw/docs/ip-knowledge-base/zte/06_标准SOP与工具脚本/命令探索方法论.md
2026-07-29 10:22:01 +08:00

169 lines
4.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 命令探索方法论:使用 `?` 在线帮助
## 核心价值
在网络运维中,通过设备内置的 `?` 帮助系统逐层探索命令,比记忆命令更可靠。
**适用场景**:
- 文档过时或版本不匹配
- 记不清完整命令路径
- 不同厂商命令差异
- 特定模式下可用命令
---
## 五步探索法
### Step 1: 定方向 - 从顶层开始
```bash
MER1#show ?
```
列出所有 `show` 开头的命令类别。
### Step 2: 剥洋葱 - 逐层深入
```bash
MER1#show bgp ? # BGP相关地址族
MER1#show bgp vpnv4 ? # VPNv4的单播/组播
MER1#show bgp vpnv4 unicast ? # 可用的操作符和参数
```
### Step 3: 看提示 - 理解元符号
关键输出中的特殊标记:
- `<cr>` - 可直接回车执行(命令已完整)
- `A.B.C.D` - IPv4地址占位符
- `X:X::X:X` - IPv6地址占位符
- `WORD` - 任意字符串(如VRF名、邻居IP)
- `<0-32>` - 数字范围
- `|` - 管道符,用于过滤输出
### Step 4: 试执行 - 验证命令
看到 `<cr>` 提示时,说明命令已完整:
```bash
MER1#show bgp vpnv4 unicast vrf test route
```
### Step 5: 记笔记 - 记录成功路径
将验证通过的命令记录下来,形成自己的知识库。
---
## 实战案例
### 案例1:BGP VPNv4路由查询
```bash
# 7层探索路径
show bgp ? # ipv4, vpnv4, evpn...
-> show bgp vpnv4 ? # unicast, multicast...
-> show bgp vpnv4 unicast ? # neighbor, network, rd, vrf...
-> show bgp vpnv4 unicast vrf ? # VRF实例名
-> show bgp vpnv4 unicast vrf test ? # detail, in, route...
-> show bgp vpnv4 unicast vrf test route # 执行
```
### 案例2:MPLS LDP邻居查询
```bash
show mpls ldp ? # backoff, bindings, discovery, neighbor...
-> show mpls ldp neighbor ? # brief, detail, instance...
-> show mpls ldp neighbor brief instance ? # <1-65535>
-> show mpls ldp neighbor brief instance 1 # 执行
```
### 案例3:VRF环境下的Ping
```bash
ping ? # A.B.C.D, vrf, mpls...
-> ping vrf ? # VRF实例名
-> ping vrf test ? # A.B.C.D, domain
-> ping vrf test 4.1.1.1 # 执行
```
---
## 高级技巧
### 技巧1:组合管道符过滤
```bash
show bgp vpnv4 unicast vrf test route | include 4.1.1
show bgp ipv4 unicast summary | begin Neighbor
```
### 技巧2:配置模式同样适用
```bash
MER1(config)#router bgp 100
MER1(config-bgp-router)#neighbor ?
MER1(config-bgp-router)#neighbor 10.26.63.152 ?
```
### 技巧3:识别命令缩写
```bash
sh ? # show的合法缩写
forw ? # forwarding的合法缩写
conf t # configure terminal的缩写
```
### 技巧4:区分错误类型
```bash
# Incomplete command - 命令不完整,继续用?探索
%Error 140305: Incomplete command.
# Unrecognized command - 走错路了,退回上一层
%Error: Unrecognized command.
```
---
## 常见命令树深度对比
| 功能 | ZTE (ZXROS) | 深度 |
|------|-------------|------|
| BGP VPNv4路由 | `show bgp vpnv4 unicast vrf <name> route` | 7层 |
| MPLS LDP邻居 | `show mpls ldp neighbor brief instance <id>` | 6层 |
| ISIS邻接 | `show isis adjacency` | 3层 |
| Ping VRF | `ping vrf <name> <ip>` | 4层 |
---
## 快速参考卡片
```bash
# 通用模板
<command> ? # 查看下一级
<command> <subcommand> ? # 继续深入
...
<full-command> <cr> # 执行
# 元符号速查
<cr> - 直接回车执行
WORD - 任意字符串
A.B.C.D - IPv4地址
X:X::X:X - IPv6地址
<1-65535> - 数字范围
| - 管道符(begin/include/exclude/count)
> - 重定向到文件
```
---
## 练习任务
用 `?` 方法探索以下命令:
1. 查看ISIS邻接关系
2. 查看OSPF邻居详细信息
3. 查看VRF IP_RAN的路由表
4. 查看MPLS标签绑定信息
5. 查看BGP从邻居10.26.63.152收到的路由
**参考答案**:
```bash
show isis adjacency
show ip ospf neighbor detail
show ip forwarding route vrf IP_RAN
show mpls ldp bindings
show bgp vpnv4 unicast vrf test received 10.26.63.152
```
---
**终极心法**:不要怕敲错,`?` 永远不会嘲笑你。每个网络专家都是从不停地敲 `?` 开始的。
**文档版本**:v2.0(精简版)
**最后更新**:2026-07-29