Step1: Yum install

[root@server1 ~]# yum -y install dhcp

Step2: modify config

Read the rest of this entry »

最近尝试了下使用Golden ISO升级了下设备,发现其比使用官方提供的mini的ISO镜像更方便,时间更短,属实是太方便了。

什么是Golden ISO呢,GISO属于自定义的镜像文件,可以选择性的将mini iso + option rpm + smu + config file 等定制成一个镜像文件,这样我们在升级的时候只需要安装一个文件,可以省略之前很多很多的步骤。

GISO分为以下两种:

  • Optimised GISO (目前只能由官方提供)
  • Non-optimised GISO (使用github上public的python 脚本自己自定义)

Non-optimised GISO的缺点:

如果使用python脚本自定义的GISO,无法用于PXE安装,即使PXE安装了也只会成功安装mini iso,其它的自定义的oprion rpm/config 文件不会被加载。文章最后会说一下如何解决这个问题。

本文主要来介绍,如何使用Github上的脚本自己在本地定制化GISO文件。

Read the rest of this entry »

思科SP系列高端路由器都是由引擎RP/线卡(业务卡/LC)/矩阵卡FC(fabric card)等组成,但是只有引擎RP上存在console口,其他的板卡都是没有物理的console线路,所以在排查业务板卡等系列没有物理console线路的板卡启动失败的问题时,往往都只能login设备采集业务板卡的启动log,而往往这些log都很简单,并不能告诉我们这个板卡出了什么问题,那其实我们有内置的console线路,可以让我们能够跳转到其他板卡的console口,查看启动的详细log。方法如下:

CRS

CRS使用的32bit的系统,我们也称之为cXR,而且有且只有32bit 版本的系统,并且最有一个软件版本为6.7.4,后续不会再有软件更新。一般来说CRS的硬件故障很容易从log中识别出来原因,所以下面跳转到板卡console的方式并不常用,了解即可,退出符为CTRL+/

RP/0/RP0/CPU0:CRS-D# run console_tunneling 0/0/cpu0
Thu Jun 23 15:46:27.360 EDT
Trying to connect to node 0/0/CPU0...
Connected to node 0/0/CPU0.
Escape character is '^_'.


Connection to node 0/0/CPU0 closed.
Read the rest of this entry »
https://rory-1251435693.cos.ap-beijing.myqcloud.com/img/image-20220602024556354.png
https://rory-1251435693.cos.ap-beijing.myqcloud.com/img/image-20220602024457745.png
Read the rest of this entry »

最近抽空在EVE上配置测试了下Cisco BNG,把IPoE和PPPoE的功能验证下,记录下来,后续如果遇到排查BNG故障的问题可以借助模拟器验证一些命令和配置之类的。

实验准备

  •  XRv9K: xrv9k-fullk9-x-6.6.3
    • vBNG好像不支持在xrv的镜像上运行,不支持RP base的session,所以这里用XRv9K这个镜像。
  •  CSR 1000v: csr1000vng-universalk9.17.03.02-serial
    • CRS 1000v 用来当DHCP server/DHCP Client/PPPoE Client, 版本没什么特殊的要求。
  •  Freeradius
    • 这里我桥接一个网卡到我的一个linux主机上,上面用docker起了一个freeradius。有关Freeradius相关的配置过程可以参考我的另一篇文章,Configure ASR9K AAA with Freeradius

实验拓扑

https://rory-1251435693.cos.ap-beijing.myqcloud.com/img/image-20220527223117714.png
Read the rest of this entry »

最近有在考DevNet的认证,所以Mark一下如何去查认证考试代码。

参考一下思科certification的介绍页面, Associate -> NA, Professional -> NP, Expert -> Expert.

https://rory-1251435693.cos.ap-beijing.myqcloud.com/img/image-20220520001247684.png

主要记录下DevNet各个考试的代码,以便后续查找.

DevNet Associate(100题)

NamePrice
200-901 DEVASCDevNet Associate Exam v1.0300$

DevNet Professinal

Professinal 对应的是NP, 需要2门考试才为NP; 两门考试一门为Core Exam, 一门Concentration Exam; Concentation Exam 有多个方向, 选择一个方向的考试考过即可。

Core Exam(100题)

NamePrice
350-901 DEVCORDeveloping Applications using Cisco Core Platforms & APIs400$

Concentration Exam (50题)

NamePrice
300-435 ENAUTOAutomating and Programming Cisco Enterprise Solutions v1.0300$
300-835 CLAUTOAutomating Cisco Collaboration Solutions300$
300-635 DCAUTOAutomating and Programming Cisco Data Center Solutions v1.0300$
300-535 SPAUTOAutomating and Programming Cisco Service Provider Solutions300$
300-735 SAUTOAutomating and Programming Cisco Security Solutions v1300$
300-910 DEVOPSImplementing DevOps Solutions and Practices using Cisco Platforms300$
300-915 DEVIOTDeveloping Solutions using Cisco IoT & Edge Platforms300$
300-920 DEVWBXDeveloping Applications for Cisco Webex and Webex Devices300$

DevNet Expert

需要先行通过350-901 Core Examp, 然后需要通过8h Lab Exam才可获得。

Note

  •  DevNet Associate (200-901)
  •  DevNet Professinal
    •  Core Exam (350-901)
    •  Concentration Exam (To Cont…)

使用的MIB 库为CISCO-PING-MIB, 具体步骤如下:

# 清除之前操作
[root@server1 ~]# snmpset -v 2c -c  cisco 172.18.120.183 1.3.6.1.4.1.9.9.16.1.1.1.16.111 i 6
SNMPv2-SMI::enterprises.9.9.16.1.1.1.16.111 = INTEGER: 6

#创建实例编号为 111 的条目
[root@server1 ~]# snmpset -v 2c -c  cisco 172.18.120.183 1.3.6.1.4.1.9.9.16.1.1.1.16.111 i 5
SNMPv2-SMI::enterprises.9.9.16.1.1.1.16.111 = INTEGER: 5

#设置ping 的name
[root@server1 ~]# snmpset -v 2c -c  cisco 172.18.120.183 1.3.6.1.4.1.9.9.16.1.1.1.15.111 s test
SNMPv2-SMI::enterprises.9.9.16.1.1.1.15.111 = STRING: "test"

# 设置 ping的包位IP 包
[root@server1 ~]# snmpset -v 2c -c  cisco 172.18.120.183 1.3.6.1.4.1.9.9.16.1.1.1.2.111 i 1
SNMPv2-SMI::enterprises.9.9.16.1.1.1.2.111 = INTEGER: 1

# 设置ping的地址位 9.1.0.6 > hex 09010006
[root@server1 ~]# snmpset -v 2c -c  cisco 172.18.120.183 1.3.6.1.4.1.9.9.16.1.1.1.3.111 x 09010006
SNMPv2-SMI::enterprises.9.9.16.1.1.1.3.111 = Hex-STRING: 09 01 00 06

#设置ping的个数
[root@server1 ~]# snmpset -v 2c -c  cisco 172.18.120.183 1.3.6.1.4.1.9.9.16.1.1.1.4.111 i 5
SNMPv2-SMI::enterprises.9.9.16.1.1.1.4.111 = INTEGER: 5

#设置vrf name
[root@server1 ~]# snmpset -v 2c -c  cisco 172.18.120.183 1.3.6.1.4.1.9.9.16.1.1.1.17.111 s 123
SNMPv2-SMI::enterprises.9.9.16.1.1.1.17.111 = STRING: "123"
[root@server1 ~]#
[root@server1 ~]#

#检查设置的参数
[root@server1 ~]# snmpwalk -v 2c -c  cisco 172.18.120.183 1.3.6.1.4.1.9.9.16.1.1.1
SNMPv2-SMI::enterprises.9.9.16.1.1.1.2.111 = INTEGER: 1
SNMPv2-SMI::enterprises.9.9.16.1.1.1.3.111 = Hex-STRING: 09 01 00 06
SNMPv2-SMI::enterprises.9.9.16.1.1.1.4.111 = INTEGER: 5
SNMPv2-SMI::enterprises.9.9.16.1.1.1.5.111 = INTEGER: 100
SNMPv2-SMI::enterprises.9.9.16.1.1.1.6.111 = INTEGER: 2000
SNMPv2-SMI::enterprises.9.9.16.1.1.1.7.111 = INTEGER: 0
SNMPv2-SMI::enterprises.9.9.16.1.1.1.8.111 = INTEGER: 2
SNMPv2-SMI::enterprises.9.9.16.1.1.1.14.111 = INTEGER: 2
SNMPv2-SMI::enterprises.9.9.16.1.1.1.15.111 = STRING: "test"
SNMPv2-SMI::enterprises.9.9.16.1.1.1.16.111 = INTEGER: 2
SNMPv2-SMI::enterprises.9.9.16.1.1.1.17.111 = STRING: "123"
[root@server1 ~]#
[root@server1 ~]#

# 执行Ping 操作

[root@server1 ~]# snmpset -v 2c -c  cisco 172.18.120.183 1.3.6.1.4.1.9.9.16.1.1.1.16.111 i 1
SNMPv2-SMI::enterprises.9.9.16.1.1.1.16.111 = INTEGER: 1
[root@server1 ~]#

#检查ping的结果
[root@server1 ~]# snmpwalk -v 2c -c  cisco 172.18.120.183 1.3.6.1.4.1.9.9.16.1.1.1
SNMPv2-SMI::enterprises.9.9.16.1.1.1.2.111 = INTEGER: 1
SNMPv2-SMI::enterprises.9.9.16.1.1.1.3.111 = Hex-STRING: 09 01 00 06
SNMPv2-SMI::enterprises.9.9.16.1.1.1.4.111 = INTEGER: 5
SNMPv2-SMI::enterprises.9.9.16.1.1.1.5.111 = INTEGER: 100
SNMPv2-SMI::enterprises.9.9.16.1.1.1.6.111 = INTEGER: 2000
SNMPv2-SMI::enterprises.9.9.16.1.1.1.7.111 = INTEGER: 0
SNMPv2-SMI::enterprises.9.9.16.1.1.1.8.111 = INTEGER: 2
SNMPv2-SMI::enterprises.9.9.16.1.1.1.9.111 = Counter32: 5          <<<< send packet
SNMPv2-SMI::enterprises.9.9.16.1.1.1.10.111 = Counter32: 5        <<<< receive packet
SNMPv2-SMI::enterprises.9.9.16.1.1.1.11.111 = INTEGER: 1           <<<< Minrtt
SNMPv2-SMI::enterprises.9.9.16.1.1.1.12.111 = INTEGER: 1           <<<<Avgrtt
SNMPv2-SMI::enterprises.9.9.16.1.1.1.13.111 = INTEGER: 1           <<<<Maxrtt
SNMPv2-SMI::enterprises.9.9.16.1.1.1.14.111 = INTEGER: 1
SNMPv2-SMI::enterprises.9.9.16.1.1.1.15.111 = STRING: "test"
SNMPv2-SMI::enterprises.9.9.16.1.1.1.16.111 = INTEGER: 1
SNMPv2-SMI::enterprises.9.9.16.1.1.1.17.111 = STRING: "123"

#删除ping 实例
[root@server1 ~]# snmpset -v 2c -c  cisco 172.18.120.183 1.3.6.1.4.1.9.9.16.1.1.1.16.111 i 6
SNMPv2-SMI::enterprises.9.9.16.1.1.1.16.111 = INTEGER: 6

In general, the structure of the syslog messages generated by IOS-XR has the following format:

<PRI><messageid>: <hostname> <linecard>:<datetime>: <process-name>[<process-id>]: %<facility-name>-<severity>-<tag>: <MSG>

  • messageid: The ID number of the message.
  • hostname: The device that generated the message.
  • linecard: The linecard slot.
  • datetime: The time when the message was generated in the format: MMM dd hh:mm:ss.fff or MMM dd hh:mm:ss.fff ZZZ.
  • process-name: The name of the process that generated the mesage.
  • process-id The PID of the process that generated the message.
  • facility-name: The name of the Facility.
  • severify: The value of the Severity.
  • tag: The syslog message tag.
<PRI>

<PRI> 包含两个内容5 bit Facility 和 3 bit Log Level.

Facility 用来表示log信息的来源或者说是log 信息的类别,默认IOS XR设备使用的是LOCAL 7 , id 23。

我们可以在log server 上进行定义不同Facility存储在不同文件中,或者具有不同的format格式, 如下。

[root@server1 ~]# grep  local /etc/rsyslog.conf 
local7.*                                                /var/log/boot.log
local6.*                                                /var/log/syslog

IOS XR中可以修改facility , 命令如下

RP/0/RP0/CPU0:CRS-L(config)#logging  facility     ?
  auth    Authorization system
  cron    Cron/at facility
  daemon  System daemons
  kern    Kernel
  local0  Local use
  local1  Local use
  local2  Local use
  local3  Local use
  local4  Local use
  local5  Local use
  local6  Local use
  local7  Local use
  lpr      Line printer system
  mail    Mail system
  news    USENET news
  sys10   System use
  sys11   System use
  sys12   System use
  sys13   System use
  sys14   Systemcode use
  sys9    System use
  syslog  Syslog itself
  user    User process
  uucp    Unix-to-Unix copy system
  <cr>    
<hostname>

默认传递的syslog 中是不包含设备的hostname的,如下是在log server上记录的log,第一行中不包含hostname; 通过在IOS XR 设备上添加配置”logging hostname <WORD>”可以传递自己自定义的hostname,见第二行输出。

Apr 14 23:34:38 10.1.1.1 462388: LC/0/6/CPU0:Apr 15 09:02:48 : plim_xge[301]: %L2-PLIM-4-XFP_WARN_RX_PWR : Interface TenGigE0/6/0/9, RX Low power warning occurred 
Apr 14 23:50:04 10.1.1.1 462620: CRS-L RP/0/RP0/CPU0:Apr 15 09:18:13 : config[65956]: %MGBL-CONFIG-6-DB_COMMIT : Configuration committed by user 'xuxing'. Use 'show configuration commit changes 1000000229' to view the changes.

« Older entries § Newer entries »