IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> CISCO常用配置命令 -> 正文阅读

[系统运维]CISCO常用配置命令

无论在国内市场还是国际市场,CISCO交换机、路由器在网络设备领域都占据了主导地位。本文主要介绍网络设备相关的概念以及CISCO设备基础配置命令,以便记录和学习。

一、基础概念

(一) 交换机与集线器

交换机工作在链路层或网络层,这和工作在物理层的集线器有本质上的区别:

  • 集线器 (Hub):内部本质是总线型拓扑,数据转发只能通过广播的形式,端口之间通道为半双工通信,所有端口存在于同一个冲突域
  • 二层交换机 (Switch):通过自学习建立“MAC-端口”对应表,从而可以实现单播,端口之间为全双工通信,这样得以将每个端口冲突域相隔离
  • 三层交换机 (Router):具有路由功能的交换机,可以简单理解为在二层交换机的基础上添加了路由模块

尽管交换机有“MAC-端口”对应表,而且端口间为全双工通信,但这只是隔离了冲突域,并不能隔离广播域,对于ARP、DHCP等广播包一样会广播到所有端口,所以当链路复杂时一样容易产生广播风暴,对此有效的解决方法就是配置VLAN,每个VLAN都是一个独立的广播域,可以有效避免广播风暴。

(二) VLAN标签

要使交换机能够分辨不同的VLAN报文,需要在报文中添加标识VLAN信息的字段,即VLAN标签 (VLAN Tag),这个过程需要使用IEEE 802.1Q协议封装帧头,只能由交换机、路由器等网络设备实现。协议规定在以太网数据帧的目的MAC地址和源MAC地址字段之后、协议类型字段之前加入4个字节的VLAN Tag,用以标识VLAN信息,如下图所示:
在这里插入图片描述
主机、集线器收发的数据包中无VLAN Tag,交换机、路由器等设备收发的数据包中可以有,也可以没有VLAN Tag,CISCO交换机不同类型的接口 (链路) 在收发Tag/Untag报文时处理方式不同:

1.Access接口

一般用于和不能识别Tag的用户终端(如用户主机、服务器等)相连,只能收发Untag帧,且只能为Untag帧添加唯一VLAN的Tag。

  • 接收报文时:当收到不带Tag的报文,则根据接口分配的VLAN打上Tag;当收到带Tag的报文,则交换机不做处理,直接丢弃
  • 发送报文时:向主机发送报文时,剥离Tag,发送普通的以太网帧

2.Trunk端口

一般用于连接交换机、路由器等可同时收发Tag和Untag报文的设备,可以允许多个VLAN的报文带Tag通过。

  • 接收报文时:当收到不带Tag的报文,则根据接口分配的VLAN打上Tag;当收到带Tag的报文,则根据规则查看是否允许进入,如果允许则接收,否则丢弃
  • 发送报文时:根据接口配置的规则,如果Tag中VLAN ID允许通过,则直接透传,否则丢弃

(三) 管理方式

对于交换机、路由器等CISCO设备,很多配置命令都是通用的,这两类网络设备管理的模式也是相同的:

  • Console接口:设备的控制台接入端口,一般为RJ45接口,管理员通过“Console转串口”或“Console转USB”数据线,一端接交换机另一端接PC控制端,在本地进行管理
  • AUX接口:辅助接口,用于远程配置,很少使用
  • 虚拟终端 (vty):通过Telnet、SSH等远程连接交换机时分配,需要先通过Console接口配置才能使用
  • WEB界面:通过WEB界面管理设备,需要先通过Console接口或其他方式将WEB服务启用

(四) 工作模式

CISCO设备四种基本的工作模式,分别如下:

  • 用户模式 >:低权限用户接入交换机的初始工作模式
  • 特权模式 #:用户模式下输入命令 enable 进入特权模式
  • 全局配置模式 (config)#:特权模式下输入命令 configuration terminal 进入全局配置模式
  • 接口配置模式 (config-if)#:全局配置模式下选择具体接口进入接口配置模式,如:int f0/1-4

CISCO设备特权级别范围 0-15,级别≥3时,用户登入交换机即特权模式,不用输入enable命令和特权模式的密码。当用户处于较低权限级别,通过enable命令默认进入15级最高权限。

(五) 加密级别

不同系列的设备支持的加密方式不同,常见如下:

  • 0:不加密,显示密码本身
  • 5:MD5哈希加密
  • 7:CISCO加密,可以逆转破解,安全性低
  • 8:PBKDF2哈希加密
  • 9:SCRYPT哈希加密

二、配置命令

(一) 基本配置

[<command>] ? —> 帮助命令,常用于查看子命令
no <command> —> 取消command相应的配置
include —> 结合管道符|使用,提取信息
exit —> 退出当前模式

SW> enable <level>                // 提升权限至level,默认进入15级特权模式

SW# show users                    // 查看当前登陆用户,主要包括console和vty
                                  // 有*标注的代表自己当前登录用的模式 
                                  
SW# show privilege                // 显示当前用户权限等级

SW# show running-config           // 显示当前设备所有配置

SW# show version                  // 显示设备版本、系统等信息

SW# show vlan brief               // 简洁显示所有VLAN状态、名称

SW# show ip interface brief       // 简洁显示所有接口(包括虚拟接口)分配IP和激活状态

SW# show ip route                 // 查看路由表(三层设备)

SW# show access-lists             // 查看ACL规则(三层设备)

SW# show vtp status               // 查看VTP状态信息

SW# config terminal               // 进入全局配置模式

SW(config)# hostname <hostname>   // 配置设备名称

SW(config)# service password-encryption // 开启加密服务,采用CISCO私有算法加密存储密码

SW(config)# username <name> privilege <level> {secret|password} <num> <pass> //配置设备名称
                                  // privilege有16个等级:0-15,等级越高权限越大
                                  // secret代表加密,<num>代表不同的加密算法
                                  // password代表不加密,在show run时直接可见密码明文
                                  // 如果开启password-encryption服务,则password设置的密码会被加密
                                  // secret命令优先级大于password,若同时设置则secret命令生效

SW(config)# enable {secret|password} <num> <pass> // 设置低权限用户进入特权模式的密码

SW(config)# line console 0        // line表示接入交换机的线路,通常包括console和vty
                                  // 对控制台接口进行配置,0代表console端口号
                                  // 命令执行后进入SW(config-if)#配置模式

SW(config)# line vty 0 4          // 对虚拟终端进行配置,0-4代表5个虚拟终端     
                                  // 命令执行后进入SW(config-if)#配置模式      

SW(config-line)# password <pass>  // 配置进入当前模式(console/vty)需要的密码

SW(config-line)# login            // 登录时启用密码检查,只需要输入密码
 
SW(config-line)# login local      // 登录时启用密码检查,需要输入用户名和密码

SW(config-line)# no login         // 当前line不允许登录

SW(config)# interface <interface> // 进入接口配置模式 SW(config-if)#
                                  // <interface>可以是VLAN、物理接口、虚拟子接口

SW(config-if)# ip address <addr> <mask> // 为接口(SVI、物理接口、虚拟子接口)配置静态IP

SW(config-if)# ip address dhcp    // 为接口(SVI、物理接口、虚拟子接口)配置DHCP

SW(config)# ip route <dst_addr> <mask> <gw_addr> // 配置静态路由(三层设备)

注意:配置命令支持缩略表示,如:username root privi 15 pass asdfshow run

(二) 配置DHCP

在三层设备上配置DHCP服务:

Router(config)# service dhcp               // 开启DCHP服务

Router(config)# ip dhcp pool <name>        // 进人dhcp地址池进行配置

Router(dhcp-config)# network <addr> <mask> // 配置dhcp地址池

Router(dhcp-config)# default-router <addr> // 配置网关地址

Router(dhcp-config)# dns-server <addr>     // 配置dns服务器地址

Router(dhcp-config)# exit

Router(config)# ip dhcp excluded-address <addr> // dhcp不分配的地址

Router(config)# exit

Router# show ip dhcp binding              // 查看dhcp地址分配情况

(三) 划分VLAN

1.创建VLAN

VLAN数据库模式全局模式下都可以实现对VLAN信息进行配置,但推荐在全局模式下进行配置,因为VLAN数据库模式正在被弃用,下面对VLAN的配置统一在全局模式下进行。

SW(config)# vlan <id>                // 创建vlan并对其进行配置
       
SW(config-vlan)# name <name>         // 为vlan命名name

2.配置端口

SW(config)# interface <interface_phy>        // 进入物理端口进行配置,如fa0/1、gi0/1、gi0/0/1
                                             // 可以一次配置多个接口,如 interface range fa0/1-2
                                             // fa代表Fast百兆以太网接口
                                             // gi代表Gigabit千兆以太网接口
                                             // 端口代码的完整表示为x/y/z,代表第x台设备,第y个插槽板卡,第z个端口

SW(config-if)# switchport mode access        // 配置端口为access模式,只允许指定vlan数据包通过
                                               
SW(config-if)# switchport access vlan <id>   // 配置交换机端口,将其分配给vlan id,且只允许vlan id数据包通过
                                             // 只有交换机设备有此命令

SW(config-if)# switchport mode trunk         // 配置端口为trunk模式,可以允许多个vlan数据包通过

SW(config-if)# switchport trunk allowed vlan all // 允许所有vlan数据包通过

注意:交换机默认存在VLAN 1(本征VLAN),所有端口初始都划分在VLAN 1中。

3.配置SVI

交换机虚拟接口 (Switch Virtual Interface, SVI) 是VLAN的虚拟接口,为SVI配置IP,通常作用如下:

  • 实现对设备进行远程管理
  • 作为网关实现不同VLAN间路由
SW(config)# interface vlan <id>                // 针对Vlan的SVI进行配置

SW(config-if)# descryption demo test           // 对SVI添加描述

SW(config-if)# ip address <address> <mask>     // 为SVI分配IP

SW(config-if)# no shutdown                     // 激活SVI

4.配置路由

在成功划分VLAN后,要使VLAN间可以正常路由需要在三层设备上配置,一般有三种方式:

(1) 多臂路由:即普通路由,为每个Vlan分配一个物理端口,每个物理端口配置为相应Vlan的网关,但是这种方式需要耗费大量路由器端口,在实际实施中基本行不通。

Router(config)# interface <interface_phy> // 进入物理接口配置,如fa0/1

Router(config-if)# no shutdown            // 激活端口

Router(config-if)# ip address 192.168.100.1 255.255.255.0 // 分配IP

Router(config-if)# exit

(2) 单臂路由:在一个物理端口上划分多个虚拟子接口,每个虚拟子接口分配一个VLAN,并作为VLAN的网关,这样解决了路由器物理端口需求量过大的问题,但由于所有VLAN数据包都通过一条链路,所以性能上限会受到单链路的局限。

交换机和路由器之间链路是中继链路,交换机连接路由器的接口配置为trunk口,允许多个VLAN的数据帧通过,默认封装格式为802.1Q,只有路由器接口同样封装为802.1Q,才能保证打上VLAN标签的数据帧能够被交换机区分,从而实现跨越VLAN通信,所以交换机在配置虚拟子接口时要封装802.1Q协议。

Router(config)# interface <interface_phy>  // 进入物理接口配置,如fa0/1
    
Router(config-if)# no shutdown             // 激活接口
     
Router(config-if)# exit 

Router(config)# interface <sub_interface> // 进入虚拟子接口配置,如fa0/0.1 
                                          // 虚拟子接口并不是实际存在的物理接口,但是功能和物理接口相同
                                      
Router(config-subif)# encapsulation dot1q <vlan_id>          // 接口配置802.1Q协议(vlan封装方式)

Router(config-subif)# ip address 192.168.100.1 255.255.255.0 // 为该接口划分网关地址,针对虚拟接口设置ip是为了分配网关

Router(config-subif)# exit

(3) 三层交换机:在二层交换机的基础上添加路由模块,为每个Vlan分配一个物理端口,每个物理接口配置为相应的Vlan的网关,解决了物理端口需求量大和链路局限的问题,是解决Vlan间路由的首选。

/*三层交换机首先要和下接的二层交换机配置相同的vlan信息*/

SW(config)# vlan <id>                 // 创建vlan并为其分配id 
       
SW(config-vlan)# name <name>          // 为vlan命名name

SW(config-vlan)# exit

SW(config)# interface <interface_phy> // 进入物理接口配置,如fa0/1      

SW(config-if)# no shutdown            // 激活接口

SW(config-if)# switchport mode access // 允许单个VLAN通过配置接口为access模式
                                      // 允许多个VLAN通过配置接口为trunk模式

SW(config-if)# switchport access vlan <id>    // 配置允许通过的vlan id

SW(config-if)# exit

SW(config)# interface vlan <id>        // 进入SVI配置

SW(config-if)# ip address <addr> <mac> // 配置IP

SW(config-if)# exit

SW(config)# ip routing                // 开启IP路由功能

注意:
① 路由器自动开启路由功能,而三层交换机默认没有开启,需要ip routing命令
② 在VLAN中继的不同设备之间管理地址不要和网关地址重复
③ 三层交换机只能对SVI配置IP,无法对物理端口配置IP

(四) 配置VTP

VTP (Vlan Trunk Protocol) 是CISCO私有的VLAN中继协议,通过同步交换机上VLAN的配置信息简化和统一网络管理。在VTP域中建立VTP Server和VTP Client,在一台VTP Server上配置VLAN时,VLAN信息将自动通过域中所有VTP Server/Client进行分发。

VTP中交换机有Server、Client、Transparent三种模式:

  • Server:维护VTP域中所有VLAN 信息,可以建立、删除或修改VLAN,可以同步VLAN配置,并把配置保存在NVRAM存储器中
  • Client:从VTP Server学习VLAN配置信息,不能建立、删除或修改VLAN,但可以同步VLAN配置,不保存配置到NVRAM存储器中
  • Transparent:独立于VTP域的交换机,仅维护本机上的VLAN信息,不参与VTP的信息同步和自学习机制,可以建立、删除和修改本机上的VLAN信息,并把配置保存在NVRAM存储器中

通常一个VTP域内的设置一个VTP Server和多个VTP Client,交换机之间必须要用中继链路Trunk模式,具体配置如下:

1.VTP Server

SW(config)# vtp mode server       // 配置交换机为VTP Server

SW(config)# vtp version <ver>     // 配置vtp版本

SW(config)# vtp domain <name>     // 配置VTP域

SW(config)# vtp password <pass>   // 配置VTP密码

SW(config)# interface <port>      // 配置交换机相连的物理接口为trunk模式
SW(config-if)# switchport mode trunk
SW(config-if)# switchport trunk allowed vlan all
SW(config-if)# exit

2.VTP Client

SW(config))# vtp mode client      // 配置交换机为VTP Client

SW(config)# vtp version <ver>     // 配置vtp版本,必须与VTP Server一致

SW(config)# vtp domain <name>     // 配置VTP域,必须与VTP Server一致

SW(config)# vtp password <pass>   // 配置VTP密码,必须与VTP Server一致

SW(config)# interface <port>      // 配置交换机相连的物理接口为trunk模式
SW(config-if)# switchport mode trunk
SW(config-if)# switchport trunk allowed vlan all
SW(config-if)# exit

(五) 配置ACL

访问控制列表 (Access Control Lists, ACL) 可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃,从而限制多个VLAN间互访。ACL需要在三层设备上进行配置,所有规则都是基于出/入两个方向:

  • 出:表示已经由设备处理完毕,正离开设备接口的数据包
  • 入:表示已经到达设备接口的数据包,将要被设备处理

分为标准ACL、扩展ACL和命名ACL三类:

1.标准ACL

对三层数据包中的源IP地址进行过滤,使用访问控制列表号1-99来创建相应的ACL,命令为:

SW(config)# access-list <num> {permit|deny} <addr> <r_mask>
// 标准ACL --> num: 1-99
// CISCO规定ACL中用反向掩码表示子网掩码,比如:192.168.1.1 0.0.0.255 表示192.168.1.1/24
// <addr> <r_mask>替换成any,相当于 0.0.0.0 255.255.255.255
// <addr> <r_mask>替换成host <addr>,如:host 192.168.1.1,相当于:192.168.1.1 0.0.0.0

SW(config)# access-list <num> permit any
// CISCO的ACL默认添加deny any的命令,即丢弃所有不符合匹配规则的数据包
// 因此在配置完限制规则后要加上这一句,否则匹配不到的规则包默认被丢弃

SW(config)# ip access-list standard <num>

SW(config-std-nacl)# <seq_num> {deny|permit} <addr> <r_mask>
// 可以指定添加ACL中具体规则的序号,如果不指定,默认序号按照10,20,30...递增

SW(config-std-nacl)# no <seq_num>
// 只删除ACL中序号为seq_num的规则

SW(config)# exit

SW(config)# interface <interface>

SW(config-if)# ip access-group <num> {in|out}
// 接口类型可以是物理端口、SVI和虚拟子接口
// 针对接口入/出端口应用ACL规则

SW(config)# no access-list <num>
// 删除ACL规则

2.扩展ACL

对三层、四层数据包的源IP地址、端口以及目的IP地址、端口信息进行过滤,使用访问控制列表号100-199来创建相应的ACL,命令为:

SW(config)# access-list <num> {permit|deny} protocol <src_addr> <r_mask> <dst_addr> <r_mask> <operator> <service|port>
// 扩展ACL --> num: 100-199
// operator具体包括:It小于,gt大于,eq等于,neq不等于
// 如:access-list 1 deny tcp any host 192.168.1.1 eq www --> 将所有主机访问192.168.1.1的www(80)服务的tcp数据包丢弃

SW(config)# no access-list <num>
// 删除整个ACL规则

SW(config)# ip access-list extend <num>

SW(config-std-nacl)# <seq_num> {deny|permit} <addr> <r_mask>
// 可以指定添加ACL中具体规则的序号,如果不指定,默认序号按照10,20,30...递增

SW(config-std-nacl)# no <seq_num>
// 只删除ACL中序号为seq_num的规则

SW(config)# exit

SW(config)# interface <interface>

SW(config-if)# ip access-group <num> {in|out}

3.命名ACL

基于名称建立标准/扩展ACL规则,或是选择相应的规则对其进行编辑,注意序号可以当成是一种特殊的名称,所以也可以针对序号规则进行编辑,命令为:

SW(config)# ip access-list {standard|extended} <name>
// 建立一个名为name的标准/扩展ACL

SW(config-std-nacl)# <seq_num> {deny|permit} <addr> <r_mask>
// 可以指定ACL中具体规则的序号,如果不指定,默认序号按照10,20,30...递增

SW(config-std-nacl)# no <seq_num>
// 只删除ACL中序号为seq_num的规则

SW(config-std-nacl)# exit

SW(config)# no ip access-list standard <name>
// 删除整个ACL规则

SW(config)# interface <interface>

SW(config-if)# ip access-group <name> {in|out}

注意:
① CISCO规定ACL中用反向掩码表示子网掩码,比如用 192.168.1.1 0.0.0.255 表示192.168.1.1/24
② ACL按照优先生效的原则,先匹配到的规则直接生效,不会继续向下寻找匹配
③ CISCO默认在ACL结尾添加deny any的命令,即丢弃所有不符合匹配规则的数据包

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-10-08 12:08:59  更:2021-10-08 12:09:41 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 17:26:16-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码