ISIS¶
ISIS is a routing protocol which is described in ISO10589, RFC 1195, RFC 5308. ISIS is an IGP. Compared with RIP, ISIS can provide scalable network support and faster convergence times like OSPF. ISIS is widely used in large networks such as ISP and carrier backbone networks.
Configuring isisd¶
There are no isisd specific options. Common options can be specified (Common Invocation Options) to isisd. isisd needs to acquire interface information from zebra in order to function. Therefore zebra must be running before invoking isisd. Also, if zebra is restarted then isisd must be too.
Like other daemons, isisd configuration is done in ISIS specific
configuration file isisd.conf
.
ISIS router¶
To start the ISIS process you have to specify the ISIS router. As of this writing, isisd does not support multiple ISIS processes.
-
[no] router isis WORD
¶ Enable or disable the ISIS process by specifying the ISIS domain with 'WORD'. isisd does not yet support multiple ISIS processes but you must specify the name of ISIS process. The ISIS process name 'WORD' is then used for interface (see command
ip router isis WORD
).
-
net XX.XXXX. ... .XXX.XX
¶
-
no net XX.XXXX. ... .XXX.XX
¶ Set/Unset network entity title (NET) provided in ISO format.
-
hostname dynamic
¶
-
no hostname dynamic
¶ Enable support for dynamic hostname.
-
area-password [clear | md5] <password>
¶
-
domain-password [clear | md5] <password>
¶
-
no area-password
¶
-
no domain-password
¶ Configure the authentication password for an area, respectively a domain, as clear text or md5 one.
-
log-adjacency-changes
¶
-
no log-adjacency-changes
¶ Log changes in adjacency state.
-
metric-style [narrow | transition | wide]
¶
-
no metric-style
¶ Set old-style (ISO 10589) or new-style packet formats:
- narrow Use old style of TLVs with narrow metric
- transition Send and accept both styles of TLVs during transition
- wide Use new style of TLVs to carry wider metric
-
set-overload-bit
¶
-
no set-overload-bit
¶ Set overload bit to avoid any transit traffic.
-
purge-originator
¶
ISIS Timer¶
-
lsp-gen-interval (1-120)
¶
-
lsp-gen-interval [level-1 | level-2] (1-120)
¶
-
no lsp-gen-interval
¶
-
no lsp-gen-interval [level-1 | level-2]
¶ Set minimum interval in seconds between regenerating same LSP, globally, for an area (level-1) or a domain (level-2).
-
lsp-refresh-interval [level-1 | level-2] (1-65235)
¶
-
no lsp-refresh-interval [level-1 | level-2]
¶ Set LSP refresh interval in seconds, globally, for an area (level-1) or a domain (level-2).
-
max-lsp-lifetime (360-65535)
¶
-
max-lsp-lifetime [level-1 | level-2] (360-65535)
¶
-
no max-lsp-lifetime
¶
-
no max-lsp-lifetime [level-1 | level-2]
¶ Set LSP maximum LSP lifetime in seconds, globally, for an area (level-1) or a domain (level-2).
-
spf-interval (1-120)
¶
-
spf-interval [level-1 | level-2] (1-120)
¶
-
no spf-interval
¶
-
no spf-interval [level-1 | level-2]
¶ Set minimum interval between consecutive SPF calculations in seconds.
ISIS region¶
-
is-type [level-1 | level-1-2 | level-2-only]
¶
-
no is-type
¶ Define the ISIS router behavior:
- level-1 Act as a station router only
- level-1-2 Act as both a station router and an area router
- level-2-only Act as an area router only
ISIS interface¶
-
[no] <ip|ipv6> router isis WORD
¶ Activate ISIS adjacency on this interface. Note that the name of ISIS instance must be the same as the one used to configure the ISIS process (see command
router isis WORD
). To enable IPv4, issueip router isis WORD
; to enable IPv6, issueipv6 router isis WORD
.
-
isis circuit-type [level-1 | level-1-2 | level-2]
¶
-
no isis circuit-type
¶ Configure circuit type for interface:
- level-1 Level-1 only adjacencies are formed
- level-1-2 Level-1-2 adjacencies are formed
- level-2-only Level-2 only adjacencies are formed
-
isis csnp-interval (1-600)
¶
-
isis csnp-interval (1-600) [level-1 | level-2]
¶
-
no isis csnp-interval
¶
-
no isis csnp-interval [level-1 | level-2]
¶ Set CSNP interval in seconds globally, for an area (level-1) or a domain (level-2).
-
isis hello padding
¶ Add padding to IS-IS hello packets.
-
isis hello-interval (1-600)
¶
-
isis hello-interval (1-600) [level-1 | level-2]
¶
-
no isis hello-interval
¶
-
no isis hello-interval [level-1 | level-2]
¶ Set Hello interval in seconds globally, for an area (level-1) or a domain (level-2).
-
isis hello-multiplier (2-100)
¶
-
isis hello-multiplier (2-100) [level-1 | level-2]
¶
-
no isis hello-multiplier
¶
-
no isis hello-multiplier [level-1 | level-2]
¶ Set multiplier for Hello holding time globally, for an area (level-1) or a domain (level-2).
-
isis metric [(0-255) | (0-16777215)]
¶
-
isis metric [(0-255) | (0-16777215)] [level-1 | level-2]
¶
-
no isis metric
¶
-
no isis metric [level-1 | level-2]
¶ Set default metric value globally, for an area (level-1) or a domain (level-2). Max value depend if metric support narrow or wide value (see command
metric-style [narrow | transition | wide]
).
-
isis network point-to-point
¶
-
no isis network point-to-point
¶ Set network type to 'Point-to-Point' (broadcast by default).
-
isis passive
¶
-
no isis passive
¶ Configure the passive mode for this interface.
-
isis password [clear | md5] <password>
¶
-
no isis password
¶ Configure the authentication password (clear or encoded text) for the interface.
-
isis priority (0-127)
¶
-
isis priority (0-127) [level-1 | level-2]
¶
-
no isis priority
¶
-
no isis priority [level-1 | level-2]
¶ Set priority for Designated Router election, globally, for the area (level-1) or the domain (level-2).
-
isis psnp-interval (1-120)
¶
-
isis psnp-interval (1-120) [level-1 | level-2]
¶
-
no isis psnp-interval
¶
-
no isis psnp-interval [level-1 | level-2]
¶ Set PSNP interval in seconds globally, for an area (level-1) or a domain (level-2).
-
isis three-way-handshake
¶
Showing ISIS information¶
-
show isis summary
¶ Show summary information about ISIS.
-
show isis hostname
¶ Show information about ISIS node.
-
show isis interface
¶
-
show isis interface detail
¶
-
show isis interface <interface name>
¶ Show state and configuration of ISIS specified interface, or all interfaces if no interface is given with or without details.
-
show isis neighbor
¶
-
show isis neighbor <System Id>
¶
-
show isis neighbor detail
¶ Show state and information of ISIS specified neighbor, or all neighbors if no system id is given with or without details.
-
show isis database
¶
-
show isis database [detail]
¶
-
show isis database <LSP id> [detail]
¶
-
show isis database detail <LSP id>
¶ Show the ISIS database globally, for a specific LSP id without or with details.
-
show isis topology
¶
-
show isis topology [level-1|level-2]
¶ Show topology IS-IS paths to Intermediate Systems, globally, in area (level-1) or domain (level-2).
-
show ip route isis
¶ Show the ISIS routing table, as determined by the most recent SPF calculation.
Traffic Engineering¶
Note
At this time, FRR offers partial support for some of the routing protocol extensions that can be used with MPLS-TE. FRR does not support a complete RSVP-TE solution currently.
-
mpls-te on
¶
-
no mpls-te
¶ Enable Traffic Engineering LSP flooding.
-
mpls-te router-address <A.B.C.D>
¶
-
no mpls-te router-address
¶ Configure stable IP address for MPLS-TE.
-
show isis mpls-te interface
¶
-
show isis mpls-te interface INTERFACE
¶ Show MPLS Traffic Engineering parameters for all or specified interface.
-
show isis mpls-te router
¶ Show Traffic Engineering router parameters.
See also
Debugging ISIS¶
-
debug isis adj-packets
¶
-
no debug isis adj-packets
¶ IS-IS Adjacency related packets.
-
debug isis checksum-errors
¶
-
no debug isis checksum-errors
¶ IS-IS LSP checksum errors.
-
debug isis events
¶
-
no debug isis events
¶ IS-IS Events.
-
debug isis local-updates
¶
-
no debug isis local-updates
¶ IS-IS local update packets.
-
debug isis packet-dump
¶
-
no debug isis packet-dump
¶ IS-IS packet dump.
-
debug isis protocol-errors
¶
-
no debug isis protocol-errors
¶ IS-IS LSP protocol errors.
-
debug isis route-events
¶
-
no debug isis route-events
¶ IS-IS Route related events.
-
debug isis snp-packets
¶
-
no debug isis snp-packets
¶ IS-IS CSNP/PSNP packets.
-
debug isis spf-events
¶
-
debug isis spf-statistics
¶
-
debug isis spf-triggers
¶
-
no debug isis spf-events
¶
-
no debug isis spf-statistics
¶
-
no debug isis spf-triggers
¶ IS-IS Shortest Path First Events, Timing and Statistic Data and triggering events.
-
debug isis update-packets
¶
-
no debug isis update-packets
¶ Update related packets.
-
show debugging isis
¶ Print which ISIS debug level is activate.
ISIS Configuration Examples¶
A simple example, with MD5 authentication enabled:
!
interface eth0
ip router isis FOO
isis network point-to-point
isis circuit-type level-2-only
!
router isis FOO
net 47.0023.0000.0000.0000.0000.0000.0000.1900.0004.00
metric-style wide
is-type level-2-only
A Traffic Engineering configuration, with Inter-ASv2 support.
First, the zebra.conf
part:
hostname HOSTNAME
password PASSWORD
log file /var/log/zebra.log
!
interface eth0
ip address 10.2.2.2/24
link-params
max-bw 1.25e+07
max-rsv-bw 1.25e+06
unrsv-bw 0 1.25e+06
unrsv-bw 1 1.25e+06
unrsv-bw 2 1.25e+06
unrsv-bw 3 1.25e+06
unrsv-bw 4 1.25e+06
unrsv-bw 5 1.25e+06
unrsv-bw 6 1.25e+06
unrsv-bw 7 1.25e+06
admin-grp 0xab
!
interface eth1
ip address 10.1.1.1/24
link-params
enable
metric 100
max-bw 1.25e+07
max-rsv-bw 1.25e+06
unrsv-bw 0 1.25e+06
unrsv-bw 1 1.25e+06
unrsv-bw 2 1.25e+06
unrsv-bw 3 1.25e+06
unrsv-bw 4 1.25e+06
unrsv-bw 5 1.25e+06
unrsv-bw 6 1.25e+06
unrsv-bw 7 1.25e+06
neighbor 10.1.1.2 as 65000
Then the isisd.conf
itself:
hostname HOSTNAME
password PASSWORD
log file /var/log/isisd.log
!
!
interface eth0
ip router isis FOO
!
interface eth1
ip router isis FOO
!
!
router isis FOO
isis net 47.0023.0000.0000.0000.0000.0000.0000.1900.0004.00
mpls-te on
mpls-te router-address 10.1.1.1
!
line vty