ospf – семейство команд для настройки протокола OSPF

В данном разделе используются следующие обозначения:

ospf> [no] enabled

Включить (или выключить, если no) OSPF.

ospf> [no] router-id <A.B.C.D>

Установить (или удалить, если no) идентификатор маршрутизатора для OSPF.

Пример:

ngfw> ospf> router-id 1.1.1.1

ospf> [no] abr-type (standard|ibm|cisco|shortcut)

Установить (или удалить, если no) вариант поведения пограничного маршрутизатора для OSPF.

Пример:

ngfw> ospf> abr-type standard

ospf> [no] auto-cost <value>

Установить (или удалить, если no) референсное значение полосы пропускания в Мбит/с для автоматического нормирования при расчете метрики маршрутов. Допустимые значения 1..4294967295.

Пример:

ngfw> ospf> auto-cost reference-bandwidth 10000

ospf> [no] log-adjacency-changes

Включить (или выключить, если no) логирование изменений соседства OSPF.

ospf> [no] log-adjacency-detail

Включить (или выключить, если no) подробное логирование изменений соседства OSPF.

ospf> [no] maximum-paths <value>

Установить (или удалить, если no) максимальное количество параллельных маршрутов для балансировки трафика. Допустимые значения 1..64.

Пример:

ngfw> ospf> maximum-paths 4

ospf> [no] passive-default

Включить (или выключить, если no) режим passive для всех интерфейсов по умолчанию.

ospf> timers [no] enabled

Включить (или выключить, если no) пользовательские настройки задержек, ограничивающих частоту выполнения перерасчёта SPF-метрик

ospf> timers [no] delay <value>

Установить (или удалить, если no) задержку перед началом вычислений SPF-алгоритма. Допустимые значения 0..600000.

Пример:

ngfw> ospf> timers delay 100

ospf> timers [no] initial-hold-time <value>

Установить (или удалить, если no) начальное значение интервала удержания результата. Допустимые значения 0..600000.

Пример:

ngfw> ospf> timers initial-hold-time 1

ospf> timers [no] maximum-hold-time <value>

Установить (или удалить, если no) максимальное время удержания между последовательными запусками перерасчёта SPF. Допустимые значения 0..600000.

Пример:

ngfw> ospf> timers maximum-hold-time 43

ospf> [no] max-lsa (administrative|on-shutdown|on-startup)

Включить (или выключить, если no) возможность анонсировать маршруты с бесконечной метрикой, согласно RFC 3137. Режимы активации данной опции:

ospf> max-lsa=['type'] [no] enabled

Включить (или выключить, если no) опцию для заданного режима активации.

ospf> max-lsa=['type'] [no] lsa-timer <value>

Установить (или удалить, если no) значение задержки. Допустимые значения зависят от выбранного режима активации опции:

Пример:

ngfw> ospf> max-lsa=['on-startup']> lsa-timer 15

ospf> [no] redistribution (bgp|connected|kernel|static)

Настроить (или выключить, если no) перераспределение маршрутов из разных источников.

ospf> redistribution=['protocol']> [no] metric <value>

Установить (или удалить, если no) метрику для маршрутов из другого протокола. Допустимые значения 0..16777214. Пример: ngfw> ospf> redistribution bgp metric 10

ospf> redistribution=['protocol']> [no] type (1|2)

Установить (или удалить, если no) тип метрики для маршрутов из другого протокола.

Пример:

ngfw> ospf> redistribution=['bgp']> type 1

ospf> redistribution=['protocol']> [no] route-map <route-map-name>

Применять (или не применять, если no) карту маршрутизации для маршрутов из другого протокола.

Пример:

ngfw> ospf> redistribution=['bgp']> route-map TEST

ospf> [no] default-metric <value>

Установить (или удалить, если no) метрику по умолчанию для маршрутов. Допустимые значения 0..16777214.

Пример:

ngfw> ospf> default-metric 100

ospf> default-originate [no] enabled

Включить (или выключить, если no) опцию анонсов маршрутов по умолчанию в сообщениях AS-External (Type 5) LSA.

ospf> default-originate [no] always

Включить (или выключить, если no) возможность анонсировать маршрут по умолчанию, даже если он отсутствует в таблице маршрутизации.

ospf> default-originate [no] metric <value>

Установить (или удалить, если no) метрику для маршрута по умолчанию. Допустимые значения 0..16777214.

Пример:

ngfw> ospf> default-originate metric 20

ospf> default-originate [no] metric-type (1|2)

Установить (или удалить, если no) тип метрики для маршрутов из другого протокола.

ospf> default-originate [no] route-map <route-map-name>

Применять (или не применять, если no) карту маршрутизации для маршрутов из другого протокола.

Пример:

ngfw> ospf> default-originate route-map TEST

ospf> [no] distance <value>

Установить (или удалить, если no) пользовательское значение административной дистанции для маршрутов, полученных через OSPF.

Пример:

ngfw> ospf> distance 10

ospf> distance-ex [no] enabled

Включить (или выключить, если no) расширенные настройки административной дистанции для маршрутов, полученных через OSPF.

Примечание: при включении данной настройки должен быть задан хотя бы один из следующих параметров: intra-area, inter-area, external.

ospf> distance-ex [no] intra-area <value>

Установить (или удалить, если no) административную дистанцию для маршрутов внутри зоны (intra-area). Допустимые значения 1..255.

Пример:

ngfw> ospf> distance-ex intra-area 1

ospf> distance-ex [no] inter-area <value>

Установить (или удалить, если no) административную дистанцию для маршрутов между зонами одной AS (inter-area). Допустимые значения 1..255.

Пример:

ngfw> ospf> distance-ex inter-area 1

ospf> distance-ex [no] external <value>

Установить (или удалить, если no) административную дистанцию для внешних маршрутов по отношению к AS (external) Допустимые значения 1..255.

Пример:

ngfw> ospf> distance-ex external 10

ospf> [no] graceful-restart

Включить (или выключить, если no) режим бесшовного перезапуска для OSPF.

ospf> [no] graceful-restart-period <period>

Установить (или удалить, если no) graceful тайм-аут, в течение которого маршрутная информация и информация о состоянии соединений (link state) должна сохраняться. Допустимые значения 0..1800.

Пример:

ngfw> ospf> graceful-restart-period 24

ospf> [no] area <area-id>

Создать (или удалить, если no) OSPF-область.

ospf> area=['area']> [no] type (NSSA|NSSA_NO_SUMMARY|STUB|STUB_NO_SUMMARY)

Установить (или удалить, если no) тип тупиковой OSPF-области.

Пример:

ngfw> ospf> area=['0']> type STUB

ospf> area=['area']> [no] suppress-fa

Включить (или выключить, если no) подавление внешних маршрутов в области NSSA.

ospf> area=['area']> [no] default-cost <cost>

Установить (или удалить, если no) метрику default summary-LSA, анонсируемых в тупиковые области. Допустимые значения 0..16777215.

Пример:

ngfw> ospf> area=['0']> default-cost 100

ospf> area=['area']> [no] shortcut

Включить (или выключить, если no) режим shortcut для области.

ospf> area=['area']> [no] authentication (MESSAGE_DIGEST|SIMPLE_PASSWORD)

Настроить (или выключить, если no) аутентификацию для данной области.

Пример:

ngfw> ospf> area=['0']> authentication MESSAGE_DIGEST

ospf> area=['area']> [no] range <A.B.C.D/M>

Добавить (или удалить, если no) диапазон адресов для области.

Пример:

ngfw> ospf> area=['0']> range 10.10.10.1/24

ospf> area=['area']> range=['range']> [no] cost <value>

Установить (или удалить, если no) метрику для диапазона адресов для области. Допустимые значения 0..16777215.

Пример:

ngfw> ospf> area=['0']> range=['10.10.10.1/24']> cost 100

ospf> area=['area']> range=['range']> [no] action (ADVERTISE|NOT_ADVERTISE|SUBSTITUTE)

Установить (или удалить, если no) действие для диапазона адресов области.

Пример:

ngfw> ospf> area=['0']> range=['10.10.10.1/24']> action ADVERTISE

ospf> area=['area']> range=['range']> [no] substitute <A.B.C.D/M>

Установить (или удалить, если no) префикс для диапазона адресов для области, который будет использоваться вместо range.

Атрибут используется и является обязательным, только если выбрано действие action = SUBSTITUTE.

Пример:

ngfw> ospf> area=['0']> range=['10.10.10.1/24']> substitute 192.168.10.1/24

Установить (или удалить, если no) IP-адреса настройки виртуальных соединений между OSPF-роутерами.

Пример:

ngfw> ospf> area=['1']> virtual-link 10.10.10.2

ospf> area=['area']> [no] import-list <access-list-name>

Установить (или удалить, если no) ACL для фильтрации импортированных маршрутов.

Пример:

ngfw> ospf> area=['1']> import-list TEST

ospf> area=['area']> [no] export-list <access-list-name>

Установить (или удалить, если no) ACL для фильтрации экспортируемых маршрутов.

Пример:

ngfw> ospf> area=['1']> export-list TEST

ospf> area=['area']> [no] inbound-filter-list <prefix-list-name>

Установить (или удалить, если no) список префиксов для фильтрации импортированных маршрутов.

Пример:

ngfw> ospf> area=['1']> inbound-filter-list TEST

ospf> area=['area']> [no] outbound-filter-list <prefix-list-name>

Установить (или удалить, если no) список префиксов для фильтрации экспортируемых маршрутов.

Пример:

ngfw> ospf> area=['1']> outbound-filter-list TEST

ospf> [no] interface <interface-name>

Настроить (или исключить из протокола OSPF, если no) OSPF для интерфейса.

ospf> interface=['name']> [no] area <area-id>

Установить (или удалить, если no) OSPF-область на интерфейсе.

Пример:

ngfw> ospf> interface=['Ge2']> area 1

ospf> interface=['name']> auth [no] enabled

Включить (или выключить, если no) аутентификацию для интерфейса.

Пример:

ngfw> ospf> interface=['Ge2']> auth enabled

ospf> interface=['name']> [no] auth type (MESSAGE_DIGEST|SIMPLE_PASSWORD)

Установить (или удалить, если no) тип аутентификации.

Пример:

ngfw> ospf> interface=['Ge2']> auth type MESSAGE_DIGEST

ospf> interface=['name']> [no] auth key <key>

Установить (или удалить, если no) ключ аутентификации. Строка не длиннее 16 символов.

ospf> interface=['name']> [no] auth key-id <id>

Установить (или удалить, если no) идентификатор ключа аутентификации. Допустимые значения 1..255.

ospf> interface=['name']> [no] auth password <password>

Установить (или удалить, если no) пароль аутентификации.

ospf> interface=['name']> [no] cost <cost>

Установить (или удалить, если no) стоимость интерфейса. Допустимые значения 0..65535.

Пример:

ngfw> ospf> interface=['Ge2']> cost 100

ospf> interface=['name']> [no] network (BROADCAST|NON_BROADCAST|POINT_TO_POINT|POINT_TO_MULTIPOINT)

Установить (или удалить, если no) тип сети для интерфейса.

Пример:

ngfw> ospf> interface=['Ge2']> network POINT_TO_POINT

ospf> interface=['name']> [no] priority <priority>

Установить (или удалить, если no) приоритет для интерфейса. Значение параметра используется при выборе Designated Router. Допустимые значения 0..255.

Пример:

ngfw> ospf> interface=['Ge2']> priority 43

ospf> interface=['name']> [no] passive-interface

Включить (или выключить, если no) режим passive для интерфейса.

ospf> interface=['name']> timers [no] enabled

Включить (или выключить, если no) настройки таймеров OSPF.

ospf> interface=['name']> timers [no] hello <interval>

Установить (или удалить, если no) интервал отправки сообщений hello. Допустимые значения 1..65535. Пример: ngfw> ospf> interface eth0 timers hello 10

ospf> interface=['name']> timers [no] dead <interval>

Установить (или удалить, если no) интервал ожидания сообщений hello. Допустимые значения 1..65535. Пример: ngfw> ospf> interface eth0 timers dead 40

ospf> interface=['name']> [no] retransmit <interval>

Установить (или удалить, если no) задержку, устанавливаемую при пересылке LSA, а также пакетов типа Database Description и Link State Request, для соседей на данном интерфейсе. Допустимые значения 1..65535.

Пример:

ngfw> ospf> interface=['Ge2']> retransmit 43

ospf> interface=['name']> [no] transmit-delay <delay>

Установить (или удалить, если no) величину, на которую увеличивается LSA age при отправке через данный интерфейс. Допустимые значения 1..65535.

Пример:

ngfw> ospf> interface=['Ge2']> transmit-delay 44

show ospf summary

Показать сводную информацию об OSPF.

Пример:

ngfw> show ospf summary
{
  "ospfInstance":1,
  "routerId":"2.2.2.2",
  "tosRoutesOnly":true,
  "rfc2328Conform":true,
  "spfScheduleDelayMsecs":0,
  "holdtimeMinMsecs":50,
  "holdtimeMaxMsecs":5000,
  "holdtimeMultplier":1,
  "spfLastExecutedMsecs":229391,
  "spfLastDurationMsecs":0,
  "lsaMinIntervalMsecs":5000,
  "lsaMinArrivalMsecs":1000,
  "writeMultiplier":20,
  "refreshTimerMsecs":10000,
  "maximumPaths":256,
  "preference":110,
  "lsaExternalCounter":1,
  "lsaExternalChecksum":19203,
  "lsaAsopaqueCounter":0,
  "lsaAsOpaqueChecksum":0,
  "attachedAreaCounter":1,
  "areas":{
    "0.0.0.0":{
      "backbone":true,
      "areaIfTotalCounter":1,
      "areaIfActiveCounter":1,
      "nbrFullAdjacentCounter":1,
      "authentication":"authenticationNone",
      "spfExecutedCounter":4,
      "lsaNumber":2,
      "lsaRouterNumber":2,
      "lsaRouterChecksum":45171,
      "lsaNetworkNumber":0,
      "lsaNetworkChecksum":0,
      "lsaSummaryNumber":0,
      "lsaSummaryChecksum":0,
      "lsaAsbrNumber":0,
      "lsaAsbrChecksum":0,
      "lsaNssaNumber":0,
      "lsaNssaChecksum":0,
      "lsaOpaqueLinkNumber":0,
      "lsaOpaqueLinkChecksum":0,
      "lsaOpaqueAreaNumber":0,
      "lsaOpaqueAreaChecksum":0
    }
  }
}

show ospf interfaces

Показать информацию об интерфейсах OSPF.

Пример:

ngfw> show ospf interfaces
{
  "ospfInstance":1,
  "interfaces":{
    "Ge2":{
      "ifUp":true,
      "ifIndex":8,
      "mtuBytes":1500,
      "bandwidthMbit":10000,
      "ifFlags":"<UP,BROADCAST,RUNNING>",
      "ospfEnabled":true,
      "ipAddress":"10.0.0.2",
      "ipAddressPrefixlen":30,
      "ospfIfType":"Broadcast",
      "localIfUsed":"10.0.0.3",
      "area":"0.0.0.0",
      "routerId":"2.2.2.2",
      "networkType":"POINTOPOINT",
      "cost":10,
      "transmitDelaySecs":1,
      "state":"Point-To-Point",
      "priority":1,
      "mcastMemberOspfAllRouters":true,
      "timerMsecs":10000,
      "timerDeadSecs":40,
      "timerWaitSecs":40,
      "timerRetransmitSecs":5,
      "timerHelloInMsecs":1553,
      "nbrCount":1,
      "nbrAdjacentCount":1
    }
  }
}

show ospf interface <interface-name>

Показать информацию об интерфейсе OSPF.

Пример:

ngfw> show ospf interface Ge2
{
  "ospfInstance":1,
  "interfaces":{
    "Ge2":{
      "ifUp":true,
      "ifIndex":8,
      "mtuBytes":1500,
      "bandwidthMbit":10000,
      "ifFlags":"<UP,BROADCAST,RUNNING>",
      "ospfEnabled":true,
      "ipAddress":"10.0.0.2",
      "ipAddressPrefixlen":30,
      "ospfIfType":"Broadcast",
      "localIfUsed":"10.0.0.3",
      "area":"0.0.0.0",
      "routerId":"2.2.2.2",
      "networkType":"POINTOPOINT",
      "cost":10,
      "transmitDelaySecs":1,
      "state":"Point-To-Point",
      "priority":1,
      "mcastMemberOspfAllRouters":true,
      "timerMsecs":10000,
      "timerDeadSecs":40,
      "timerWaitSecs":40,
      "timerRetransmitSecs":5,
      "timerHelloInMsecs":4815,
      "nbrCount":1,
      "nbrAdjacentCount":1
    }
  }
}

show ospf neighbors

Показать информацию о соседях OSPF.

Пример:

ngfw> show ospf neighbors
{
  "ospfInstance":1,
  "neighbors":{
    "1.1.1.1":[
      {
        "priority":128,
        "state":"Full/-",
        "nbrPriority":128,
        "nbrState":"Full/-",
        "converged":"Full",
        "role":"DROther",
        "upTimeInMsec":315139,
        "deadTimeMsecs":35150,
        "routerDeadIntervalTimerDueMsec":35150,
        "upTime":"5m15s",
        "deadTime":"35.150s",
        "address":"10.0.0.1",
        "ifaceAddress":"10.0.0.1",
        "ifaceName":"Ge2:10.0.0.2",
        "retransmitCounter":0,
        "linkStateRetransmissionListCounter":0,
        "requestCounter":0,
        "linkStateRequestListCounter":0,
        "dbSummaryCounter":0,
        "databaseSummaryListCounter":0
      }
    ]
  }
}

show ospf database

Показать базу данных OSPF.

Пример:

ngfw> show ospf database
{
  "ospfInstance":1,
  "routerId":"2.2.2.2",
  "areas":{
    "0.0.0.0":{
      "routerLinkStates":[
        {
          "lsId":"1.1.1.1",
          "advertisedRouter":"1.1.1.1",
          "lsaAge":547,
          "sequenceNumber":"80000003",
          "checksum":"33e9",
          "numOfRouterLinks":2
        },
        {
          "lsId":"2.2.2.2",
          "advertisedRouter":"2.2.2.2",
          "lsaAge":546,
          "sequenceNumber":"80000004",
          "checksum":"7c8a",
          "numOfRouterLinks":2
        }
      ],
      "routerLinkStatesCount":2
    }
  },
  "asExternalLinkStates":[
    {
      "lsId":"0.0.0.0",
      "advertisedRouter":"1.1.1.1",
      "lsaAge":652,
      "sequenceNumber":"80000001",
      "checksum":"4b03",
      "metricType":"E1",
      "route":"0.0.0.0/0",
      "tag":0
    }
  ],
  "asExternalLinkStatesCount":1
}

show ospf table

Показать информацию о состоянии OSPF-таблицы.

Пример:

ngfw> show ospf table

OSPF Instance: 1

============ OSPF network routing table ============
N    10.10.2.0/24          [10000] area: 0.0.0.0
                           directly attached to port2

============ OSPF router routing table =============

============ OSPF external routing table ===========

| Prev | Home | Next |