junipernetworks.junos.junos_ospf (0.0.3) — module

Junos OSPFv2 resource module.

| "added in version" 1.0.0 of junipernetworks.junos"

Authors: Daniel Mellado (@dmellado)

| supported by network

Install collection

Install with ansible-galaxy collection install junipernetworks.junos:==0.0.3


Add to requirements.yml

  collections:
    - name: junipernetworks.junos
      version: 0.0.3

Description

This module manages global OSPFv2 configuration on devices running Juniper JUNOS.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Using merged
#
# Before state
# ------------
#
# admin# show protocols ospf

- name: Merge Junos OSPF config
  junos_ospf:
    config:
      - router_id: 10.200.16.75
        reference_bandwidth: 10g
        areas:
          - area_id: 0.0.0.100
            area_range: 10.200.16.0/24
            stub:
              default_metric: 100
              set: true
            interfaces:
              - name: so-0/0/0.0
                priority: 3
                metric: 5
                flood_reduction: false
                passive: true
                bandwidth_based_metrics:
                  - bandwidth: 1g
                    metric: 5
                  - bandwidth: 10g
                    metric: 40
                timers:
                  dead_interval: 4
                  hello_interval: 2
                  poll_interval: 2
                  retransmit_interval: 2
        rfc1583compatibility: false
    state: merged

Inputs

    
state:
    choices:
    - merged
    - replaced
    - overridden
    - deleted
    - gathered
    default: merged
    description:
    - The state the configuration should be left in.
    type: str

config:
    description: A list of OSPF process configuration.
    elements: dict
    suboptions:
      areas:
        description:
        - A list of OSPF areas' configuration.
        elements: dict
        suboptions:
          area_id:
            description:
            - The Area ID as an integer or IP Address.
            required: true
            type: str
          area_range:
            description:
            - Configure an address range for the area.
            type: str
          interfaces:
            description:
            - List of interfaces in this area.
            elements: dict
            suboptions:
              authentication:
                suboptions:
                  type:
                    description:
                    - Type of authentication to use.
                    type: dict
                type: dict
              bandwidth_based_metrics:
                elements: dict
                suboptions:
                  bandwidth:
                    choices:
                    - 1g
                    - 10g
                    description:
                    - BW to apply metric to.
                    type: str
                  metric:
                    description: null
                    type: int
                type: list
              flood_reduction:
                description:
                - Enable flood reduction.
                type: bool
              metric:
                description:
                - Metric applied to the interface.
                type: int
              name:
                description:
                - Name of the interface.
                required: true
                type: str
              passive:
                type: bool
              priority:
                description:
                - Priority for the interface.
                type: int
              timers:
                suboptions:
                  dead_interval:
                    description:
                    - Dead interval (seconds).
                    type: int
                  hello_interval:
                    description:
                    - Hello interval (seconds).
                    type: int
                  poll_interval:
                    description:
                    - Poll interval (seconds).
                    type: int
                  retransmit_interval:
                    description:
                    - Retransmit interval (seconds).
                    type: int
                  transit_delay:
                    description:
                    - Transit delay (seconds).
                    type: int
                type: dict
            type: list
          stub:
            description:
            - Settings for configuring the area as a stub.
            suboptions:
              default_metric:
                description:
                - Metric for the default route in this area.
                type: int
              set:
                description:
                - Configure the area as a stub.
                type: bool
            type: dict
        type: list
      external_preference:
        description:
        - Preference of external routes.
        type: int
      overload:
        suboptions:
          timeout:
            description:
            - Time after which overload mode is reset (seconds).
            type: int
        type: dict
      preference:
        description:
        - Preference of internal routes.
        type: int
      prefix_export_limit:
        description:
        - Maximum number of external prefixes that can be exported.
        type: int
      reference_bandwidth:
        choices:
        - 1g
        - 10g
        description:
        - Bandwidth for calculating metric defaults.
        type: str
      rfc1583compatibility:
        description:
        - Set RFC1583 compatibility
        type: bool
      router_id:
        description:
        - The OSPF router id.
        required: true
        type: str
      spf_options:
        description:
        - Configure options for SPF.
        suboptions:
          delay:
            description:
            - Time to wait before running an SPF (seconds).
            type: int
          holddown:
            description:
            - Time to hold down before running an SPF (seconds).
            type: int
          rapid_runs:
            description:
            - Number of maximum rapid SPF runs before holddown (seconds).
            type: int
        type: dict
    type: list

Outputs

after:
  description: The resulting configuration model invocation.
  returned: when changed
  sample: "The configuration returned will always be in the same format\n of the parameters\
    \ above.\n"
before:
  description: The configuration prior to the model invocation.
  returned: always
  sample: "The configuration returned will always be in the same format\n of the parameters\
    \ above.\n"
commands:
  description: The set of commands pushed to the remote device.
  returned: always
  sample:
  - command 1
  - command 2
  - command 3
  type: list