Políticas de Roteamento

Estas são as APIs para cadastro de políticas de roteamento do roteador e do grupo de unidades

As APIs são autenticadas usando OAuth2, ver documentação de autenticação

Buscar uma política de roteamento

GET /api/v1/cdm/routers/router_id/fw/policy-routing/rules/id

API para buscar uma política de roteamento do roteador

GET /api/v1/cdm/groups/group_id/fw/policy-routing/rules/id

API para buscar uma política de roteamento do grupo de unidades

Exemplo de requisição

GET /api/v1/cdm/routers/AyUHTfrYDw3Yp6W9m3ppC/fw/policy-routing/rules/Aoyc5feKgmFGhgESFupoL HTTP/1.1
Host: cdm.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": "Aoyc5feKgmFGhgESFupoL",
  "rules_group_id": "Aoyc5feKgmFGhgESF5d2f",
  "description": "Policy Routing 01",
  "interface": "wan1",
  "source_ip": "192.168.16.1",
  "dest_any": true,
  "protocol": "tcp",
  "port": 8080,
  "priority": 5
}

Dados para criação de uma política de roteamento

GET /api/v1/cdm/routers/router_id/fw/policy-routing/rules/new

API de busca de dados necessários para criação de uma política de roteamento do roteador

GET /api/v1/cdm/groups/group_id/fw/policy-routing/rules/new

API de busca de dados necessários para criação de uma política de roteamento do grupo de unidades

Exemplo de requisição

GET /api/v1/cdm/groups/BF9HTfrYDw3Yp6W9m3ppC/fw/policy-routing/rules/new HTTP/1.1
Host: cdm.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json

{
  "rules_groups": [
    {
      "id": "AyUKCnMcDYhYQzUz1MHp7",
      "name": "Grupo01"
    },
    {
      "id": "AyUKDTkbRaStLrsRUodVk",
      "name": "Grupo02"
    },
    {
      "id": "AyUKDtevfEmBi1tG99Hv3",
      "name": "Grupo03"
    },
  ]
}

Criar uma política de roteamento

POST /api/v1/cdm/routers/router_id/fw/policy-routing/rules

API para criação de uma nova política de roteamento do roteador

POST /api/v1/cdm/groups/group_id/fw/policy-routing/rules

API para criação de uma nova política de roteamento do grupo de unidades

Exemplo de requisição

POST /api/v1/cdm/routers/AyUHTfrYDw3Yp6W9m3ppC/fw/policy-routing/rules HTTP/1.1
Host: cdm.exemplo.com
Content-Type: application/json
Accept: application/json
Authorization: Bearer <Access-Token>

{
  "rules_group_id": "Aoyc5feKgmFGhgESF5d2f",
  "description": "Policy Routing 01",
  "interface": "wan1",
  "source_ip": "192.168.16.1",
  "dest_any": true,
  "protocol": "tcp",
  "port": 8080,
  "priority": 5
}

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": "Aoyc5feKgmFGhgESFupoL",
  "rules_group_id": "Aoyc5feKgmFGhgESF5d2f",
  "description": "Policy Routing 01",
  "interface": "wan1",
  "source_ip": "192.168.16.1",
  "dest_any": true,
  "protocol": "tcp",
  "port": 8080,
  "priority": 5
}

Atualizar uma política de roteamento

PUT /api/v1/cdm/routers/router_id/fw/policy-routing/rules/id

API para atualização de uma política de roteamento do roteador

PUT /api/v1/cdm/groups/group_id/fw/policy-routing/rules/id

API para atualização de uma política de roteamento do grupo de unidades

Exemplo de requisição

PUT /api/v1/cdm/routers/AyUHTfrYDw3Yp6W9m3ppC/fw/policy-routing/rules/Aoyc5feKgmFGhgESFupoL HTTP/1.1
Host: cdm.exemplo.com
Content-Type: application/json
Accept: application/json
Authorization: Bearer <Access-Token>

{
  "port": 8089,
  "priority": 3
}

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": "Aoyc5feKgmFGhgESFupoL",
  "rules_group_id": "Aoyc5feKgmFGhgESF5d2f",
  "description": "Policy Routing 01",
  "interface": "wan1",
  "source_ip": "192.168.16.1",
  "dest_any": true,
  "protocol": "tcp",
  "port": 8089,
  "priority": 3
}

Apagar uma política de roteamento

DELETE /api/v1/cdm/routers/router_id/fw/policy-routing/rules/id

API para apagar uma política de roteamento do roteador

DELETE /api/v1/cdm/groups/group_id/fw/policy-routing/rules/id

API para apagar uma política de roteamento do grupo de unidades

Exemplo de requisição

DELETE /api/v1/cdm/routers/AyUHTfrYDw3Yp6W9m3ppC/fw/policy-routing/rules/AyUJUnsgV8FPifMrGRLwx HTTP/1.1
Host: cdm.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json

Formato dos dados

Parâmetros da url

idstring Identificador da política de roteamento
router_id Identificador do roteador ao qual a política de roteamento pertence
group_id Identificador do grupo de unidades ao qual a política de roteamento pertence

Requisição

rules_group_idstringrequerido Grupo de regras ao qual a política de roteamento pertence
descriptionstringrequerido único Descrição sobre a política de roteamento
interfacestringrequerido Interface de saída do tráfego da política de roteamento Interfaces possíveis: * wan1 * wan2
prioritystringrequerido Prioridade da política de roteamento Valor mínimo: 1
Valor máximo: 99
protocolstringrequerido Protocolo sobre o qual a política de roteamento atua Protocolos possíveis: * tcp * udp * tcp/udp * ip * icmp * pptp * ipsec

Os protocos TCP, UDP e TCP/UDP estão associados a utilização de portas. Dessa forma, ao cadastrar uma política de roteamento utilizando esses protocolos, é necessário utilizar uma porta (port) ou uma faixa de portas (port_range)


A política de roteamento pode ser aplicada sobre uma porta específica (port) ou sobre uma faixa de portas (port_range)

ATENÇÃO: a política de roteamento pode ter somente uma das formas preenchida

portinteger

Porta para a qual a política de roteamento será aplicada

Valor mínimo: 1
Valor máximo: 65000

port_range.startinteger

Início da faixa de portas para a qual a política de roteamento será aplicada

Valor mínimo: 1
Valor máximo: 65000

OBS: Se o campo start estiver preenchido, o campo end deve, obrigatoriamente, estar preenchido também

port_range.endinteger

Final da faixa de portas para a qual a política de roteamento será aplicada

Valor mínimo: 1
Valor máximo: 65000

OBS: Se o campo end estiver preenchido, o campo start deve, obrigatoriamente, estar preenchido também


A política de roteamento será aplicada sobre uma origem que pode ser definida de três formas: como um endereço único (source_ip), uma rede (source_net) ou todos os endereços (source_any=true)

ATENÇÃO: a política de roteamento deve ter somente uma das formas de origem preenchida

source_anyboolean

A política de roteamento será aplicada para todas as origens

Valor padrão: false

source_ipstring

IP de origem para o qual a política de roteamento será aplicada

Exemplo: 192.168.0.5

source_netstring

Rede de origem para a qual a política de roteamento será aplicada

Exemplo: 192.168.0.0/24

A política de roteamento será aplicada sobre um destino, que pode ser definido de três formas: como um endereço único (dest_ip), uma rede (dest_net) ou todos os endereços (dest_any=true)

ATENÇÃO: a política de roteamento deve ter somente uma das formas de destino preenchida

dest_anystring

A política de roteamento será aplicada para todos os destinos

Valor padrão: false

dest_ipstring

IP de destino para o qual a política de roteamento será aplicada

Exemplo: 192.168.0.5


dest_netstring

Rede de destino para o qual a política de roteamento será aplicada

Exemplo: 192.168.16.0/24

Resposta

rules_group_idstring Grupo de regras ao qual a política de roteamento pertence
descriptionstring Descrição sobre a política de roteamento
interfacestring Interface de saída do tráfego da política de roteamento Interfaces possíveis: * wan1 * wan2
prioritystring Prioridade da política de roteamento
protocolstring Protocolo sobre o qual a política de roteamento atua Protocolos possíveis: * tcp * udp * tcp/udp * ip * icmp * pptp * ipsec
portinteger Porta para a qual a política de roteamento será aplicada
port_range.startinteger Início da faixa de portas para a qual a política de roteamento será aplicada
port_range.endinteger Final da faixa de portas para a qual a política de roteamento será aplicada
source_anyboolean A política de roteamento será aplicada para todas as origens
source_ipstring IP de origem para o qual a política de roteamento será aplicada
source_netstring Rede de origem para a qual a política de roteamento será aplicada
dest_anystring A política de roteamento será aplicada para todos os destinos
dest_ipstring IP de destino para o qual a política de roteamento será aplicada
dest_netstring Rede de destino para o qual a política de roteamento será aplicada
rules_groupsarray<object> Grupos de políticas de roteamento que pertencem ao roteador