7 :abbr:`ISIS (Intermediate System to Intermediate System)` is a routing protocol
8 which is described in :t:`ISO10589`, :rfc:`1195`, :rfc:`5308`. ISIS is an
9 :abbr:`IGP (Interior Gateway Protocol)`. Compared with :abbr:`RIP`,
10 :abbr:`ISIS` can provide scalable network support and faster convergence times
11 like :abbr:`OSPF`. ISIS is widely used in large networks such as :abbr:`ISP
12 (Internet Service Provider)` and carrier backbone networks.
14 .. _configuring-isisd:
19 There are no *isisd* specific options. Common options can be specified
20 (:ref:`common-invocation-options`) to *isisd*. *isisd* needs to acquire
21 interface information from *zebra* in order to function. Therefore *zebra* must
22 be running before invoking *isisd*. Also, if *zebra* is restarted then *isisd*
25 Like other daemons, *isisd* configuration is done in :abbr:`ISIS` specific
26 configuration file :file:`isisd.conf`.
33 To start the ISIS process you have to specify the ISIS router. As of this
34 writing, *isisd* does not support multiple ISIS processes.
36 .. index:: [no] router isis WORD
37 .. clicmd:: [no] router isis WORD
39 Enable or disable the ISIS process by specifying the ISIS domain with
40 'WORD'. *isisd* does not yet support multiple ISIS processes but you must
41 specify the name of ISIS process. The ISIS process name 'WORD' is then used
42 for interface (see command :clicmd:`ip router isis WORD`).
44 .. index:: net XX.XXXX. ... .XXX.XX
45 .. clicmd:: net XX.XXXX. ... .XXX.XX
47 .. index:: no net XX.XXXX. ... .XXX.XX
48 .. clicmd:: no net XX.XXXX. ... .XXX.XX
50 Set/Unset network entity title (NET) provided in ISO format.
52 .. index:: hostname dynamic
53 .. clicmd:: hostname dynamic
55 .. index:: no hostname dynamic
56 .. clicmd:: no hostname dynamic
58 Enable support for dynamic hostname.
60 .. index:: area-password [clear | md5] <password>
61 .. clicmd:: area-password [clear | md5] <password>
63 .. index:: domain-password [clear | md5] <password>
64 .. clicmd:: domain-password [clear | md5] <password>
66 .. index:: no area-password
67 .. clicmd:: no area-password
69 .. index:: no domain-password
70 .. clicmd:: no domain-password
72 Configure the authentication password for an area, respectively a domain, as
73 clear text or md5 one.
75 .. index:: log-adjacency-changes
76 .. clicmd:: log-adjacency-changes
78 .. index:: no log-adjacency-changes
79 .. clicmd:: no log-adjacency-changes
81 Log changes in adjacency state.
83 .. index:: metric-style [narrow | transition | wide]
84 .. clicmd:: metric-style [narrow | transition | wide]
86 .. index:: no metric-style
87 .. clicmd:: no metric-style
89 Set old-style (ISO 10589) or new-style packet formats:
92 Use old style of TLVs with narrow metric
94 Send and accept both styles of TLVs during transition
96 Use new style of TLVs to carry wider metric
98 .. index:: set-overload-bit
99 .. clicmd:: set-overload-bit
101 .. index:: no set-overload-bit
102 .. clicmd:: no set-overload-bit
104 Set overload bit to avoid any transit traffic.
106 .. index:: purge-originator
107 .. clicmd:: purge-originator
109 .. index:: no purge-originator
110 .. clicmd:: no purge-originator
112 Enable or disable :rfc:`6232` purge originator identification.
119 .. index:: lsp-gen-interval (1-120)
120 .. clicmd:: lsp-gen-interval (1-120)
122 .. index:: lsp-gen-interval [level-1 | level-2] (1-120)
123 .. clicmd:: lsp-gen-interval [level-1 | level-2] (1-120)
125 .. index:: no lsp-gen-interval
126 .. clicmd:: no lsp-gen-interval
128 .. index:: no lsp-gen-interval [level-1 | level-2]
129 .. clicmd:: no lsp-gen-interval [level-1 | level-2]
131 Set minimum interval in seconds between regenerating same LSP,
132 globally, for an area (level-1) or a domain (level-2).
134 .. index:: lsp-refresh-interval [level-1 | level-2] (1-65235)
135 .. clicmd:: lsp-refresh-interval [level-1 | level-2] (1-65235)
137 .. index:: no lsp-refresh-interval [level-1 | level-2]
138 .. clicmd:: no lsp-refresh-interval [level-1 | level-2]
140 Set LSP refresh interval in seconds, globally, for an area (level-1) or a
143 .. index:: max-lsp-lifetime (360-65535)
144 .. clicmd:: max-lsp-lifetime (360-65535)
146 .. index:: max-lsp-lifetime [level-1 | level-2] (360-65535)
147 .. clicmd:: max-lsp-lifetime [level-1 | level-2] (360-65535)
149 .. index:: no max-lsp-lifetime
150 .. clicmd:: no max-lsp-lifetime
152 .. index:: no max-lsp-lifetime [level-1 | level-2]
153 .. clicmd:: no max-lsp-lifetime [level-1 | level-2]
155 Set LSP maximum LSP lifetime in seconds, globally, for an area (level-1) or
158 .. index:: spf-interval (1-120)
159 .. clicmd:: spf-interval (1-120)
161 .. index:: spf-interval [level-1 | level-2] (1-120)
162 .. clicmd:: spf-interval [level-1 | level-2] (1-120)
164 .. index:: no spf-interval
165 .. clicmd:: no spf-interval
167 .. index:: no spf-interval [level-1 | level-2]
168 .. clicmd:: no spf-interval [level-1 | level-2]
170 Set minimum interval between consecutive SPF calculations in seconds.
177 .. index:: is-type [level-1 | level-1-2 | level-2-only]
178 .. clicmd:: is-type [level-1 | level-1-2 | level-2-only]
180 .. index:: no is-type
181 .. clicmd:: no is-type
183 Define the ISIS router behavior:
186 Act as a station router only
188 Act as both a station router and an area router
190 Act as an area router only
197 .. _ip-router-isis-word:
199 .. index:: [no] <ip|ipv6> router isis WORD
200 .. clicmd:: [no] <ip|ipv6> router isis WORD
202 Activate ISIS adjacency on this interface. Note that the name of ISIS
203 instance must be the same as the one used to configure the ISIS process (see
204 command :clicmd:`router isis WORD`). To enable IPv4, issue ``ip router isis
205 WORD``; to enable IPv6, issue ``ipv6 router isis WORD``.
207 .. index:: isis circuit-type [level-1 | level-1-2 | level-2]
208 .. clicmd:: isis circuit-type [level-1 | level-1-2 | level-2]
210 .. index:: no isis circuit-type
211 .. clicmd:: no isis circuit-type
213 Configure circuit type for interface:
216 Level-1 only adjacencies are formed
218 Level-1-2 adjacencies are formed
220 Level-2 only adjacencies are formed
222 .. index:: isis csnp-interval (1-600)
223 .. clicmd:: isis csnp-interval (1-600)
225 .. index:: isis csnp-interval (1-600) [level-1 | level-2]
226 .. clicmd:: isis csnp-interval (1-600) [level-1 | level-2]
228 .. index:: no isis csnp-interval
229 .. clicmd:: no isis csnp-interval
231 .. index:: no isis csnp-interval [level-1 | level-2]
232 .. clicmd:: no isis csnp-interval [level-1 | level-2]
234 Set CSNP interval in seconds globally, for an area (level-1) or a domain
237 .. index:: isis hello padding
238 .. clicmd:: isis hello padding
240 Add padding to IS-IS hello packets.
242 .. index:: isis hello-interval (1-600)
243 .. clicmd:: isis hello-interval (1-600)
245 .. index:: isis hello-interval (1-600) [level-1 | level-2]
246 .. clicmd:: isis hello-interval (1-600) [level-1 | level-2]
248 .. index:: no isis hello-interval
249 .. clicmd:: no isis hello-interval
251 .. index:: no isis hello-interval [level-1 | level-2]
252 .. clicmd:: no isis hello-interval [level-1 | level-2]
254 Set Hello interval in seconds globally, for an area (level-1) or a domain
257 .. index:: isis hello-multiplier (2-100)
258 .. clicmd:: isis hello-multiplier (2-100)
260 .. index:: isis hello-multiplier (2-100) [level-1 | level-2]
261 .. clicmd:: isis hello-multiplier (2-100) [level-1 | level-2]
263 .. index:: no isis hello-multiplier
264 .. clicmd:: no isis hello-multiplier
266 .. index:: no isis hello-multiplier [level-1 | level-2]
267 .. clicmd:: no isis hello-multiplier [level-1 | level-2]
269 Set multiplier for Hello holding time globally, for an area (level-1) or a
272 .. index:: isis metric [(0-255) | (0-16777215)]
273 .. clicmd:: isis metric [(0-255) | (0-16777215)]
275 .. index:: isis metric [(0-255) | (0-16777215)] [level-1 | level-2]
276 .. clicmd:: isis metric [(0-255) | (0-16777215)] [level-1 | level-2]
278 .. index:: no isis metric
279 .. clicmd:: no isis metric
281 .. index:: no isis metric [level-1 | level-2]
282 .. clicmd:: no isis metric [level-1 | level-2]
284 Set default metric value globally, for an area (level-1) or a domain
285 (level-2). Max value depend if metric support narrow or wide value (see
286 command :clicmd:`metric-style [narrow | transition | wide]`).
288 .. index:: isis network point-to-point
289 .. clicmd:: isis network point-to-point
291 .. index:: no isis network point-to-point
292 .. clicmd:: no isis network point-to-point
294 Set network type to 'Point-to-Point' (broadcast by default).
296 .. index:: isis passive
297 .. clicmd:: isis passive
299 .. index:: no isis passive
300 .. clicmd:: no isis passive
302 Configure the passive mode for this interface.
304 .. index:: isis password [clear | md5] <password>
305 .. clicmd:: isis password [clear | md5] <password>
307 .. index:: no isis password
308 .. clicmd:: no isis password
310 Configure the authentication password (clear or encoded text) for the
313 .. index:: isis priority (0-127)
314 .. clicmd:: isis priority (0-127)
316 .. index:: isis priority (0-127) [level-1 | level-2]
317 .. clicmd:: isis priority (0-127) [level-1 | level-2]
319 .. index:: no isis priority
320 .. clicmd:: no isis priority
322 .. index:: no isis priority [level-1 | level-2]
323 .. clicmd:: no isis priority [level-1 | level-2]
325 Set priority for Designated Router election, globally, for the area
326 (level-1) or the domain (level-2).
328 .. index:: isis psnp-interval (1-120)
329 .. clicmd:: isis psnp-interval (1-120)
331 .. index:: isis psnp-interval (1-120) [level-1 | level-2]
332 .. clicmd:: isis psnp-interval (1-120) [level-1 | level-2]
334 .. index:: no isis psnp-interval
335 .. clicmd:: no isis psnp-interval
337 .. index:: no isis psnp-interval [level-1 | level-2]
338 .. clicmd:: no isis psnp-interval [level-1 | level-2]
340 Set PSNP interval in seconds globally, for an area (level-1) or a domain
343 .. index:: isis three-way-handshake
344 .. clicmd:: isis three-way-handshake
346 .. index:: no isis three-way-handshake
347 .. clicmd:: no isis three-way-handshake
349 Enable or disable :rfc:`5303` Three-Way Handshake for P2P adjacencies.
350 Three-Way Handshake is enabled by default.
352 .. _showing-isis-information:
354 Showing ISIS information
355 ========================
357 .. index:: show isis summary
358 .. clicmd:: show isis summary
360 Show summary information about ISIS.
362 .. index:: show isis hostname
363 .. clicmd:: show isis hostname
365 Show information about ISIS node.
367 .. index:: show isis interface
368 .. clicmd:: show isis interface
370 .. index:: show isis interface detail
371 .. clicmd:: show isis interface detail
373 .. index:: show isis interface <interface name>
374 .. clicmd:: show isis interface <interface name>
376 Show state and configuration of ISIS specified interface, or all interfaces
377 if no interface is given with or without details.
379 .. index:: show isis neighbor
380 .. clicmd:: show isis neighbor
382 .. index:: show isis neighbor <System Id>
383 .. clicmd:: show isis neighbor <System Id>
385 .. index:: show isis neighbor detail
386 .. clicmd:: show isis neighbor detail
388 Show state and information of ISIS specified neighbor, or all neighbors if
389 no system id is given with or without details.
391 .. index:: show isis database
392 .. clicmd:: show isis database
394 .. index:: show isis database [detail]
395 .. clicmd:: show isis database [detail]
397 .. index:: show isis database <LSP id> [detail]
398 .. clicmd:: show isis database <LSP id> [detail]
400 .. index:: show isis database detail <LSP id>
401 .. clicmd:: show isis database detail <LSP id>
403 Show the ISIS database globally, for a specific LSP id without or with
406 .. index:: show isis topology
407 .. clicmd:: show isis topology
409 .. index:: show isis topology [level-1|level-2]
410 .. clicmd:: show isis topology [level-1|level-2]
412 Show topology IS-IS paths to Intermediate Systems, globally, in area
413 (level-1) or domain (level-2).
415 .. index:: show ip route isis
416 .. clicmd:: show ip route isis
418 Show the ISIS routing table, as determined by the most recent SPF
421 .. _isis-traffic-engineering:
428 At this time, FRR offers partial support for some of the routing
429 protocol extensions that can be used with MPLS-TE. FRR does not
430 support a complete RSVP-TE solution currently.
432 .. index:: mpls-te on
433 .. clicmd:: mpls-te on
435 .. index:: no mpls-te
436 .. clicmd:: no mpls-te
438 Enable Traffic Engineering LSP flooding.
440 .. index:: mpls-te router-address <A.B.C.D>
441 .. clicmd:: mpls-te router-address <A.B.C.D>
443 .. index:: no mpls-te router-address
444 .. clicmd:: no mpls-te router-address
446 Configure stable IP address for MPLS-TE.
448 .. index:: show isis mpls-te interface
449 .. clicmd:: show isis mpls-te interface
451 .. index:: show isis mpls-te interface INTERFACE
452 .. clicmd:: show isis mpls-te interface INTERFACE
454 Show MPLS Traffic Engineering parameters for all or specified interface.
456 .. index:: show isis mpls-te router
457 .. clicmd:: show isis mpls-te router
459 Show Traffic Engineering router parameters.
463 :ref:`ospf-traffic-engineering`
470 .. index:: debug isis adj-packets
471 .. clicmd:: debug isis adj-packets
473 .. index:: no debug isis adj-packets
474 .. clicmd:: no debug isis adj-packets
476 IS-IS Adjacency related packets.
478 .. index:: debug isis checksum-errors
479 .. clicmd:: debug isis checksum-errors
481 .. index:: no debug isis checksum-errors
482 .. clicmd:: no debug isis checksum-errors
484 IS-IS LSP checksum errors.
486 .. index:: debug isis events
487 .. clicmd:: debug isis events
489 .. index:: no debug isis events
490 .. clicmd:: no debug isis events
494 .. index:: debug isis local-updates
495 .. clicmd:: debug isis local-updates
497 .. index:: no debug isis local-updates
498 .. clicmd:: no debug isis local-updates
500 IS-IS local update packets.
502 .. index:: debug isis packet-dump
503 .. clicmd:: debug isis packet-dump
505 .. index:: no debug isis packet-dump
506 .. clicmd:: no debug isis packet-dump
510 .. index:: debug isis protocol-errors
511 .. clicmd:: debug isis protocol-errors
513 .. index:: no debug isis protocol-errors
514 .. clicmd:: no debug isis protocol-errors
516 IS-IS LSP protocol errors.
518 .. index:: debug isis route-events
519 .. clicmd:: debug isis route-events
521 .. index:: no debug isis route-events
522 .. clicmd:: no debug isis route-events
524 IS-IS Route related events.
526 .. index:: debug isis snp-packets
527 .. clicmd:: debug isis snp-packets
529 .. index:: no debug isis snp-packets
530 .. clicmd:: no debug isis snp-packets
532 IS-IS CSNP/PSNP packets.
534 .. index:: debug isis spf-events
535 .. clicmd:: debug isis spf-events
537 .. index:: debug isis spf-statistics
538 .. clicmd:: debug isis spf-statistics
540 .. index:: debug isis spf-triggers
541 .. clicmd:: debug isis spf-triggers
543 .. index:: no debug isis spf-events
544 .. clicmd:: no debug isis spf-events
546 .. index:: no debug isis spf-statistics
547 .. clicmd:: no debug isis spf-statistics
549 .. index:: no debug isis spf-triggers
550 .. clicmd:: no debug isis spf-triggers
552 IS-IS Shortest Path First Events, Timing and Statistic Data and triggering
555 .. index:: debug isis update-packets
556 .. clicmd:: debug isis update-packets
558 .. index:: no debug isis update-packets
559 .. clicmd:: no debug isis update-packets
561 Update related packets.
563 .. index:: show debugging isis
564 .. clicmd:: show debugging isis
566 Print which ISIS debug level is activate.
568 ISIS Configuration Examples
569 ===========================
571 A simple example, with MD5 authentication enabled:
578 isis network point-to-point
579 isis circuit-type level-2-only
582 net 47.0023.0000.0000.0000.0000.0000.0000.1900.0004.00
587 A Traffic Engineering configuration, with Inter-ASv2 support.
589 First, the :file:`zebra.conf` part:
595 log file /var/log/zebra.log
598 ip address 10.2.2.2/24
613 ip address 10.1.1.1/24
627 neighbor 10.1.1.2 as 65000
630 Then the :file:`isisd.conf` itself:
636 log file /var/log/isisd.log
647 isis net 47.0023.0000.0000.0000.0000.0000.0000.1900.0004.00
649 mpls-te router-address 10.1.1.1