Skip to content

IS-IS: the difference between "show isis interface detail json" and "show isis interface detail". #17721

@Z-Yivon

Description

@Z-Yivon

Description

When using IS-IS, there is a difference between “show isis interface detail json” and "show isis interface detail".Using instruction “show interface detail json” does not produce the correct output, and this bug can be found by comparing the output of the two.

Version

10.1

How to reproduce

Let's simply configure the route, which is the configuration information of r1:

!
interface r1-eth0
 ip address 10.0.0.1/30
 ip router isis 1
 isis priority 44 level-1 
 isis priority 88 level-2
 isis csnp-interval 90 level-1
 isis csnp-interval 99 level-2
 isis psnp-interval 70 level-1
 isis psnp-interval 50 level-2
 isis hello-interval level-1 120
 isis hello-interval level-2 150

!
interface r1-eth1
 ip address 10.0.0.10/30
 ip router isis 1
!
interface lo
 ip address 192.0.2.1/32
 ip router isis 1
 isis passive
!
router isis 1
net 49.0000.0000.0000.0001.00
 metric-style wide

When run the "show isis interface detail json" , the output is:

{
 "areas":[
   {
     "area":"1",
     "circuits":[
       {
         "circuit":2,
         "interface":{
           "name":"r1-eth0",
           "state":"Up",
           "is-passive":"active",
           "circuit-id":"0x2",
           "type":"lan",
           "level":"L1L2",
           "snpa":"6e28.9c92.da5e",
           "levels":[
             {
               "level":"L1",
               "metric":10,
               "active-neighbors":1,
               "hello-interval":120,
               "holddown":{
                 "count":10,
                 "pad":"yes"
               },
               "cnsp-interval":90,
               "psnp-interval":70,
               "lan":{
                 "priority":44,
                 "is-dis":"no"
               }
             },
             {
               "level":"L2",
               "metric":10,
               "active-neighbors":1,
               **"hello-interval":120,**
               "holddown":{
                 "count":10,
                 "pad":"yes"
               },
               **"cnsp-interval":90,**
               **"psnp-interval":70,**
               "lan":{
                 **"priority":44,**
                 "is-dis":"no"
               }
             }
           ],
           "ip-prefix":{
             "ip":"10.0.0.1/30"
           },
           "ipv6-link-locals":{
             "ipv6":"fe80::6c28:9cff:fe92:da5e/64"
           }
         }
       },
       {
         "circuit":3,
         "interface":{
           "name":"r1-eth1",
           "state":"Up",
           "is-passive":"active",
           "circuit-id":"0x3",
           "type":"lan",
           "level":"L1L2",
           "snpa":"2680.3ef3.fb61",
           "levels":[
             {
               "level":"L1",
               "metric":10,
               "active-neighbors":1,
               "hello-interval":3,
               "holddown":{
                 "count":10,
                 "pad":"yes"
               },
               "cnsp-interval":10,
               "psnp-interval":2,
               "lan":{
                 "priority":64,
                 "is-dis":"yes"
               }
             },
             {
               "level":"L2",
               "metric":10,
               "active-neighbors":1,
               "hello-interval":3,
               "holddown":{
                 "count":10,
                 "pad":"yes"
               },
               "cnsp-interval":10,
               "psnp-interval":2,
               "lan":{
                 "priority":64,
                 "is-dis":"yes"
               }
             }
           ],
           "ip-prefix":{
             "ip":"10.0.0.10/30"
           },
           "ipv6-link-locals":{
             "ipv6":"fe80::2480:3eff:fef3:fb61/64"
           }
         }
       },
       {
         "circuit":0,
         "interface":{
           "name":"lo",
           "state":"Up",
           "is-passive":"passive",
           "circuit-id":"0x0",
           "type":"loopback",
           "level":"L1L2",
           "levels":[
             {
               "level":"L1",
               "metric":10
             },
             {
               "level":"L2",
               "metric":10
             }
           ],
           "ip-prefix":{
             "ip":"192.0.2.1/32"
           }
         }
       }
     ]
   }
 ]
}

However, if I run instruction "show isis interface detail", the output is:

Area 1:
  Interface: r1-eth0, State: Up, Active, Circuit Id: 0x2
    Type: lan, Level: L1L2, SNPA: e6de.3a85.313a
    Level-1 Information:
      Metric: 10, Active neighbors: 1
      Hello interval: 120, Holddown count: 10, Padding: yes
      CNSP interval: 90, PSNP interval: 70
      LAN Priority: 44, is not DIS
    Level-2 Information:
      Metric: 10, Active neighbors: 1
      Hello interval: 150, Holddown count: 10, Padding: yes
      CNSP interval: 99, PSNP interval: 50
      LAN Priority: 88, is not DIS
    IP Prefix(es):
      10.0.0.1/30
    IPv6 Link-Locals:
      fe80::e4de:3aff:fe85:313a/64

  Interface: r1-eth1, State: Up, Active, Circuit Id: 0x3
    Type: lan, Level: L1L2, SNPA: a2e7.ec8c.326a
    Level-1 Information:
      Metric: 10, Active neighbors: 1
      Hello interval: 3, Holddown count: 10, Padding: yes
      CNSP interval: 10, PSNP interval: 2
      LAN Priority: 64, is DIS
    Level-2 Information:
      Metric: 10, Active neighbors: 1
      Hello interval: 3, Holddown count: 10, Padding: yes
      CNSP interval: 10, PSNP interval: 2
      LAN Priority: 64, is DIS
    IP Prefix(es):
      10.0.0.10/30
    IPv6 Link-Locals:
      fe80::a0e7:ecff:fe8c:326a/64

  Interface: lo, State: Up, Passive, Circuit Id: 0x0
    Type: loopback, Level: L1L2
    Level-1 Information:
      Metric: 10
    Level-2 Information:
      Metric: 10
    IP Prefix(es):
      192.0.2.1/32

Obviously, for interface "r1-eth0", the output of the two instructions is not the same.

Expected behavior

In the output result of "show isis interface detail json", for the level-2 part of r1-eth0, you can see that the output result is different from the configuration.The difference is the values of hello-interval, csnp-interval, psnp-interval, priority
Output:

 "interface":{
            "name":"r1-eth0",
            "state":"Up",
            "is-passive":"active",
            "circuit-id":"0x2",
            "type":"lan",
            "level":"L1L2",
            "snpa":"6e28.9c92.da5e",
            "levels":[
              {
                "level":"L1",
                "metric":10,
                "active-neighbors":1,
                "hello-interval":120,
                "holddown":{
                  "count":10,
                  "pad":"yes"
                },
                "cnsp-interval":90,
                "psnp-interval":70,
                "lan":{
                  "priority":44,
                  "is-dis":"no"
                }
              },
              {
                "level":"L2",
                "metric":10,
                "active-neighbors":1,
                "hello-interval":120,
                "holddown":{
                  "count":10,
                  "pad":"yes"
                },
                "cnsp-interval":90,
                "psnp-interval":70,
                "lan":{
                  "priority":44,
                  "is-dis":"no"
                }
              }

Configuration Information:

interface r1-eth0
 ip address 10.0.0.1/30
 ip router isis 1
 isis priority 44 level-1 
 isis priority 88 level-2
 isis csnp-interval 90 level-1
 isis csnp-interval 99 level-2
 isis psnp-interval 70 level-1
 isis psnp-interval 50 level-2
 isis hello-interval level-1 120
 isis hello-interval level-2 150

To verify that our findings are correct, we use "show isis interface detail", to see the output of r1-eth0:

Area 1:
  Interface: r1-eth0, State: Up, Active, Circuit Id: 0x2
    Type: lan, Level: L1L2, SNPA: e6de.3a85.313a
    Level-1 Information:
      Metric: 10, Active neighbors: 1
      Hello interval: 120, Holddown count: 10, Padding: yes
      CNSP interval: 90, PSNP interval: 70
      LAN Priority: 44, is not DIS
    Level-2 Information:
      Metric: 10, Active neighbors: 1
      Hello interval: 150, Holddown count: 10, Padding: yes
      CNSP interval: 99, PSNP interval: 50
      LAN Priority: 88, is not DIS
    IP Prefix(es):
      10.0.0.1/30
    IPv6 Link-Locals:
      fe80::e4de:3aff:fe85:313a/64

Expected behavior: The output of "show isis interface detail json" should be the same as that of "show isis interface detail".

Actual behavior

There is a difference between “show isis interface detail json” and "show isis interface detail".

Additional context

No response

Checklist

  • I have searched the open issues for this bug.
  • I have not included sensitive information in this report.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions