arubanetworks.aos_switch.arubaoss_dsnoop (1.7.0) — module

implements REST API for DHCP snooping

| "added in version" 2.4.0 of arubanetworks.aos_switch"

Authors: Sunil Veeramachaneni (@hpe)

preview | supported by community

Install collection

Install with ansible-galaxy collection install arubanetworks.aos_switch:==1.7.0


Add to requirements.yml

  collections:
    - name: arubanetworks.aos_switch
      version: 1.7.0

Description

This implements REST APIs which can be used to configure DHCP snooping

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
      - name: enable dsnoop
        arubaoss_dsnoop:
          dsnoop: true
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
      - name: disable dsnoop
        arubaoss_dsnoop:
          dsnoop: false
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
      - name: enable dsnoop option82 with untrusted-policy keep remote-id subnet-ip
        arubaoss_dsnoop:
          command: option_82
          is_dsnoop_option82_enabled: true
          remote_id: "DRI_SUBNET_IP"
          untrusted_policy: "DUP_KEEP"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
      - name: disable dsnoop option82
        arubaoss_dsnoop:
          command: option_82
          is_dsnoop_option82_enabled: false
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
      - name: add dsnoop authorized_server
        arubaoss_dsnoop:
          command: authorized_server
          server_ip: "30.0.0.1"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
      - name: remove dsnoop authorized_server
        arubaoss_dsnoop:
          command: authorized_server
          server_ip: "30.0.0.1"
          config: "delete"

Inputs

    
host:
    description: 'Specifies the DNS host name or address for connecting to the remote
      device over the specified transport. The value of host is used as the destination
      address for the transport.

      '
    type: str

port:
    description: 'Specifies the port to use when building the connection to the remote
      device.

      '
    type: int

config:
    choices:
    - create
    - delete
    default: create
    description: To configure or unconfigure the required command

dsnoop:
    choices:
    - true
    - false
    default: false
    description: To enable or disable DHCP snooping.
    required: false

command:
    choices:
    - authorized_server
    - option_82
    - dsnoop
    default: dsnoop
    description: To configure a specific feature on DHCP snooping
    required: false

timeout:
    description: 'Specifies the timeout in seconds for communicating with the network
      device for either connecting or sending commands. If the timeout is exceeded before
      the operation is completed, the module will error.

      '
    type: int

use_ssl:
    description: 'Configures use SSL (HTTPS) for access to the remote device.

      '
    type: bool

password:
    description: 'Specifies the password to use to authenticate the connection to the
      remote device. This value is used to authenticate the SSH session. If the value
      is not specified in the task, the value of environment variable ANSIBLE_NET_PASSWORD
      will be used instead.

      '
    type: str

provider:
    description: A dict object containing connection details.
    suboptions:
      api_version:
        default: None
        description: 'Configures (force) API version (vX.Y) for acces to the remote device.

          '
        type: str
      host:
        description: 'Specifies the DNS host name or address for connecting to the remote
          device over the specified transport. The value of host is used as the destination
          address for the transport.

          '
        type: str
      password:
        description: 'Specifies the password to use to authenticate the connection to
          the remote device. This value is used to authenticate the SSH session. If the
          value is not specified in the task, the value of environment variable ANSIBLE_NET_PASSWORD
          will be used instead.

          '
        type: str
      port:
        description: 'Specifies the port to use when building the connection to the remote
          device.

          '
        type: int
      ssh_keyfile:
        description: 'Specifies the SSH key to use to authenticate the connection to the
          remote device. This value is the path to the key used to authenticate the SSH
          session. If the value is not specified in the task, the value of environment
          variable ANSIBLE_NET_SSH_KEYFILE will be used instead.

          '
        type: path
      timeout:
        description: 'Specifies the timeout in seconds for communicating with the network
          device for either connecting or sending commands. If the timeout is exceeded
          before the operation is completed, the module will error.

          '
        type: int
      transport:
        default: aossapi
        description: 'Configures the transport (aossapi or network_cli) mode.

          '
        type: str
      use_proxy:
        default: false
        description: 'Configures use (Local) Proxy for access to the remote device.

          '
        type: bool
      use_ssl:
        description: 'Configures use SSL (HTTPS) for access to the remote device.

          '
        type: bool
      username:
        description: 'Configures the username to use to authenticate the connection to
          the remote device. This value is used to authenticate the SSH session. If the
          value is not specified in the task, the value of environment variable ANSIBLE_NET_USERNAME
          will be used instead.

          '
        type: str
      validate_certs:
        default: false
        description: 'Configures validation of certification for access to the remote
          device.

          '
        type: bool
    type: dict

username:
    description: 'Configures the username to use to authenticate the connection to the
      remote device. This value is used to authenticate the SSH session. If the value
      is not specified in the task, the value of environment variable ANSIBLE_NET_USERNAME
      will be used instead.

      '
    type: str

remote_id:
    choices:
    - DRI_MAC
    - DRI_SUBNET_IP
    - DRI_MGMT_IP
    default: DRI_MAC
    description: To select the address used as the Remote ID for option 82
    required: false

server_ip:
    default: ''
    description: Add an authorized DHCP server address.
    required: false

api_version:
    default: None
    description: 'Configures (force) API version (vX.Y) for acces to the remote device.

      '
    type: str

ssh_keyfile:
    description: 'Specifies the SSH key to use to authenticate the connection to the remote
      device. This value is the path to the key used to authenticate the SSH session.
      If the value is not specified in the task, the value of environment variable ANSIBLE_NET_SSH_KEYFILE
      will be used instead.

      '
    type: path

validate_certs:
    default: false
    description: 'Configures validation of certification for access to the remote device.

      '
    type: bool

untrusted_policy:
    choices:
    - DUP_DROP
    - DUP_KEEP
    - DUP_REPLACE
    default: DUP_DROP
    description: To set the policy for DHCP packets containing option 82 that are received
      on untrusted ports
    required: false

is_dsnoop_option82_enabled:
    choices:
    - true
    - false
    default: true
    description: To enable/disable adding option 82 relay information to DHCP client packets
      that are forwarded on trusted ports
    required: false