TESTES DE BLOQUEIO DE CONTENÇÃO (AÇÃO DE BLOQUEIO)

TESTE 01:

Para criar uma contenção para bloquear o tráfego da VLAN 100 na porta 1 do switch 00:00:00:00:00:00:00:01, execute o seguinte comando:

curl -H 'Content-type: application/json' -X POST http://127.0.0.1:8181/api/hackinsdn/containment/v1 -d '{"switch": "00:00:00:00:00:00:00:01", "interface": 1, "match": {"vlan": 100}}'

Resultado: "contention created successfully ID 6a3c2d9afdd94136"

Remover o bloqueio (somente pelo ID da regra):

curl -H 'Content-type: application/json' -X DELETE http://127.0.0.1:8181/api/hackinsdn/containment/v1 -d '{"block_id": "6a3c2d9afdd94136"}'

Resultado: "contention deleted successfully ID 6a3c2d9afdd94136"

TESTE 02:

Para criar uma contenção para bloquear o tráfego do IPv4 10.1.0.254 na VLAN 100 na porta 1 do switch 00:00:00:00:00:00:00:01, execute o seguinte comando:

curl -H 'Content-type: application/json' -X POST http://127.0.0.1:8181/api/hackinsdn/containment/v1 -d '{"switch": "00:00:00:00:00:00:00:01", "interface": 1, "match": {"vlan": 100, "ipv4_dst": "10.1.0.254"}}'

Resultado: "contention created successfully ID 85b47cd567bb4b44"

TESTE 03:

Para criar uma contenção para bloquear o tráfego do IPv4 10.1.0.254 na VLAN 100 e protocolo UDP na porta 1 do switch 00:00:00:00:00:00:00:01, execute o seguinte comando:

curl -H 'Content-type: application/json' -X POST http://127.0.0.1:8181/api/hackinsdn/containment/v1 -d '{"switch": "00:00:00:00:00:00:00:01", "interface": 1, "match": {"vlan": 100, "ipv4_dst": "10.1.0.254", "ip_proto":17}}'

Resultado: "contention created successfully ID 8b47dda543cc4ad3"

TESTE 04:

Para listar as contenções existentes, execute o seguinte comando (duas opções):

curl -s http://127.0.0.1:8181/api/hackinsdn/containment/v1/ ou curl -X GET -H 'Content-type: application/json' http://127.0.0.1:8181/api/hackinsdn/containment/v1/

TESTE 05:

O NAPP não permite que regras duplicadas sejam criadas:

Adicionar regra:

curl -H 'Content-type: application/json' -X POST http://127.0.0.1:8181/api/hackinsdn/containment/v1 -d '{"switch": "00:00:00:00:00:00:00:01", "interface": 1, "match": {"vlan": 100}}'

Resultado: "contention created successfully ID 6a3c2d9afdd94136"

Adicionar a mesma regra novamente:

curl -H 'Content-type: application/json' -X POST http://127.0.0.1:8181/api/hackinsdn/containment/v1 -d '{"switch": "00:00:00:00:00:00:00:01", "interface": 1, "match": {"vlan": 100}}'

Resultado: "RULE already exists in the list. Contentation doesn’t created"

TESTES com IPV6:

Além dos testes apresentados, é possível criar regras também com match para IPV6. Para isso, considere a VLAN101. É possível também adicionar no match o "ipv6_src" ou "ipv6_dst".