网络

Cisco IOS 指南 — 命令与配置

面向运行 Cisco IOS 的网络设备的配置指南:CLI 各级模式、接口与 IP 地址、DHCP 服务、访问密码、主机名与域名、配置的查看与保存、路由器的四类存储器,以及通过 Console、Telnet 或 SSH 连接设备。

· 4 分钟阅读 · 难度 中级
Illustration 1 — Guide Cisco IOS - Commandes et configuration

Cisco Systems 是一家美国的信息技术企业,最初专注于网络设备,自 2009 年起也涉足服务器领域。

Cisco IOS,旧称 IOS(Internetwork Operating System),是由 Cisco Systems 开发的操作系统,其绝大多数设备均搭载该系统。

本文将说明如何正确配置搭载 IOS 操作系统的网络设备。

CLI 配置模式

下文将会提到的 CLI(Command Line Interface,命令行界面)模式如下:

Router> <- 用户执行模式(User EXEC Mode) Router # <- 特权执行模式(Privileged EXEC mode) Router (config) # <- 全局配置模式(Global Configuration Mode) Router (config-if) # <- 接口配置模式(Interface Configuration Mode) Router (config-line) # <- 线路配置模式(Line Configuration Mode)

配置网络接口

这是让路由器能够在网络上转发数据包的必要一步。路由器接口最基本的参数就是 IP 地址。需要从全局配置模式进入接口配置模式:

Illustration 2 — Guide Cisco IOS - Commandes et configuration

进入特权执行模式:(简写:en)

Router>enable

从特权执行模式进入全局配置模式:

Router#config terminal

配置 GigabitEthernet 0/0 接口(简写:int gig0/0)

Router(config)#interface GigabitEthernet 0/0

为该接口分配一个 IP 地址(此处为 WAN 连接)

Router(config-if)#ip address 200.200.200.2 255.255.255.252

启用该接口(简写:no sh;在 IOS 上「不关闭」即为启用)

Router(config-if)#no shutdown

退出当前模式(简写:ex)

Router(config-if)#exit

配置 GigabitEthernet 0/1 接口(此处为 LAN 的网关)

Router(config)#interface GigabitEthernet 0/1
Router(config-if)#ip address 172.16.0.1 255.255.0.0
Router(config-if)#no shutdown
Router(config-if)#exit

配置 DHCP 服务

一台 Cisco 路由器可以配置为 DHCP 服务器,用于向内部主机动态分配 IP 地址。首先需要创建一个地址池,其中的 IP 地址将用于分配给客户端:

配置 DHCP 地址池,用于向内部主机分配地址

Router(config)#ip dhcp pool lan-pool

配置需要在其上分发地址的网络

Router(dhcp-config)#network 172.16.0.0 255.255.0.0

配置默认网关,使主机能够访问网络之外

Router(dhcp-config)#default-router 172.16.0.1

配置主 DNS 服务器,用于把域名解析为 IP 地址

Router(dhcp-config)#dns-server 1.1.1.1

您也可以排除那些不希望通过 DHCP 分配出去的 IP 地址。

排除开头的第 1 至第 50 个地址:

Router(dhcp-config)#ip dhcp excluded-address 172.16.0.1 172.16.0.50

配置访问密码

第一步是配置一个全局的 secret 密码,并根据需要为 Telnet 或 Console 配置密码,以此保护您对路由器的访问。

在全局配置模式下,您所配置的参数会影响整台路由器。此处我们要配置的是所谓的 enable secret 密码,今后您将用它从用户执行模式进入特权执行模式。

Router(config)#enable secret <votremotdepasse>

此后,当您从用户 EXEC 模式登录时,系统会要求您输入密码。

进入线路配置:virtual teletype (vty),用于 Telnet,也用于 SSH。

0 4 表示可以同时存在 5 个会话;0 15 则为 16 个会话

Router(config)#line vty 0 4

同样建议为 VTY 线路配置一个密码,以便在远程连接时保护您的访问。

Router(config-line)#password <motdepassevtyfort>

启用登录时的密码校验。

Routeur(config-line)#login

有些人还倾向于在路由器本身上创建本地用户账户(用户名和密码),以便向设备进行身份验证。

配置主机名和域名

为了把您的路由器与网络中的其他设备区分开来,需要配置它的主机名。

Router(config)#hostname Awoui-R01
Awoui-R01(config)#

请注意,路由器的提示符已变为您刚刚设定的新主机名。

尤其是为了远程管理,需要把路由器关联到一个域。

Awoui-R01(config)#ip domain-name awoui.fr

查看并保存配置

把正在运行的配置(称为 running-config)保存到 NVRAM 中,即可完成备份。这会覆盖原有的启动配置(称为 startup-config)。

退出配置模式(如有需要)

Awoui-R01(config)#exit

把正在运行的配置复制为启动配置(覆盖)

Awoui-R01#copy running-config startup-config

显示当前配置,以核对各项参数

Awoui-R01#show running-config

当您在路由器上执行「show running-configuration」命令时,就是让设备显示 RAM 中正在运行的配置。而执行「show startup-configuration」命令时,则是让路由器显示存储在 NVRAM 中的配置。

借助 do 参数,可以在配置模式下使用 show 命令

Awoui-R01(config)#do show running-config

路由器的存储器类型

一台 Cisco 路由器具有四种类型的存储器:

  • ROM:路由器的 POST 脚本就存放在这里。POST(Power On Self Test,加电自检)程序在启动时用于对设备进行最初的硬件检查。ROM 中还包含一个用于密码恢复的 mini-IOS。
  • RAM:正在运行的配置存放在这里。设备启动之后,IOS 软件会被载入 RAM。此外,RAM 中还保存着路由表、运行期间的网络参数等等。配置路由器时,我们实际上修改的正是运行配置,而如前所述,它存储在 RAM 中
  • NVRAM:当我们保存正在运行的配置时(使用「write」命令),它会被存入 NVRAM 并成为启动配置。路由器重启之后,启动配置便从 NVRAM 中载入。
  • Flash:它相当于计算机的硬盘,其中存放着 IOS 软件的镜像文件,以及您可能不时保存的各份备份配置。

如何连接到路由器进行配置:

您可以直接或远程连接到一台 Cisco IOS 路由器。设备尚未配置的第一次,通常是通过 CON 口用 Console 线缆直接连接。

使用 Console 线缆的连接也被称为「带外」连接方式。

在配置完路由器并为其接口分配 IP 地址之后,您就可以使用 Telnet 或 SSH,通过「带内」方式从网络连接到路由器。但请注意,Telnet 使用明文通信,而 SSH 使用加密流量,因此更推荐使用 SSH。

生成用于加密该连接的密钥对

Awoui-R01(config)#crypto key generate rsa
The name for the keys will be: Awoui-R01.awoui.fr
Choose the size of the key modulus in the range of 360 to 2048 for your
  General Purpose Keys. Choosing a key modulus greater than 512 may take
  a few minutes.

How many bits in the modulus [512]: 2048
% Generating 2048 bit RSA keys, keys will be non-exportable...[OK]

把 SSH 协议关联到虚拟线路。

line vty 0 4 
transport input ssh
login local

Login local 用于启用登录时的密码校验,但这一次使用的是本地用户账户。

创建一个用于远程访问的本地用户

Awoui-R01(config)#username <monutilisateur> secret <motdepassefort>

为所创建的用户关联最高的权限级别(15)

Awoui-R01(config)#username <monutilisateur> privilege 15

在计算机的 cmd 中通过 SSH 连接

ssh -l «monutilisateur» 172.16.0.1