Files
reference/docs/huawei-devices.html
2025-10-26 11:49:49 +00:00

671 lines
73 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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.
<!doctype html>
<html lang="en" data-color-mode="dark">
<head>
<meta charset="utf-8">
<title>Huawei 网络设备备忘清单
&#x26; huawei-devices cheatsheet &#x26; Quick Reference</title>
<meta content="width=device-width, initial-scale=1" name="viewport">
<meta description="本清单提供了对 Huawei 网络设备的入门简要概述,以及 Huawei 网络设备常用命令示例
基本知识,为开发人员分享快速参考备忘单。">
<meta keywords="huawei-devices,reference,Quick,Reference,cheatsheet,cheat,sheet">
<meta name="author" content="jaywcjlove">
<meta name="license" content="MIT">
<meta name="funding" content="https://jaywcjlove.github.io/#/sponsor">
<meta rel="apple-touch-icon" href="../icons/touch-icon-iphone.png">
<meta rel="apple-touch-icon" sizes="152x152" href="../icons/touch-icon-ipad.png">
<meta rel="apple-touch-icon" sizes="180x180" href="../icons/touch-icon-iphone.png">
<meta rel="apple-touch-icon" sizes="167x167" href="../icons/touch-icon-ipad-retina.png">
<meta rel="apple-touch-icon" sizes="120x120" href="../icons/touch-icon-iphone-retina.png">
<link rel="icon" href="../icons/favicon.svg" type="image/svg+xml">
<link href="../style/style.css" rel="stylesheet">
<link href="../style/katex.css" rel="stylesheet">
</head>
<body><nav class="header-nav"><div class="max-container"><a href="../index.html" class="logo"><svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" height="1em" width="1em">
<path d="m21.66 10.44-.98 4.18c-.84 3.61-2.5 5.07-5.62 4.77-.5-.04-1.04-.13-1.62-.27l-1.68-.4c-4.17-.99-5.46-3.05-4.48-7.23l.98-4.19c.2-.85.44-1.59.74-2.2 1.17-2.42 3.16-3.07 6.5-2.28l1.67.39c4.19.98 5.47 3.05 4.49 7.23Z" fill="#c9d1d9"></path>
<path d="M15.06 19.39c-.62.42-1.4.77-2.35 1.08l-1.58.52c-3.97 1.28-6.06.21-7.35-3.76L2.5 13.28c-1.28-3.97-.22-6.07 3.75-7.35l1.58-.52c.41-.13.8-.24 1.17-.31-.3.61-.54 1.35-.74 2.2l-.98 4.19c-.98 4.18.31 6.24 4.48 7.23l1.68.4c.58.14 1.12.23 1.62.27Zm2.43-8.88c-.06 0-.12-.01-.19-.02l-4.85-1.23a.75.75 0 0 1 .37-1.45l4.85 1.23a.748.748 0 0 1-.18 1.47Z" fill="#228e6c"></path>
<path d="M14.56 13.89c-.06 0-.12-.01-.19-.02l-2.91-.74a.75.75 0 0 1 .37-1.45l2.91.74c.4.1.64.51.54.91-.08.34-.38.56-.72.56Z" fill="#228e6c"></path>
</svg>
<span class="title">Quick Reference</span></a><div class="menu"><a href="javascript:void(0);" class="searchbtn" id="searchbtn"><svg xmlns="http://www.w3.org/2000/svg" height="1em" width="1em" viewBox="0 0 18 18">
<path fill="currentColor" d="M17.71,16.29 L14.31,12.9 C15.4069846,11.5024547 16.0022094,9.77665502 16,8 C16,3.581722 12.418278,0 8,0 C3.581722,0 0,3.581722 0,8 C0,12.418278 3.581722,16 8,16 C9.77665502,16.0022094 11.5024547,15.4069846 12.9,14.31 L16.29,17.71 C16.4777666,17.8993127 16.7333625,18.0057983 17,18.0057983 C17.2666375,18.0057983 17.5222334,17.8993127 17.71,17.71 C17.8993127,17.5222334 18.0057983,17.2666375 18.0057983,17 C18.0057983,16.7333625 17.8993127,16.4777666 17.71,16.29 Z M2,8 C2,4.6862915 4.6862915,2 8,2 C11.3137085,2 14,4.6862915 14,8 C14,11.3137085 11.3137085,14 8,14 C4.6862915,14 2,11.3137085 2,8 Z"></path>
</svg><span>搜索</span><span>⌘K</span></a><a href="https://github.com/jaywcjlove/reference/blob/main/docs/huawei-devices.md" class="edit" target="__blank"><svg viewBox="0 0 36 36" fill="currentColor" height="1em" width="1em"><path d="m33 6.4-3.7-3.7a1.71 1.71 0 0 0-2.36 0L23.65 6H6a2 2 0 0 0-2 2v22a2 2 0 0 0 2 2h22a2 2 0 0 0 2-2V11.76l3-3a1.67 1.67 0 0 0 0-2.36ZM18.83 20.13l-4.19.93 1-4.15 9.55-9.57 3.23 3.23ZM29.5 9.43 26.27 6.2l1.85-1.85 3.23 3.23Z"></path><path fill="none" d="M0 0h36v36H0z"></path></svg><span>编辑</span></a><button id="darkMode" type="button"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="light" height="1em" width="1em">
<path d="M6.995 12c0 2.761 2.246 5.007 5.007 5.007s5.007-2.246 5.007-5.007-2.246-5.007-5.007-5.007S6.995 9.239 6.995 12zM11 19h2v3h-2zm0-17h2v3h-2zm-9 9h3v2H2zm17 0h3v2h-3zM5.637 19.778l-1.414-1.414 2.121-2.121 1.414 1.414zM16.242 6.344l2.122-2.122 1.414 1.414-2.122 2.122zM6.344 7.759 4.223 5.637l1.415-1.414 2.12 2.122zm13.434 10.605-1.414 1.414-2.122-2.122 1.414-1.414z"></path>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 24 24" class="dark" height="1em" width="1em">
<path d="M12 11.807A9.002 9.002 0 0 1 10.049 2a9.942 9.942 0 0 0-5.12 2.735c-3.905 3.905-3.905 10.237 0 14.142 3.906 3.906 10.237 3.905 14.143 0a9.946 9.946 0 0 0 2.735-5.119A9.003 9.003 0 0 1 12 11.807z"></path>
</svg>
</button><script src="../js/dark.js?v=1.11.1"></script><a href="https://github.com/jaywcjlove/reference" class="" target="__blank"><svg viewBox="0 0 16 16" fill="currentColor" height="1em" width="1em"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z"></path></svg></a></div></div></nav><div class="wrap h1body-exist max-container"><header class="wrap-header h1wrap"><h1 id="huawei-网络设备备忘清单"><svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" fill="currentColor" height="1em" width="1em">
<path d="M107.946667 838.4l57.173333 23.893333v-385.28l-103.68 250.026667c-17.493333 43.52 3.413333 93.44 46.506667 111.36z m832-157.866667L728.32 169.813333a85.888 85.888 0 0 0-77.226667-52.48c-11.093333 0-22.613333 1.706667-33.706666 6.4L302.933333 253.866667a85.290667 85.290667 0 0 0-46.08 110.933333l211.626667 510.72a85.248 85.248 0 0 0 110.933333 46.08l314.026667-130.133333a85.077333 85.077333 0 0 0 46.506667-110.933334zM336.213333 373.333333c-23.466667 0-42.666667-19.2-42.666666-42.666666s19.2-42.666667 42.666666-42.666667 42.666667 19.2 42.666667 42.666667-19.2 42.666667-42.666667 42.666666z m-85.333333 469.333334c0 46.933333 38.4 85.333333 85.333333 85.333333h61.866667l-147.2-355.84v270.506667z"></path>
</svg><a aria-hidden="true" tabindex="-1" href="#huawei-网络设备备忘清单"><span class="icon icon-link"></span></a>Huawei 网络设备备忘清单</h1><div class="wrap-body">
<p>本清单提供了对 Huawei 网络设备的入门简要概述,以及 Huawei 网络设备常用命令示例</p>
</div></header><div class="menu-tocs"><div class="menu-btn"><svg aria-hidden="true" fill="currentColor" height="1em" width="1em" viewBox="0 0 16 16" version="1.1" data-view-component="true">
<path fill-rule="evenodd" d="M2 4a1 1 0 100-2 1 1 0 000 2zm3.75-1.5a.75.75 0 000 1.5h8.5a.75.75 0 000-1.5h-8.5zm0 5a.75.75 0 000 1.5h8.5a.75.75 0 000-1.5h-8.5zm0 5a.75.75 0 000 1.5h8.5a.75.75 0 000-1.5h-8.5zM3 8a1 1 0 11-2 0 1 1 0 012 0zm-1 6a1 1 0 100-2 1 1 0 000 2z"></path>
</svg></div><div class="menu-modal"><a aria-hidden="true" class="leve2 tocs-link" data-num="2" href="#基本知识">基本知识</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#vrp">VRP</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#视图">视图</a><a aria-hidden="true" class="leve2 tocs-link" data-num="2" href="#基本操作">基本操作</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#系统信息">系统信息</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#查看信息">查看信息</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#重命名设备">重命名设备</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#切换语言">切换语言</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#设置标题">设置标题</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#取消调试信息">取消调试信息</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#撤销操作">撤销操作</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#恢复出厂设置">恢复出厂设置</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#历史命令">历史命令</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#显示历史命令">显示历史命令</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#设置系统时钟">设置系统时钟</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#mac-地址">mac 地址</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#退出">退出</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#保存配置">保存配置</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#重启">重启</a><a aria-hidden="true" class="leve2 tocs-link" data-num="2" href="#登录管理">登录管理</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#stelnet-方式">STelnet 方式</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#aaa-登录">AAA 登录</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#命令级别">命令级别</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#console-接口登录">Console 接口登录</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#永不超时">永不超时</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#密码认证">密码认证</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#aaa认证">AAA认证</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#telnet-方式">Telnet 方式</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#password-登录">password 登录</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#aaa-登录-1">AAA 登录</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#远程-ip">远程 IP</a><a aria-hidden="true" class="leve2 tocs-link" data-num="2" href="#接口配置">接口配置</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#接口组">接口组</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#接口模式">接口模式</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#接口带宽">接口带宽</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#接口双工模式">接口双工模式</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#配置-trunk">配置 trunk</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#vlan-配置">vlan 配置</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#查看-vlan">查看 vlan</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#创建-vlan">创建 vlan</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#分配-vlan">分配 vlan</a><a aria-hidden="true" class="leve2 tocs-link" data-num="2" href="#交换机配置">交换机配置</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#stp-spanning-tree-protocol">STP (Spanning Tree Protocol)</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#链路聚合">链路聚合</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#rstprapid-spanning-tree-protocol">RSTPRapid Spanning Tree Protocol</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#dhcpdynamic-host-configuration-protocol">DHCPDynamic Host Configuration Protocol</a><a aria-hidden="true" class="leve2 tocs-link" data-num="2" href="#路由配置">路由配置</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#查看路由">查看路由</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#vrrp-virtual-router-redundancy-protocol">VRRP (Virtual Router Redundancy Protocol)</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#单臂路由">单臂路由</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#静态路由">静态路由</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#默认路由">默认路由</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#浮动路由">浮动路由</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#ospf">OSPF</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#单域">单域</a><a aria-hidden="true" class="leve4 tocs-link" data-num="4" href="#多域">多域</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#动态路由-rip">动态路由 RIP</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#路由重分发">路由重分发</a><a aria-hidden="true" class="leve2 tocs-link" data-num="2" href="#网络安全">网络安全</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#接口安全">接口安全</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#访问控制列表access-control-list">访问控制列表Access Control List</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#基本访问控制列表">基本访问控制列表</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#高级访问控制列表">高级访问控制列表</a></div></div><div class="h1wrap-body"><div class="wrap h2body-exist"><div class="wrap-header h2wrap"><h2 id="基本知识"><a aria-hidden="true" tabindex="-1" href="#基本知识"><span class="icon icon-link"></span></a>基本知识</h2><div class="wrap-body">
</div></div><div class="h2wrap-body"><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="vrp"><a aria-hidden="true" tabindex="-1" href="#vrp"><span class="icon icon-link"></span></a>VRP</h3><div class="wrap-body">
<ul>
<li>华为数据通信产品的通用网络操作平台,可用于设备管理和配置</li>
<li>支持命令简写,输入命令时可通过提示获取完整写法</li>
<li>例如:<code>undo in en</code> 取消系统信息显示,完整命令为 <code>undo info-center enable</code></li>
<li>如果简写存在歧义,则需要输入更完整的命令</li>
</ul>
</div></div></div><div class="wrap h3body-not-exist col-span-2"><div class="wrap-header h3wrap"><h3 id="视图"><a aria-hidden="true" tabindex="-1" href="#视图"><span class="icon icon-link"></span></a>视图</h3><div class="wrap-body">
<!--rehype:wrap-class=col-span-2-->
<p>视图View是指命令行界面CLI的操作层级不同视图可执行不同范围的命令。</p>
<table class="show-header"><thead><tr><th align="center">视图</th><th align="left">进入方式</th><th align="left">说明</th></tr></thead><tbody><tr><td align="center">用户视图</td><td align="left">登录设备后默认进入</td><td align="left">可执行监控、查看信息等命令(如 <code>display version</code></td></tr><tr><td align="center">系统视图</td><td align="left"><code>system-view</code></td><td align="left">可执行全局配置命令</td></tr><tr><td align="center">接口视图</td><td align="left"><code>interface 接口名</code>(如 <code>interface GigabitEthernet0/0/1</code></td><td align="left">用于配置接口相关参数IP、速率、VLAN等</td></tr><tr><td align="center">ACL 视图</td><td align="left"><code>acl 编号</code>(如 <code>acl 3000</code></td><td align="left">用于定义访问控制规则</td></tr><tr><td align="center">VLAN 视图</td><td align="left"><code>vlan VLAN_ID</code>(如 <code>vlan 10</code></td><td align="left">用于创建、修改或删除 VLAN</td></tr><tr><td align="center">OSPF 视图</td><td align="left"><code>ospf 进程号</code>(如 <code>ospf 1</code></td><td align="left">用于配置 OSPF 动态路由</td></tr><tr><td align="center">AAA 视图</td><td align="left"><code>aaa</code></td><td align="left">用于配置认证、授权与计费</td></tr></tbody></table>
<!--rehype:className=show-header-->
<hr>
<pre class="language-txt"><code class="language-txt code-highlight"><span class="code-line">用户视图
</span><span class="code-line"> └── system-view (系统视图)
</span><span class="code-line"> ├── interface GigabitEthernet0/0/1 (接口视图)
</span><span class="code-line"> ├── vlan 10 VLAN视图
</span><span class="code-line"> ├── acl 3000 ACL视图
</span><span class="code-line"> ├── ospf 1 OSPF视图
</span><span class="code-line"> └── aaa AAA视图
</span></code></pre>
</div></div></div></div></div><div class="wrap h2body-exist"><div class="wrap-header h2wrap"><h2 id="基本操作"><a aria-hidden="true" tabindex="-1" href="#基本操作"><span class="icon icon-link"></span></a>基本操作</h2><div class="wrap-body">
</div></div><div class="h2wrap-body"><div class="wrap h3body-exist row-span-3"><div class="wrap-header h3wrap"><h3 id="系统信息"><a aria-hidden="true" tabindex="-1" href="#系统信息"><span class="icon icon-link"></span></a>系统信息</h3><div class="wrap-body">
<!--rehype:wrap-class=row-span-3-->
<h4 id="查看信息"><a aria-hidden="true" tabindex="-1" href="#查看信息"><span class="icon icon-link"></span></a>查看信息</h4>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line">display version <span class="token comment"># 查看版本信息</span>
</span><span class="code-line">display current-configuration <span class="token comment"># 查看当前配置</span>
</span><span class="code-line">display mac-address <span class="token comment"># 查看 mac 地址</span>
</span></code></pre>
<h4 id="重命名设备"><a aria-hidden="true" tabindex="-1" href="#重命名设备"><span class="icon icon-link"></span></a>重命名设备</h4>
<p>在系统视图下:<code>sysname RENAME</code></p>
<h4 id="切换语言"><a aria-hidden="true" tabindex="-1" href="#切换语言"><span class="icon icon-link"></span></a>切换语言</h4>
<pre class="language-sh"><code class="language-sh code-highlight"><span class="code-line"><span class="token comment"># 用户视图下</span>
</span><span class="code-line">language-mode <span class="token punctuation">[</span>English, Chinese<span class="token punctuation">]</span>
</span></code></pre>
<h4 id="设置标题"><a aria-hidden="true" tabindex="-1" href="#设置标题"><span class="icon icon-link"></span></a>设置标题</h4>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line">header login information 信息 <span class="token comment"># 载入时信息</span>
</span><span class="code-line">header shell information 信息 <span class="token comment"># 远程时信息</span>
</span></code></pre>
<h4 id="取消调试信息"><a aria-hidden="true" tabindex="-1" href="#取消调试信息"><span class="icon icon-link"></span></a>取消调试信息</h4>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line">undo terminal monitor
</span></code></pre>
<p> </p>
</div></div></div><div class="wrap h3body-exist row-span-2"><div class="wrap-header h3wrap"><h3 id="撤销操作"><a aria-hidden="true" tabindex="-1" href="#撤销操作"><span class="icon icon-link"></span></a>撤销操作</h3><div class="wrap-body">
<!--rehype:wrap-class=row-span-2-->
<ul>
<li>可用于恢复默认配置</li>
<li>可用于禁用某些功能</li>
<li>可用于删除某些配置</li>
</ul>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token comment"># 恢复默认名称</span>
</span><span class="code-line">undo sysname
</span><span class="code-line"><span class="token comment"># 禁用信息显示</span>
</span><span class="code-line">undo <span class="token keyword">in</span> en
</span><span class="code-line"><span class="token comment"># 删除接口配置</span>
</span><span class="code-line">undo <span class="token function">ip</span> address
</span></code></pre>
<h4 id="恢复出厂设置"><a aria-hidden="true" tabindex="-1" href="#恢复出厂设置"><span class="icon icon-link"></span></a>恢复出厂设置</h4>
<p><code>reset saved-configuration</code></p>
</div></div></div><div class="wrap h3body-exist row-span-1"><div class="wrap-header h3wrap"><h3 id="历史命令"><a aria-hidden="true" tabindex="-1" href="#历史命令"><span class="icon icon-link"></span></a>历史命令</h3><div class="wrap-body">
<!--rehype:wrap-class=row-span-1-->
<p>使用上箭头或 ctrl+p 可访问上一命令</p>
<p>使用下箭头或 ctrl+n 可访问下一命令</p>
<p>默认保存10条命令</p>
<h4 id="显示历史命令"><a aria-hidden="true" tabindex="-1" href="#显示历史命令"><span class="icon icon-link"></span></a>显示历史命令</h4>
<p><code>display history-command</code></p>
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="设置系统时钟"><a aria-hidden="true" tabindex="-1" href="#设置系统时钟"><span class="icon icon-link"></span></a>设置系统时钟</h3><div class="wrap-body">
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token comment"># 在用户视图下</span>
</span><span class="code-line"><span class="token comment"># 为保证与其他设备协调工作需要配置系统时钟</span>
</span><span class="code-line">clock datetime <span class="token number">12</span>:00:00 <span class="token number">2020</span>-02-02 <span class="token comment"># 时间</span>
</span><span class="code-line">clock timezone BJ <span class="token function">add</span> 08:00:00 <span class="token comment"># 时区</span>
</span></code></pre>
</div></div></div><div class="wrap h3body-not-exist col-span-2"><div class="wrap-header h3wrap"><h3 id="mac-地址"><a aria-hidden="true" tabindex="-1" href="#mac-地址"><span class="icon icon-link"></span></a>mac 地址</h3><div class="wrap-body">
<!--rehype:wrap-class=col-span-2-->
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token comment"># 添加 mac 地址</span>
</span><span class="code-line"><span class="token comment"># MAC-Address mac 地址</span>
</span><span class="code-line"><span class="token comment"># e0/0/0 自定义接口</span>
</span><span class="code-line"><span class="token comment"># VlanID 自定义 vlanid</span>
</span><span class="code-line">mac-address static MAC-Address e0/0/0 vlan VlanID
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 清除</span>
</span><span class="code-line">reset arp all
</span></code></pre>
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="退出"><a aria-hidden="true" tabindex="-1" href="#退出"><span class="icon icon-link"></span></a>退出</h3><div class="wrap-body">
<p><code>quit</code> 命令用于从任意视图退回上一个视图</p>
<p><code>return</code> 这是立刻退回至用户视图</p>
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="保存配置"><a aria-hidden="true" tabindex="-1" href="#保存配置"><span class="icon icon-link"></span></a>保存配置</h3><div class="wrap-body">
<p><code>save</code></p>
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="重启"><a aria-hidden="true" tabindex="-1" href="#重启"><span class="icon icon-link"></span></a>重启</h3><div class="wrap-body">
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token function">reboot</span>
</span></code></pre>
</div></div></div></div></div><div class="wrap h2body-exist"><div class="wrap-header h2wrap"><h2 id="登录管理"><a aria-hidden="true" tabindex="-1" href="#登录管理"><span class="icon icon-link"></span></a>登录管理</h2><div class="wrap-body">
</div></div><div class="h2wrap-body"><div class="wrap h3body-exist col-span-2 row-span-3"><div class="wrap-header h3wrap"><h3 id="stelnet-方式"><a aria-hidden="true" tabindex="-1" href="#stelnet-方式"><span class="icon icon-link"></span></a>STelnet 方式</h3><div class="wrap-body">
<!--rehype:wrap-class=col-span-2 row-span-3-->
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token comment"># 开启 ssh 服务</span>
</span><span class="code-line">stelnet server <span class="token builtin class-name">enable</span>
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 配置远程管理ip</span>
</span><span class="code-line">int vlanif <span class="token number">1</span>
</span><span class="code-line"><span class="token function">ip</span> <span class="token function">add</span> <span class="token number">192.168</span>.1.254 <span class="token number">24</span>
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 生成本地 rsa 秘钥对</span>
</span><span class="code-line">rsa local-key-pair create
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># ssh 首次认证</span>
</span><span class="code-line"><span class="token function">ssh</span> cl <span class="token keyword">fi</span> en
</span><span class="code-line"><span class="token comment"># ssh 用户验证类型 password</span>
</span><span class="code-line"><span class="token function">ssh</span> user admin authentication-type password
</span><span class="code-line"><span class="token comment"># ssh 用户服务类型 stelnet</span>
</span><span class="code-line"><span class="token function">ssh</span> user admin service-type stelnet
</span></code></pre>
<h4 id="aaa-登录"><a aria-hidden="true" tabindex="-1" href="#aaa-登录"><span class="icon icon-link"></span></a>AAA 登录</h4>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line">aaa
</span><span class="code-line"><span class="token comment"># 本地用户 admin 密码密文 123456 等级 2</span>
</span><span class="code-line">local-user admin password cipher <span class="token number">123456</span> privilege level <span class="token number">2</span>
</span><span class="code-line"><span class="token comment"># 本地用户 admin 登录方式 ssh</span>
</span><span class="code-line">local-user admin service-type <span class="token function">ssh</span>
</span><span class="code-line">quit
</span><span class="code-line">user-interface vty <span class="token number">0</span> <span class="token number">4</span>
</span><span class="code-line">authentication-mode aaa <span class="token comment"># 认证模式 aaa</span>
</span><span class="code-line">protocol inbound <span class="token function">ssh</span> <span class="token comment"># 仅支持 ssh 协议</span>
</span><span class="code-line">quit
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># ssh用户端首次认证</span>
</span><span class="code-line"><span class="token function">ssh</span> client first-time <span class="token builtin class-name">enable</span>
</span></code></pre>
<h4 id="命令级别"><a aria-hidden="true" tabindex="-1" href="#命令级别"><span class="icon icon-link"></span></a>命令级别</h4>
<ul>
<li>0 参观级 只能进行如诊断工具命令pingtracert部分 display 命令</li>
<li>1 监控级 主要用于系统维护业务故障诊断包括部分displaydebugging命令</li>
<li>2 配置级 主要用于业务配置,包括路由,各个网络层次命令,可向用户提供直接网络服务</li>
<li>3 - 15 为管理级,涉及系统基本运行,系统支撑模块等</li>
</ul>
</div></div></div><div class="wrap h3body-exist"><div class="wrap-header h3wrap"><h3 id="console-接口登录"><a aria-hidden="true" tabindex="-1" href="#console-接口登录"><span class="icon icon-link"></span></a>Console 接口登录</h3><div class="wrap-body">
<h4 id="永不超时"><a aria-hidden="true" tabindex="-1" href="#永不超时"><span class="icon icon-link"></span></a>永不超时</h4>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line">user-interface console <span class="token number">0</span> <span class="token comment"># 进入 console 接口</span>
</span><span class="code-line">idle-timeout <span class="token number">0</span> <span class="token comment"># 超时时间为 0 即 永不超时</span>
</span></code></pre>
<h4 id="密码认证"><a aria-hidden="true" tabindex="-1" href="#密码认证"><span class="icon icon-link"></span></a>密码认证</h4>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line">user-interface console <span class="token number">0</span>
</span><span class="code-line">authentication-mode password <span class="token comment"># 验证模式 密码认证</span>
</span><span class="code-line"><span class="token builtin class-name">set</span> authentication password simple <span class="token number">123456</span> <span class="token comment"># 设置验证密码 简单密码 123456</span>
</span></code></pre>
<h4 id="aaa认证"><a aria-hidden="true" tabindex="-1" href="#aaa认证"><span class="icon icon-link"></span></a>AAA认证</h4>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line">user-interface console <span class="token number">0</span>
</span><span class="code-line">authentication-mode aaa <span class="token comment"># 验证模式 AAA认证</span>
</span><span class="code-line">quit
</span><span class="code-line">aaa <span class="token comment"># 进入 aaa 模式</span>
</span><span class="code-line">local-user admin password simple <span class="token number">123456</span> <span class="token comment"># 本地用户 admin 密码 简单密码 123456</span>
</span><span class="code-line">local-user admin password cipher <span class="token number">123456</span> <span class="token comment"># 本地用户 admin 密码 密文密码 123456</span>
</span><span class="code-line">local-user admin service-type terminal <span class="token comment"># 本地用户 admin 服务类型 终端</span>
</span></code></pre>
</div></div></div><div class="wrap h3body-exist"><div class="wrap-header h3wrap"><h3 id="telnet-方式"><a aria-hidden="true" tabindex="-1" href="#telnet-方式"><span class="icon icon-link"></span></a>Telnet 方式</h3><div class="wrap-body">
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token comment"># 开启 Telnet</span>
</span><span class="code-line">telnet server <span class="token builtin class-name">enable</span>
</span></code></pre>
<h4 id="password-登录"><a aria-hidden="true" tabindex="-1" href="#password-登录"><span class="icon icon-link"></span></a>password 登录</h4>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line">user-interface vty <span class="token number">0</span> <span class="token number">4</span>
</span><span class="code-line">authentication-mode password <span class="token comment"># 认证模式 password</span>
</span><span class="code-line"><span class="token builtin class-name">set</span> authentication password simple <span class="token number">123456</span> <span class="token comment"># 设置 认证 密码 简单密码 123456</span>
</span><span class="code-line">user privilege level <span class="token number">2</span> <span class="token comment"># 用户等级 2</span>
</span><span class="code-line">idle-timeout <span class="token number">15</span> <span class="token comment"># 断连时间 15 分</span>
</span></code></pre>
<h4 id="aaa-登录-1"><a aria-hidden="true" tabindex="-1" href="#aaa-登录-1"><span class="icon icon-link"></span></a>AAA 登录</h4>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line">aaa
</span><span class="code-line"><span class="token comment"># 本地用户 admin 密码密文 123456 等级 2</span>
</span><span class="code-line">local-user admin password cipher <span class="token number">123456</span> privilege level <span class="token number">2</span>
</span><span class="code-line"><span class="token comment"># 本地用户 admin 登录方式 telnet</span>
</span><span class="code-line">local-user admin service-type telnet
</span><span class="code-line">quit
</span><span class="code-line">user-interface vty <span class="token number">0</span> <span class="token number">4</span>
</span><span class="code-line">authentication-mode aaa <span class="token comment"># 认证模式 aaa</span>
</span><span class="code-line">quit
</span></code></pre>
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="远程-ip"><a aria-hidden="true" tabindex="-1" href="#远程-ip"><span class="icon icon-link"></span></a>远程 IP</h3><div class="wrap-body">
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token comment"># 远程管理 ip</span>
</span><span class="code-line">int vlanif <span class="token number">1</span>
</span><span class="code-line"><span class="token function">ip</span> <span class="token function">add</span> <span class="token number">192.168</span>.1.254 <span class="token number">24</span>
</span><span class="code-line"><span class="token comment"># pc</span>
</span><span class="code-line"><span class="token number">192.168</span>.1.1 <span class="token number">24</span>
</span></code></pre>
</div></div></div></div></div><div class="wrap h2body-exist"><div class="wrap-header h2wrap"><h2 id="接口配置"><a aria-hidden="true" tabindex="-1" href="#接口配置"><span class="icon icon-link"></span></a>接口配置</h2><div class="wrap-body">
</div></div><div class="h2wrap-body"><div class="wrap h3body-exist col-span-2"><div class="wrap-header h3wrap"><h3 id="接口组"><a aria-hidden="true" tabindex="-1" href="#接口组"><span class="icon icon-link"></span></a>接口组</h3><div class="wrap-body">
<!--rehype:wrap-class=col-span-2-->
<pre class="language-sh"><code class="language-sh code-highlight"><span class="code-line"><span class="token comment"># 组内配置会自动为组成员配置</span>
</span><span class="code-line">port-group <span class="token number">1</span> <span class="token comment"># 创建接口组 1</span>
</span><span class="code-line">group-member e0/0/2 to e0/0/8 <span class="token comment"># 划分组成员为 e0/0/2 - e0/0/8 即 2,3,4,5,6,7,8 接口</span>
</span></code></pre>
<h4 id="接口模式"><a aria-hidden="true" tabindex="-1" href="#接口模式"><span class="icon icon-link"></span></a>接口模式</h4>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token comment"># access 普通模式 只能在某个 vlan 中通信</span>
</span><span class="code-line"><span class="token comment"># trunk 中继器模式 可在任意 vlan 中通信</span>
</span><span class="code-line">int e0/0/1
</span><span class="code-line">port link-type access <span class="token comment"># 接口模式为 access</span>
</span><span class="code-line">port link-type trunk <span class="token comment"># 接口模式为 trunk</span>
</span></code></pre>
<h4 id="接口带宽"><a aria-hidden="true" tabindex="-1" href="#接口带宽"><span class="icon icon-link"></span></a>接口带宽</h4>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token comment"># 接口每秒传输数据量</span>
</span><span class="code-line">int e0/0/1
</span><span class="code-line"><span class="token comment"># 10Mbit/s</span>
</span><span class="code-line"><span class="token comment"># 100Mbit/s</span>
</span><span class="code-line"><span class="token comment"># Auto 自协商</span>
</span><span class="code-line">speed <span class="token number">10</span> <span class="token operator">|</span> <span class="token number">100</span> <span class="token operator">|</span> Auto
</span><span class="code-line"><span class="token comment"># 关闭自协商</span>
</span><span class="code-line"><span class="token comment"># 先关闭自协商再手动指定接口速率</span>
</span><span class="code-line">undo negotiation auto
</span></code></pre>
<h4 id="接口双工模式"><a aria-hidden="true" tabindex="-1" href="#接口双工模式"><span class="icon icon-link"></span></a>接口双工模式</h4>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token comment"># 接口协商模式不一致会导致异常</span>
</span><span class="code-line">int e0/0/1
</span><span class="code-line"><span class="token comment"># full 全双工 同时收发数据</span>
</span><span class="code-line"><span class="token comment"># half 半双工 同时只能接收或发送数据一个操作</span>
</span><span class="code-line">duplex full <span class="token operator">|</span> half
</span><span class="code-line"><span class="token comment"># 先关闭自协商再手动指定</span>
</span></code></pre>
<h4 id="配置-trunk"><a aria-hidden="true" tabindex="-1" href="#配置-trunk"><span class="icon icon-link"></span></a>配置 trunk</h4>
<pre class="language-sh"><code class="language-sh code-highlight"><span class="code-line">interface g0/0/1 <span class="token comment"># 进入接口</span>
</span><span class="code-line">port link-type trunk <span class="token comment"># 接口模式为 trunk</span>
</span></code></pre>
<p><code>all</code> 为通过所有 <code>vlan</code>, VlanId 为指定 vlan多个vlan以空格隔开</p>
<pre class="language-sh"><code class="language-sh code-highlight"><span class="code-line">port trunk allow-pass vlan VlanId <span class="token operator">|</span> all
</span></code></pre>
</div></div></div><div class="wrap h3body-exist"><div class="wrap-header h3wrap"><h3 id="vlan-配置"><a aria-hidden="true" tabindex="-1" href="#vlan-配置"><span class="icon icon-link"></span></a>vlan 配置</h3><div class="wrap-body">
<h4 id="查看-vlan"><a aria-hidden="true" tabindex="-1" href="#查看-vlan"><span class="icon icon-link"></span></a>查看 vlan</h4>
<p><code>display vlan</code></p>
<h4 id="创建-vlan"><a aria-hidden="true" tabindex="-1" href="#创建-vlan"><span class="icon icon-link"></span></a>创建 vlan</h4>
<pre class="language-sh"><code class="language-sh code-highlight"><span class="code-line"><span class="token comment"># VlanId 自定义vlanid 1 ~ 4094</span>
</span><span class="code-line">vlan VlanId
</span><span class="code-line"><span class="token comment"># VLANNAME 自定义的 vlan 名称</span>
</span><span class="code-line">description VLANNAME
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 删除vlan</span>
</span><span class="code-line">undo vlan VlanId
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 创建 10,20,30 vlan</span>
</span><span class="code-line">vlan batch <span class="token number">10</span> <span class="token number">20</span> <span class="token number">30</span>
</span><span class="code-line"><span class="token comment"># 创建 10 ~ 30 vlan</span>
</span><span class="code-line">vlan batch <span class="token number">10</span> to <span class="token number">30</span>
</span></code></pre>
<h4 id="分配-vlan"><a aria-hidden="true" tabindex="-1" href="#分配-vlan"><span class="icon icon-link"></span></a>分配 vlan</h4>
<pre class="language-sh"><code class="language-sh code-highlight"><span class="code-line"><span class="token comment"># 进入接口</span>
</span><span class="code-line">interface E0/0/1
</span><span class="code-line"><span class="token comment"># 接口模式设为 access</span>
</span><span class="code-line">port link-type access
</span><span class="code-line"><span class="token comment"># 划分到 vlan 10 中</span>
</span><span class="code-line">port default vlan <span class="token number">10</span>
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 创建接口组 1</span>
</span><span class="code-line">port-group <span class="token number">1</span>
</span><span class="code-line"><span class="token comment"># 组成员为 e0/0/5 - e0/0/8 .... 5,6,7,8</span>
</span><span class="code-line">group-member e0/0/5 to e0/0/8
</span><span class="code-line"><span class="token comment"># 组成员接口模式设为 access</span>
</span><span class="code-line">port link-type access
</span><span class="code-line"><span class="token comment"># 组成员划分到 vlan 10 中</span>
</span><span class="code-line">port default vlan <span class="token number">10</span>
</span></code></pre>
</div></div></div></div></div><div class="wrap h2body-exist"><div class="wrap-header h2wrap"><h2 id="交换机配置"><a aria-hidden="true" tabindex="-1" href="#交换机配置"><span class="icon icon-link"></span></a>交换机配置</h2><div class="wrap-body">
</div></div><div class="h2wrap-body"><div class="wrap h3body-not-exist col-span-2 row-span-2"><div class="wrap-header h3wrap"><h3 id="stp-spanning-tree-protocol"><a aria-hidden="true" tabindex="-1" href="#stp-spanning-tree-protocol"><span class="icon icon-link"></span></a>STP (Spanning Tree Protocol)</h3><div class="wrap-body">
<!--rehype:wrap-class=col-span-2 row-span-2-->
<p>即生成树协议</p>
<p>可将有环路的物理拓扑变为无环路的逻辑拓扑,从而为网络提供安全机制,使得冗余拓扑中不会产生交换环路问题</p>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token comment"># 三层交换机</span>
</span><span class="code-line"><span class="token comment"># 首先需要创建 vlan</span>
</span><span class="code-line"><span class="token comment"># 划分接口给 vlan</span>
</span><span class="code-line"><span class="token comment"># 所有与其他交换机相连接口需要做 trunk 放通划分 vlan</span>
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 二层交换机</span>
</span><span class="code-line"><span class="token comment"># 建立 vlan</span>
</span><span class="code-line"><span class="token comment"># 客户机接口划分默认 vlan</span>
</span><span class="code-line"><span class="token comment"># 与三层交换机相连接口做 trunk 放通 vlan</span>
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 开启 STP</span>
</span><span class="code-line"><span class="token comment"># 系统视图下</span>
</span><span class="code-line"><span class="token comment"># 交换机都要配置</span>
</span><span class="code-line"><span class="token comment"># stp 开启</span>
</span><span class="code-line">stp <span class="token builtin class-name">enable</span>
</span><span class="code-line"><span class="token comment"># stp 模式 stp</span>
</span><span class="code-line">stp mode stp
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># # 指定根交换机</span>
</span><span class="code-line"><span class="token comment"># 配置优先级</span>
</span><span class="code-line"><span class="token comment"># 系统视图下</span>
</span><span class="code-line"><span class="token comment"># 优先级为 0</span>
</span><span class="code-line"><span class="token comment"># 优先级值在 0 ~ 65535 默认 32768</span>
</span><span class="code-line"><span class="token comment"># 要求设为 4096 倍数</span>
</span><span class="code-line">stp priority <span class="token number">0</span>
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 使用命令</span>
</span><span class="code-line"><span class="token comment"># 系统视图下</span>
</span><span class="code-line"><span class="token comment"># 需要先删除配置优先级</span>
</span><span class="code-line"><span class="token comment"># 根交换机</span>
</span><span class="code-line">stp root primary
</span><span class="code-line"><span class="token comment"># 备用根交换机</span>
</span><span class="code-line">stp root secondary
</span></code></pre>
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="链路聚合"><a aria-hidden="true" tabindex="-1" href="#链路聚合"><span class="icon icon-link"></span></a>链路聚合</h3><div class="wrap-body">
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token comment"># 创建 id 为 1 的 eth-trunk 聚合接口</span>
</span><span class="code-line">interface eth-trunk <span class="token number">1</span>
</span><span class="code-line">quit
</span><span class="code-line">interface g0/0/1
</span><span class="code-line">eth-trunk <span class="token number">1</span> <span class="token comment"># 加入 g/0/01 到 eth-trunk 1 中</span>
</span><span class="code-line"><span class="token comment"># 添加完毕成员后</span>
</span><span class="code-line"><span class="token comment"># eth-trunk 接口下</span>
</span><span class="code-line"><span class="token comment"># 设置接口链路类型为 trunk</span>
</span><span class="code-line">port link-type trunk
</span></code></pre>
<p>在聚合接口下添加成员</p>
<pre class="language-sh"><code class="language-sh code-highlight"><span class="code-line">trunkport g0/0/1
</span><span class="code-line">trunkport g0/0/1 to g0/0/2
</span><span class="code-line"><span class="token comment"># 删除用 undo</span>
</span></code></pre>
<p><code>接口汇聚</code>是将交换机间的多条物理链路合并为一条逻辑链路,以提升带宽并实现链路冗余备份。</p>
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="rstprapid-spanning-tree-protocol"><a aria-hidden="true" tabindex="-1" href="#rstprapid-spanning-tree-protocol"><span class="icon icon-link"></span></a>RSTPRapid Spanning Tree Protocol</h3><div class="wrap-body">
<ul>
<li>RSTP快速生成树协议是对 STP 的改进版</li>
<li>当网络故障发生时STP 的拓扑结构需要较长时间收敛,而 RSTP 可在 1 秒内完成</li>
<li>配置方式与 STP 基本一致</li>
</ul>
<p>不同点:</p>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token comment"># 系统视图下</span>
</span><span class="code-line">stp <span class="token builtin class-name">enable</span>
</span><span class="code-line"><span class="token comment"># stp mode stp 变更</span>
</span><span class="code-line">stp mode rstp
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 配置边缘接口</span>
</span><span class="code-line"><span class="token comment"># 接口视图下</span>
</span><span class="code-line"><span class="token comment"># 将该接口设置为边缘接口</span>
</span><span class="code-line"><span class="token comment"># 节省接口从初始启动到转发状态的时间间隔</span>
</span><span class="code-line"><span class="token comment"># 默认不参与生成树计算</span>
</span><span class="code-line"><span class="token comment"># 不经历转发延迟</span>
</span><span class="code-line"><span class="token comment"># 关闭或激活不触发 RSTP 拓扑变更</span>
</span><span class="code-line"><span class="token comment"># 通常将与终端设备连接的接口设置</span>
</span><span class="code-line">stp edged-port <span class="token builtin class-name">enable</span>
</span></code></pre>
</div></div></div><div class="wrap h3body-not-exist col-span-2"><div class="wrap-header h3wrap"><h3 id="dhcpdynamic-host-configuration-protocol"><a aria-hidden="true" tabindex="-1" href="#dhcpdynamic-host-configuration-protocol"><span class="icon icon-link"></span></a>DHCPDynamic Host Configuration Protocol</h3><div class="wrap-body">
<!--rehype:wrap-class=col-span-2-->
<p>即动态主机配置协议</p>
<p>可有规划的划分 IP 地址,也可避免用户私设 IP 引起的地址冲突</p>
<p>三层交换机可充当 DHCP 服务器,能动态分配 IP 地址及 DNS 服务地址等网络参数</p>
<p>可以使得用户零配置上网</p>
<pre class="language-sh"><code class="language-sh code-highlight"><span class="code-line"><span class="token comment"># 二层交换机</span>
</span><span class="code-line"><span class="token comment"># 首先创建 vlan</span>
</span><span class="code-line"><span class="token comment"># 一个 vlan 代表一个地址池范围</span>
</span><span class="code-line"><span class="token comment"># 然后划分接口配置默认 vlan</span>
</span><span class="code-line"><span class="token comment"># 进入与三层交换机相连的接口做 trunk 并放通 vlan</span>
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># # 三层交换机</span>
</span><span class="code-line"><span class="token comment"># 创建 vlan</span>
</span><span class="code-line"><span class="token comment"># 进入与二层交换机相连的接口做 trunk 并放通 vlan</span>
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 开启 DHCP</span>
</span><span class="code-line"><span class="token comment"># 系统视图下</span>
</span><span class="code-line">dhcp <span class="token builtin class-name">enable</span>
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 系统视图下</span>
</span><span class="code-line"><span class="token comment"># 建立地址池 V10 V10 为自定义的合法地址池名称</span>
</span><span class="code-line"><span class="token function">ip</span> pool V10
</span><span class="code-line"><span class="token comment"># 发布网段 10.10.10</span>
</span><span class="code-line"><span class="token comment"># 掩码 255.0.0.0</span>
</span><span class="code-line">network <span class="token number">10.10</span>.10.0 mask <span class="token number">255.0</span>.0.0
</span><span class="code-line"><span class="token comment"># 配置网关</span>
</span><span class="code-line">gateway-list <span class="token number">10.10</span>.10.254
</span><span class="code-line"><span class="token comment"># 设置租期为 8 天</span>
</span><span class="code-line">lease <span class="token number">8</span>
</span><span class="code-line"><span class="token comment"># dns 服务器 5.5.5.5</span>
</span><span class="code-line">dns-list <span class="token number">5.5</span>.5.5
</span><span class="code-line"><span class="token comment"># 进入 vlan 视图</span>
</span><span class="code-line"><span class="token comment"># 为 vlan 配置对应的网关地址及掩码</span>
</span><span class="code-line"><span class="token comment"># 配置设备指定接口采取全局地址</span>
</span><span class="code-line"><span class="token comment"># vlan 视图下</span>
</span><span class="code-line"><span class="token comment"># dhcp 配置选择 全局配置</span>
</span><span class="code-line">dhcp <span class="token keyword">select</span> global
</span><span class="code-line"><span class="token comment"># dhcp 配置选择 接口配置</span>
</span><span class="code-line"><span class="token comment"># 接口配置与全局配置基本相同</span>
</span><span class="code-line"><span class="token comment"># 此 dhcp 配置在接口中</span>
</span><span class="code-line">dhcp <span class="token keyword">select</span> interface
</span><span class="code-line"><span class="token comment"># #</span>
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 保留地址</span>
</span><span class="code-line"><span class="token comment"># 保留了 5 - 15 这个范围的 IP 地址</span>
</span><span class="code-line">excluded-ip-address <span class="token number">10.10</span>.10.5 <span class="token number">10.10</span>.10.15
</span></code></pre>
</div></div></div></div></div><div class="wrap h2body-exist"><div class="wrap-header h2wrap"><h2 id="路由配置"><a aria-hidden="true" tabindex="-1" href="#路由配置"><span class="icon icon-link"></span></a>路由配置</h2><div class="wrap-body">
</div></div><div class="h2wrap-body"><div class="wrap h3body-not-exist col-span-3"><div class="wrap-header h3wrap"><h3 id="查看路由"><a aria-hidden="true" tabindex="-1" href="#查看路由"><span class="icon icon-link"></span></a>查看路由</h3><div class="wrap-body">
<!--rehype:wrap-class=col-span-3-->
<pre class="language-sh"><code class="language-sh code-highlight"><span class="code-line"><span class="token comment"># 查看路由表</span>
</span><span class="code-line">display <span class="token function">ip</span> routing-table
</span></code></pre>
</div></div></div><div class="wrap h3body-not-exist col-span-2 row-span-4"><div class="wrap-header h3wrap"><h3 id="vrrp-virtual-router-redundancy-protocol"><a aria-hidden="true" tabindex="-1" href="#vrrp-virtual-router-redundancy-protocol"><span class="icon icon-link"></span></a>VRRP (Virtual Router Redundancy Protocol)</h3><div class="wrap-body">
<!--rehype:wrap-class=col-span-2 row-span-4-->
<p>即虚拟路由器冗余协议</p>
<p>是一种选择协议,可将虚拟路由器责任动态分配至局域网内的一台 VRRP 路由器</p>
<p>控制虚拟路由器 IP 地址的 VRRP 路由器为 Master 路由器,负责将数据包进行分发</p>
<p>一旦 Master 不可用,可提供动态的故障转移机制</p>
<p>由 Backup 路由器代替 Master路由器故障时的工作</p>
<p>允许虚拟路由器的 IP 地址作为 终端主机的默认第一跳路由</p>
<p>优势为更高的默认路由的可用性,无须在终端主机上配置动态路由或路由发现协议</p>
<pre class="language-sh"><code class="language-sh code-highlight"><span class="code-line"><span class="token comment"># 二层交换机</span>
</span><span class="code-line"><span class="token comment"># 创建 vlan</span>
</span><span class="code-line"><span class="token comment"># 划分接口默认 vlan</span>
</span><span class="code-line"><span class="token comment"># 与 三层交换机 相连的接口配置 trunk 放通 vlan</span>
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># # 三层交换机</span>
</span><span class="code-line"><span class="token comment"># 创建 vlan</span>
</span><span class="code-line"><span class="token comment"># 与 二层交换机 相连的接口配置 trunk 放通 vlan</span>
</span><span class="code-line"><span class="token comment"># 配置 vlan 的 IP 地址</span>
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 配置 VRRP</span>
</span><span class="code-line"><span class="token comment"># vlan 视图下</span>
</span><span class="code-line"><span class="token comment"># 配置虚拟接口 IP</span>
</span><span class="code-line"><span class="token comment"># 与当前 vlan ip 同段</span>
</span><span class="code-line"><span class="token comment"># 一台虚拟路由器可拥有多个 IP 地址</span>
</span><span class="code-line"><span class="token comment"># vrid 虚拟路由器的标识,相同的 vrid 的路由器组成一台虚拟 Master 路由器</span>
</span><span class="code-line">vrrp vrid <span class="token number">1</span> virtual-ip <span class="token number">192.168</span>.100.254
</span><span class="code-line"><span class="token comment"># 配置优先级</span>
</span><span class="code-line"><span class="token comment"># 根据优先级确定虚拟路由器中每台路由器的地位</span>
</span><span class="code-line">vrrp vrid <span class="token number">1</span> priority <span class="token number">150</span>
</span><span class="code-line"><span class="token comment"># 配置抢占模式和延迟时间</span>
</span><span class="code-line"><span class="token comment"># 非抢占模式</span>
</span><span class="code-line"><span class="token comment"># Master 无故障, Backup 即使优先级比 Master 高也不会成为 Master</span>
</span><span class="code-line"><span class="token comment"># 抢占模式</span>
</span><span class="code-line"><span class="token comment"># Backup 优先级比 Master 高,则代替 Master</span>
</span><span class="code-line">vrrp vrid <span class="token number">1</span> preempt-mode timer delay <span class="token number">5</span>
</span><span class="code-line"><span class="token comment"># 将 g/0/23 配置为跟踪接口</span>
</span><span class="code-line">vrrp vrid <span class="token number">1</span> track interface g0/0/23
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 查看 VRRP 服务</span>
</span><span class="code-line">display vrrp brief
</span><span class="code-line"><span class="token comment"># 1 为 vrrp id</span>
</span><span class="code-line">display vrrp <span class="token number">1</span>
</span><span class="code-line"><span class="token comment"># #</span>
</span></code></pre>
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="单臂路由"><a aria-hidden="true" tabindex="-1" href="#单臂路由"><span class="icon icon-link"></span></a>单臂路由</h3><div class="wrap-body">
<p>划分 vlan 之后vlan 是无法互通的,但是使用单臂路由可以解决此问题。</p>
<pre class="language-sh"><code class="language-sh code-highlight"><span class="code-line"><span class="token comment"># 首先交换机划分 vlan</span>
</span><span class="code-line"><span class="token comment"># 划分接口默认 vlan</span>
</span><span class="code-line"><span class="token comment"># 与路由器相连接口进行 trunk 放通 vlan</span>
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 假设路由器与交换机连接的接口是 g0/0/0</span>
</span><span class="code-line"><span class="token comment"># 创建子接口</span>
</span><span class="code-line">int g0/0/0.1
</span><span class="code-line"><span class="token comment"># 配置 ip 地址</span>
</span><span class="code-line"><span class="token comment"># 封装 802.1Q 协议</span>
</span><span class="code-line"><span class="token comment"># 假设当前接口对应的 vlan 是 vlan 10</span>
</span><span class="code-line">dot1q termination vid <span class="token number">10</span>
</span><span class="code-line"><span class="token comment"># 开启 arp 广播</span>
</span><span class="code-line"><span class="token comment"># 不配置会导致子接口不主动发送 arp 报文</span>
</span><span class="code-line"><span class="token comment"># 以及对外转发 ip 报文</span>
</span><span class="code-line">arp broadcast <span class="token builtin class-name">enable</span>
</span></code></pre>
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="静态路由"><a aria-hidden="true" tabindex="-1" href="#静态路由"><span class="icon icon-link"></span></a>静态路由</h3><div class="wrap-body">
<p>适用于规模较小,不经常变动,简单的网络环境</p>
<pre class="language-sh"><code class="language-sh code-highlight"><span class="code-line"><span class="token comment"># 首先配置交换机</span>
</span><span class="code-line"><span class="token comment"># 创建 vlan 并划分接口默认 vlan</span>
</span><span class="code-line"><span class="token comment"># 配置 vlan 的 ip 地址</span>
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># 路由器配置相连接口 ip</span>
</span><span class="code-line"><span class="token comment"># 添加 静态路由</span>
</span><span class="code-line"><span class="token comment"># 所有不能直达的网络都需要添加静态路由</span>
</span><span class="code-line"><span class="token function">ip</span> route-static 目标网段 掩码 下一跳地址
</span></code></pre>
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="默认路由"><a aria-hidden="true" tabindex="-1" href="#默认路由"><span class="icon icon-link"></span></a>默认路由</h3><div class="wrap-body">
<p>默认路由与静态路由配置基本相同。</p>
<p>唯一不同的就是路由的配置。</p>
<pre class="language-bash"><code class="language-bash code-highlight"><span class="code-line"><span class="token function">ip</span> rou <span class="token number">0.0</span>.0.0 <span class="token number">0.0</span>.0.0 下一跳地址
</span></code></pre>
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="浮动路由"><a aria-hidden="true" tabindex="-1" href="#浮动路由"><span class="icon icon-link"></span></a>浮动路由</h3><div class="wrap-body">
<p>就是路由器之间多个接口相连,并配置接口优先级。</p>
<p>配置与静态,默认路由基本相同。</p>
<pre class="language-bash"><code class="language-bash code-highlight"><span class="code-line"><span class="token function">ip</span> rou 目标网段 掩码 下一跳地址
</span><span class="code-line"><span class="token function">ip</span> rou 目标网段 掩码 下一跳地址 <span class="token function">pr</span> 权重
</span></code></pre>
</div></div></div><div class="wrap h3body-exist row-span-2 col-span-2"><div class="wrap-header h3wrap"><h3 id="ospf"><a aria-hidden="true" tabindex="-1" href="#ospf"><span class="icon icon-link"></span></a>OSPF</h3><div class="wrap-body">
<!--rehype:wrap-class=row-span-2 col-span-2-->
<p>首先配置完毕相关接口及IP。</p>
<h4 id="单域"><a aria-hidden="true" tabindex="-1" href="#单域"><span class="icon icon-link"></span></a>单域</h4>
<pre class="language-bash"><code class="language-bash code-highlight"><span class="code-line"><span class="token comment"># 系统视图下</span>
</span><span class="code-line"><span class="token comment"># 1 是 ospf 进程号</span>
</span><span class="code-line">ospf <span class="token number">1</span>
</span><span class="code-line"><span class="token comment"># 0 是区域号 0 是骨干区域</span>
</span><span class="code-line">area <span class="token number">0</span>
</span><span class="code-line"><span class="token comment"># 发布网段</span>
</span><span class="code-line"><span class="token comment"># 网段需要根据掩码</span>
</span><span class="code-line">net x.x.x.x 反码
</span></code></pre>
<h4 id="多域"><a aria-hidden="true" tabindex="-1" href="#多域"><span class="icon icon-link"></span></a>多域</h4>
<p>与单域配置基本相同,只是需要划分多个 OSPF 区域。</p>
<p>需要注意,路由器相连接口需要划分到一个区域。</p>
<pre class="language-bash"><code class="language-bash code-highlight"><span class="code-line"><span class="token comment"># 系统视图下</span>
</span><span class="code-line">ospf <span class="token number">1</span>
</span><span class="code-line">area <span class="token number">0</span>
</span><span class="code-line"><span class="token comment"># 发布当前区域的网段</span>
</span><span class="code-line">net x.x.x.x 反码
</span><span class="code-line"><span class="token comment"># 切换区域</span>
</span><span class="code-line">area <span class="token number">1</span>
</span><span class="code-line"><span class="token comment"># 发布当前区域的网段</span>
</span><span class="code-line">net x.x.x.x 反码
</span></code></pre>
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="动态路由-rip"><a aria-hidden="true" tabindex="-1" href="#动态路由-rip"><span class="icon icon-link"></span></a>动态路由 RIP</h3><div class="wrap-body">
<p>配置基本相同。</p>
<pre class="language-bash"><code class="language-bash code-highlight"><span class="code-line"><span class="token comment"># 系统视图下</span>
</span><span class="code-line"><span class="token comment"># 进入 rip 视图</span>
</span><span class="code-line">rip
</span><span class="code-line"><span class="token comment"># 切换版本 2</span>
</span><span class="code-line"><span class="token function">v</span> <span class="token number">2</span>
</span><span class="code-line"><span class="token comment"># 自动汇总</span>
</span><span class="code-line">summary always
</span><span class="code-line"><span class="token comment"># 发布网段 (需要根据掩码)</span>
</span><span class="code-line"><span class="token comment"># 如 掩码 255.0.0.0</span>
</span><span class="code-line"><span class="token comment"># 则 发布 x.0.0.0</span>
</span><span class="code-line">net x.x.x.x
</span></code></pre>
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="路由重分发"><a aria-hidden="true" tabindex="-1" href="#路由重分发"><span class="icon icon-link"></span></a>路由重分发</h3><div class="wrap-body">
<p>大型网络中,有时有多种路由协议共存,此时需要进行路由重分发。</p>
<pre class="language-bash"><code class="language-bash code-highlight"><span class="code-line"><span class="token comment"># 首先完成相关路由配置</span>
</span><span class="code-line"><span class="token comment"># 假设 Router 左侧为 RIP 协议</span>
</span><span class="code-line"><span class="token comment"># 右侧为 OSPF 协议</span>
</span><span class="code-line"><span class="token comment"># 左右路由分别是 1.1.1.1 和 2.2.2.2</span>
</span><span class="code-line"><span class="token comment"># 因为 左侧为 RIP 协议</span>
</span><span class="code-line"><span class="token comment"># 因此需要先配置 RIP 发布 1.1.1.0 的网段</span>
</span><span class="code-line"><span class="token comment"># 右侧 OSPF 协议相同</span>
</span><span class="code-line">
</span><span class="code-line"><span class="token comment"># Router 中</span>
</span><span class="code-line"><span class="token comment"># 进入 rip 中</span>
</span><span class="code-line"><span class="token comment"># 导入 ospf 1 的路由</span>
</span><span class="code-line">import-route ospf <span class="token number">1</span>
</span><span class="code-line"><span class="token comment"># 进入 ospf</span>
</span><span class="code-line"><span class="token comment"># 导入 rip 1 的路由</span>
</span><span class="code-line">import-route rip <span class="token number">1</span>
</span></code></pre>
</div></div></div></div></div><div class="wrap h2body-exist"><div class="wrap-header h2wrap"><h2 id="网络安全"><a aria-hidden="true" tabindex="-1" href="#网络安全"><span class="icon icon-link"></span></a>网络安全</h2><div class="wrap-body">
</div></div><div class="h2wrap-body"><div class="wrap h3body-not-exist col-span-2"><div class="wrap-header h3wrap"><h3 id="接口安全"><a aria-hidden="true" tabindex="-1" href="#接口安全"><span class="icon icon-link"></span></a>接口安全</h3><div class="wrap-body">
<!--rehype:wrap-class=col-span-2-->
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token comment"># 接口视图下</span>
</span><span class="code-line"><span class="token comment"># 开启接口安全</span>
</span><span class="code-line">port-security <span class="token builtin class-name">enable</span>
</span><span class="code-line"><span class="token comment"># 设置当前接口只能由 MAC 地址 MAC-ADDRESS 的设备访问</span>
</span><span class="code-line">port-security mac-address sticky MAC-ADDRESS
</span><span class="code-line"><span class="token comment"># 设置安全 MAC 地址最大数为 1</span>
</span><span class="code-line">port-security max-mac-num <span class="token number">1</span>
</span><span class="code-line"><span class="token comment"># 设置其他非安全 MAC 地址数据帧处理动作为 关闭接口</span>
</span><span class="code-line">port-security protect-action <span class="token function">shutdown</span>
</span><span class="code-line"><span class="token comment"># 设置安全 MAC 地址老化时间为 300s</span>
</span><span class="code-line">port-security aging-time <span class="token number">300</span>
</span></code></pre>
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="访问控制列表access-control-list"><a aria-hidden="true" tabindex="-1" href="#访问控制列表access-control-list"><span class="icon icon-link"></span></a>访问控制列表Access Control List</h3><div class="wrap-body">
<ul>
<li>由一系列规则组成的集合,通过规则对报文分类处理。</li>
<li>通常由若干条 <red>deny</red>(拒绝) | <code>permit</code>(允许) 语句组成。</li>
</ul>
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="基本访问控制列表"><a aria-hidden="true" tabindex="-1" href="#基本访问控制列表"><span class="icon icon-link"></span></a>基本访问控制列表</h3><div class="wrap-body">
<p>范围只能在 2000 - 2999。</p>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token comment"># 系统视图下</span>
</span><span class="code-line">acl <span class="token number">2000</span>
</span><span class="code-line"><span class="token comment"># 规则 拒绝 源 IP地址 反码</span>
</span><span class="code-line"><span class="token comment"># deny 拒绝 permit 允许</span>
</span><span class="code-line">rule deny <span class="token builtin class-name">source</span> IP-ADDRESS MASK
</span><span class="code-line"><span class="token comment"># 接口视图下</span>
</span><span class="code-line"><span class="token comment"># 传输过滤 输出 规则 2000</span>
</span><span class="code-line"><span class="token comment"># outbound 输出</span>
</span><span class="code-line"><span class="token comment"># inbound 输入</span>
</span><span class="code-line">traffic-filter outbound acl <span class="token number">2000</span>
</span></code></pre>
</div></div></div><div class="wrap h3body-not-exist col-span-2"><div class="wrap-header h3wrap"><h3 id="高级访问控制列表"><a aria-hidden="true" tabindex="-1" href="#高级访问控制列表"><span class="icon icon-link"></span></a>高级访问控制列表</h3><div class="wrap-body">
<!--rehype:wrap-class=col-span-2-->
<p>范围 3000 - 3999。</p>
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line"><span class="token comment"># 系统视图下</span>
</span><span class="code-line">acl <span class="token number">3000</span>
</span><span class="code-line"><span class="token comment"># 规则 id5 拒绝 tcp 源 IP-ADDRESS 反码 访问目标 IP-ADDRESS 反码 目标端口 范围 20 21</span>
</span><span class="code-line">rule <span class="token number">5</span> deny tcp <span class="token builtin class-name">source</span> IP-ADDRESS MASK destination IP-ADDRESS MASK destination-port range <span class="token number">20</span> <span class="token number">21</span>
</span><span class="code-line"><span class="token comment">#规则 id10 允许 tcp 源 IP-ADDRESS 反码 访问目标 IP-ADDRESS 反码 目标端口 等于 80</span>
</span><span class="code-line"><span class="token comment"># gt 大于</span>
</span><span class="code-line"><span class="token comment"># lt 小于</span>
</span><span class="code-line">rule <span class="token number">10</span> permit tcp <span class="token builtin class-name">source</span> IP-ADDRESS MASK destination IP-ADDRESS MASK destination-port eq <span class="token number">80</span>
</span></code></pre>
<p>应尽量在靠近源地址的接口上应用;允许某个网段后,应拒绝其他网段。对于 FTP需要同时指定 FTP21和 FTP-DATA20端口。</p>
</div></div></div></div></div></div><script src="https://giscus.app/client.js" data-repo="jaywcjlove/reference" data-repo-id="R_kgDOID2-Mw" data-category="Q&#x26;A" data-category-id="DIC_kwDOID2-M84CS5wo" data-mapping="pathname" data-strict="0" data-reactions-enabled="1" data-emit-metadata="0" data-input-position="bottom" data-theme="dark" data-lang="zh-CN" crossorigin="anonymous" async></script><div class="giscus"></div></div><footer class="footer-wrap"><footer class="max-container">© 2022 <a href="https://wangchujiang.com/#/app" target="_blank">Kenny Wang</a>.</footer></footer><script async src="https://www.googletagmanager.com/gtag/js?id=G-9MWEWXSDQK"></script><script>window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-9MWEWXSDQK');</script><script src="../data.js?v=1.11.1" defer></script><script src="../js/fuse.min.js?v=1.11.1" defer></script><script src="../js/main.js?v=1.11.1" defer></script><div id="mysearch"><div class="mysearch-box"><div class="mysearch-input"><div><svg xmlns="http://www.w3.org/2000/svg" height="1em" width="1em" viewBox="0 0 18 18">
<path fill="currentColor" d="M17.71,16.29 L14.31,12.9 C15.4069846,11.5024547 16.0022094,9.77665502 16,8 C16,3.581722 12.418278,0 8,0 C3.581722,0 0,3.581722 0,8 C0,12.418278 3.581722,16 8,16 C9.77665502,16.0022094 11.5024547,15.4069846 12.9,14.31 L16.29,17.71 C16.4777666,17.8993127 16.7333625,18.0057983 17,18.0057983 C17.2666375,18.0057983 17.5222334,17.8993127 17.71,17.71 C17.8993127,17.5222334 18.0057983,17.2666375 18.0057983,17 C18.0057983,16.7333625 17.8993127,16.4777666 17.71,16.29 Z M2,8 C2,4.6862915 4.6862915,2 8,2 C11.3137085,2 14,4.6862915 14,8 C14,11.3137085 11.3137085,14 8,14 C4.6862915,14 2,11.3137085 2,8 Z"></path>
</svg><input id="mysearch-input" type="search" placeholder="搜索" autocomplete="off"><div class="mysearch-clear"></div></div><button id="mysearch-close" type="button">搜索</button></div><div class="mysearch-result"><div id="mysearch-menu"></div><div id="mysearch-content"></div></div></div></div></body>
</html>