📦 Estrutura de dados JSON
Endpoint: /trafstat
http://[ip]:[porta]/trafstat
Este endpoint retorna informações agregadas de tráfego de rede baseadas em ASN e endereços IP, permitindo filtrar dados por número de fluxos, ASN e outras informações.
Descrição dos Parâmetros:
timestart
: Define o início do intervalo de tempo (em timestamp). Se não for informado, utiliza o valor da variávelcollection_interval
subtraído da hora atual.timestop
: Define o final do intervalo de tempo (em timestamp). Se não for informado, utiliza a hora atual.fil
: Filtro a ser aplicado nos dados. Neste exemplo, ele pode ser um ASN específico ou um IP (ex.:fil=ip 1.1.1.1
).lines
: Número de linhas a serem retornadas.aggregation
: Método de agregação dos dados, comosrcas
(agregação pelo ASN de origem).order
: Define a ordenação dos dados, com base em um campo selecionado (Exemplo,bytes
).direction
: Direção do tráfego (src
oudst
).ignoreasn
: Indica se o ASN deve ser ignorado (y
/n
Arquivo ignore-asn.json).).source
: Define a origem dos dados
URL Exemplo 1
http://[ip]:[porta]/trafstat?timestart=1726788385914×top=1726788625914&fil=any&lines=1&aggregation=srcas&order=bytes&direction=src&ignoreasn=y&source=Borda
URL Exemplo 2
http://[ip]:[porta]/trafstat?fil=ip%201.1.1.1&lines=1&aggregation=srcas&order=bytes&direction=src&ignoreasn=y&source=Borda
Saída
[
{
"ASN": {
"def": {
"number": "0",
"organization": "Private"
},
"dst": {
"number": 0,
"organization": "Private"
},
"src": {
"number": 13335,
"organization": "CLOUDFLARENET, US"
}
},
"City": {
"def": "",
"dst": "",
"src": ""
},
"Continent Name": {
"def": "",
"dst": "",
"src": ""
},
"Country Name": {
"def": "",
"dst": "",
"src": ""
},
"ISO Code": {
"def": "",
"dst": "",
"src": ""
},
"Latitude": {
"def": "",
"dst": "",
"src": ""
},
"Longitude": {
"def": "",
"dst": "",
"src": ""
},
"UF": {
"def": "",
"dst": "",
"src": ""
},
"aggr_flows": 2,
"asn_def": 13335,
"asn_def_name": "CLOUDFLARENET, US",
"asn_dst": 0,
"asn_src": 13335,
"bgp_next_hop": "0.0.0.0",
"bpp": 214,
"bps": 58436,
"bytes": 438272,
"def_addr": "0.0.0.0",
"dst_addr": "0.0.0.0",
"dst_addr_nat": "",
"dst_net_mask": "/0",
"dst_port": 0,
"dst_port_nat": "",
"first": 1726792800,
"input_snmp": 0,
"input_snmp_desc": null,
"input_snmp_name": null,
"ip_next_hop": "0.0.0.0",
"label": "<none>",
"last": 1726792860,
"mac_dst_in": "",
"mac_dst_out": "",
"mac_src_in": "",
"mac_src_out": "",
"output_snmp": 0,
"output_snmp_desc": null,
"output_snmp_name": null,
"packets": 2048,
"proto": "Any",
"src_addr": "0.0.0.0",
"src_addr_nat": "",
"src_net_mask": "/0",
"src_port": 0,
"src_port_nat": "",
"tcp_flags": "........",
"tos": 0
}
]
Descrição dos Campos
ASN
: Informações sobre os ASN envolvidos.def
: ASN padrão.dst
: ASN de destino.src
: ASN de origem, neste exemplo, o Google (15169) ou Cloudflare (13335).aggr_flows
: Número total de fluxos agregados.bpp
: Bytes por pacote.bps
: Bits por segundo.bytes
: Total de bytes trafegados.packets
: Número total de pacotes.proto
: Protocolo (ex.: TCP, UDP, etc.).src_addr
: Endereço de origem (anonimamente como0.0.0.0
).dst_addr
: Endereço de destino (anonimamente como0.0.0.0
).
Endpoint: /favpie
http://[ip]:[porta]/favpie
Este endpoint retorna informações sobre tráfego de rede agregadas contida no arquivo fav-asn-prefix-graphs.json,
Descrição dos Parâmetros:
timestart
: Define o início do intervalo de tempo (em timestamp). Se não for informado, utiliza o valor da variávelcollection_interval
subtraído da hora atual.timestop
: Define o final do intervalo de tempo (em timestamp). Se não for informado, utiliza a hora atual.fil
: Filtro a ser aplicado nos dados.lines
: Define o número de linhas a serem retornadas.aggregation
: Método de agregação dos dados.order
: Define a ordenação dos dados, com base em um campo selecionado.direction
: Direção do tráfego (src
oudst
).ignoreasn
: Define se os dados de ASN devem ser ignorados ou não. (Arquivo ignore-asn.json).source
: Define a origem dos dados.
A resposta JSON contém informações sobre o tráfego de rede, agrupadas por empresas ou serviços, com o número de bytes e a taxa de bits por segundo (bps). Abaixo estão três exemplos de saídas.
URL Exemplo 1
http://[ip]:[porta]/favpie?timestart=1726788385914×top=1726788625914&fil=any&lines=1&aggregation=nextas&order=bytes&direction=src&ignoreasn=n&source=Borda
Saída Geral
[
{
"bps": 2356627,
"bytes": 26217472,
"name_info": "Garena"
},
{
"bps": 2991787,
"bytes": 26926080,
"name_info": "Microsoft"
},
{
"bps": 5970243,
"bytes": 28358656,
"name_info": "Netflix"
},
{
"bps": 8984600,
"bytes": 95461376,
"name_info": "Apple"
}
]
URL Exemplo 2
http://[ip]:[porta]/favpie?fil=any&lines=1&aggregation=nextas&order=bytes&direction=src&ignoreasn=n&source=Borda
Saída
[
{
"bps": 122115,
"bytes": 3434496,
"name_info": "Level3"
},
{
"bps": 1734763,
"bytes": 62234624,
"name_info": "Valve Corp."
},
{
"bps": 1960401,
"bytes": 83072000,
"name_info": "Garena"
},
{
"bps": 3781231,
"bytes": 118163456,
"name_info": "Netflix"
},
]
URL Exemplo 3
http://[ip]:[porta]/favpie?fil=as 15169&lines=1&aggregation=nextas&order=bytes&direction=src&ignoreasn=n&source=Borda
Saída
[
{
"bps": 255097900,
"bytes": 3730806784,
"name_info": "Google"
}
]
Descrição dos Campos
bps
: Taxa de bits por segundo (bps).bytes
: Quantidade total de bytes trafegados.name_info
: Nome da empresa ou serviço associado ao tráfego (ex.: “Google”, “Netflix”, “Akamai”).
Endpoint: /traffile
http://[ip]:[porta]/traffile
Este endpoint retorna informações de tráfego de rede com base em arquivos de fluxo, permitindo a filtragem por ASN, endereço IP, país, entre outros. Abaixo estão exemplos de chamadas de API, suas saídas JSON e a explicação dos parâmetros.
Descrição dos Parâmetros:
timestart
: Define o início do intervalo de tempo (em timestamp). Se não for informado, utiliza o valor da variávelcollection_interval
subtraído da hora atual.timestop
: Define o final do intervalo de tempo (em timestamp). Se não for informado, utiliza a hora atual.fil
: Filtro a ser aplicado nos dados.aggregation
: Método de agregação dos dados.order
: Define a ordenação dos dados, com base no campo selecionado.source
: Define a origem dos dados.
URL Exemplo 1
http://[ip]:[porta]/traffile?timestart=1726788385914×top=1726788625914&fil=dst ip 8.8.8.8&aggregation=router&order=bytes&source=Borda
URL Exemplo 2
http://[ip]:[porta]/traffile?fil=any&aggregation=router&order=bytes&source=Borda
A resposta JSON contém informações detalhadas sobre o tráfego de rede. Abaixo estão dois exemplos de saídas, um com dados gerais e outro com filtragem por endereço IP.
[
{
"ASN": {
"def": {
"number": "0",
"organization": "Private"
},
"dst": {
"number": 0,
"organization": "Private"
},
"src": {
"number": 0,
"organization": "Private"
}
},
"City": {
"def": "",
"dst": "",
"src": ""
},
"Continent Name": {
"def": "",
"dst": "",
"src": ""
},
"Country Name": {
"def": "",
"dst": "",
"src": ""
},
"ISO Code": {
"def": "",
"dst": "",
"src": ""
},
"Latitude": {
"def": "",
"dst": "",
"src": ""
},
"Longitude": {
"def": "",
"dst": "",
"src": ""
},
"UF": {
"def": "",
"dst": "",
"src": ""
},
"aggr_flows": 24,
"asn_def": 0,
"asn_def_name": null,
"asn_dst": 0,
"asn_src": 0,
"bgp_next_hop": "0.0.0.0",
"bpp": 100,
"bps": 330820,
"bytes": 2481152,
"def_addr": "0.0.0.0",
"dst_addr": "0.0.0.0",
"dst_addr_nat": "",
"dst_net_mask": "/0",
"dst_port": 0,
"dst_port_nat": "",
"first": 1726788300,
"input_snmp": 0,
"input_snmp_desc": null,
"input_snmp_name": null,
"ip_next_hop": "0.0.0.0",
"label": "<none>",
"last": 1726788360,
"mac_dst_in": "",
"mac_dst_out": "",
"mac_src_in": "",
"mac_src_out": "",
"output_snmp": 0,
"output_snmp_desc": null,
"output_snmp_name": null,
"packets": 24576,
"proto": "Any",
"src_addr": "0.0.0.0",
"src_addr_nat": "",
"src_net_mask": "/0",
"src_port": 0,
"src_port_nat": "",
"tcp_flags": "........",
"tos": 0
}
]
Descrição dos Campos
ASN
: Informações sobre os ASN envolvidos.def
: ASN padrão.dst
: ASN de destino.src
: ASN de origem.City
: Informações sobre a cidade (vazio se não disponível).Continent Name
: Nome do continente (vazio se não disponível).Country Name
: Nome do país (vazio se não disponível).ISO Code
: Código ISO do país (vazio se não disponível).Latitude
: Latitude da localização (vazio se não disponível).Longitude
: Longitude da localização (vazio se não disponível).UF
: Unidade Federativa (estado) (vazio se não disponível).aggr_flows
: Número total de fluxos agregados.bpp
: Bytes por pacote.bps
: Bits por segundo.bytes
: Total de bytes.packets
: Número total de pacotes.proto
: Protocolo (ex.: TCP, UDP, etc.).src_addr
: Endereço de origem (pode estar anonimamente como0.0.0.0
).dst_addr
: Endereço de destino (pode estar anonimamente como0.0.0.0
).
Endpoint: /trafinterface
http://[ip]:[porta]/trafinterface
Este endpoint retorna informações de tráfego de rede baseadas em interfaces de rede. Ele oferece parâmetros para filtrar dados por interface, número de linhas e direção do tráfego.
Descrição dos Parâmetros:
timestart
: Define o início do intervalo de tempo (em timestamp). Se não for informado, utiliza o valor da variávelcollection_interval
subtraído da hora atual.timestop
: Define o final do intervalo de tempo (em timestamp). Se não for informado, utiliza a hora atual.fil
: Filtro a ser aplicado nos dados.lines
: Número de linhas a serem retornadas.min
: Valor mínimo para inclusão no resultado.direction
: Direção do tráfego, podendo sersrc
(origem) oudst
(destino).source
: Define a origem dos dados.
Exemplos
URL Exemplo 1
http://[ip]:[porta]/trafinterface?fil=any&lines=5&min=0&direction=src&source=Borda
URL Exemplo 2
http://[ip]:[porta]/trafinterface?timestart=1726788385914×top=1726788625914&fil=any&lines=5&min=0&direction=src&source=Borda
A resposta JSON contém informações sobre o tráfego de rede em diferentes interfaces. Abaixo estão dois exemplos de saídas, uma com um único timestamp e outra com múltiplos intervalos de tempo.
Único Intervalo de Tempo
[
{
"interface": "40GE0/1/49.2114 (OPERADORA_IPV4)",
"datatime": [
1726789440
],
"bps": [
9614664226
]
},
{
"interface": "40GE0/1/49.2115 (OPERADORA_IPV6)",
"datatime": [
1726789440
],
"bps": [
668149760
]
}
]
Múltiplos Intervalos de Tempo
[
{
"interface": "40GE0/1/49.2114 (OPERADORA_IPV4)",
"datatime": [
1726788300,
1726788360,
1726788420,
1726788480,
1726788540
],
"bps": [
9421421636,
8984884156,
8960525244,
9507422345,
9446268245
]
},
{
"interface": "40GE0/1/49.2115 (OPERADORA_IPV6)",
"datatime": [
1726788300,
1726788360,
1726788420,
1726788480,
1726788540
],
"bps": [
645386923,
516382993,
588439142,
575840393,
609231804
]
}
]
Descrição dos Campos
interface
: Nome da interface de rede e seu identificador.datatime
: Lista de timestamps que representam o tempo de cada medição em segundos.bps
: Lista de valores de bits por segundo (bps) medidos durante os diferentes intervalos de tempo.
Cada objeto no array contém os dados agregados de uma interface de rede, com seus respectivos valores de tráfego em bits por segundo (bps
) e os tempos (datatime
) correspondentes.
Endpoint: /trafasn
http://[ip]:[porta]/trafasn
Este endpoint retorna informações de tráfego de rede baseadas em sistemas autônomos (ASN). Ele oferece parâmetros para filtrar dados por número de linhas/resultados, agregação, e outras opções relevantes ao tráfego de rede.
Descrição dos Parâmetros:
timestart
: Define o início do intervalo de tempo (em timestamp). Se não for informado, utiliza o valor da variávelcollection_interval
subtraído da hora atual.timestop
: Define o final do intervalo de tempo (em timestamp). Se não for informado, utiliza a hora atual.fil
: Filtro a ser aplicado nos dados.lines
: Número de linhas/resultados a serem retornadas.min
: Valor mínimo para inclusão no resultado.ignoreasn
: Indica se o ASN deve ser ignorado ou não (Arquivo ignore-asn.json).source
: Define a origem dos dados.
Exemplos
URL Exemplo 1
http://[ip]:[porta]/trafasn?timestart=1726788385914×top=1726788625914&fil=any&lines=5&min=0&ignoreasn=n&source=Borda
URL Exemplo 2
http://[ip]:[porta]/trafasn?fil=any&lines=5&min=0&ignoreasn=n&source=Borda
A resposta JSON contém informações sobre o tráfego de rede para diferentes ASN (Sistemas Autônomos). Abaixo estão dois exemplos de saídas, uma com múltiplos intervalos de tempo e outra com um único intervalo.
Múltiplos Intervalos de Tempo
[
{
"asn": "15169 - GOOGLE",
"bps": [
612436787,
554084625,
587778185,
602698001
],
"datatime": [
1726788300,
1726788360,
1726788420,
1726788480
]
},
{
"asn": "396986 - BYTEDANCE",
"bps": [
440557978,
401984034,
439798579,
406524587
],
"datatime": [
1726788300,
1726788360,
1726788420,
1726788480
]
}
]
Único Intervalo de Tempo
[
{
"asn": "15169 - GOOGLE",
"bps": [
568579140
],
"datatime": [
1726788540
]
},
{
"asn": "396986 - BYTEDANCE",
"bps": [
434271983
],
"datatime": [
1726788540
]
}
]
Descrição dos Campos
asn
: Número de Sistema Autônomo (ASN) e seu nome associado.bps
: Lista de valores de bits por segundo (bps) medidos durante os diferentes intervalos de tempo.datatime
: Lista de timestamps que representam o tempo de cada medição em segundos.
Cada objeto no array contém os dados agregados de um ASN, com seus respectivos valores de tráfego em bits por segundo (bps
) e os tempos (datatime
) correspondentes.
Endpoint: /trafsubnet
http://[ip]:[porta]/trafsubnet
Este endpoint retorna informações de tráfego de rede baseadas em prefixos de sub-rede. Ele oferece parâmetros para filtrar dados por prefixo, máscara de sub-rede e opções de agregação. Abaixo estão exemplos de chamadas de API, suas saídas JSON e a explicação dos parâmetros.
Descrição dos Parâmetros:
timestart
: Define o início do intervalo de tempo (em timestamp). Se não for informado, utiliza o valor da variávelcollection_interval
subtraído da hora atual.timestop
: Define o final do intervalo de tempo (em timestamp). Se não for informado, utiliza a hora atual.fil
: Filtro a ser aplicado nos dados.prefix
: Prefixo de rede no formato CIDR.mask
: Máscara de sub-rede para divisão.aggregation
: Método de agregação dos dados.order
: Define a ordem de organização dos dados, com base no campo selecionado.direction
: Direção do tráfego, podendo serin
(entrada) ouout
(saída).source
: Define a origem dos dados.
Exemplos
URL Exemplo 1
http://[ip]:[porta]/trafsubnet?timestart=1726785443664×top=1726787243664&fil=any&prefix=10.0.68.0/22&mask=24&aggregation=router&order=bytes&direction=in&source=Borda
A resposta JSON deste endpoint contém informações sobre o CIDR dividido por mask. Abaixo estão exemplos de saídas JSON para IPv4 e IPv6.
URL Exemplo 2
http://[ip]:[porta]/trafsubnet?fil=any&prefix=10.0.68.0/22&mask=24&aggregation=router&order=bytes&direction=in&source=Borda
Saída para IPv4
{
"prefixos": [
{
"sequencial": 1,
"prefixo": "10.0.68.0/24",
"in_packets": 24623104,
"in_bytes": 23884635136,
"aggr_flows": 10040
},
{
"sequencial": 2,
"prefixo": "10.0.69.0/24",
"in_packets": 1844224,
"in_bytes": 1973950464,
"aggr_flows": 609
},
{
"sequencial": 3,
"prefixo": "10.0.70.0/24",
"in_packets": 2002944,
"in_bytes": 1551982592,
"aggr_flows": 1058
},
{
"sequencial": 4,
"prefixo": "10.0.71.0/24",
"in_packets": 1803264,
"in_bytes": 1824263168,
"aggr_flows": 672
}
]
}
URL Exemplo 3
http://[ip]:[porta]/trafsubnet?fil=any&prefix=2001:db8::/32&mask=34&aggregation=router&order=bytes&direction=in&source=Borda
Saída para IPv6
{
"prefixos": [
{
"sequencial": 1,
"prefixo": "2001:db8::/34",
"in_packets": 11264,
"in_bytes": 843776,
"aggr_flows": 11
},
{
"sequencial": 2,
"prefixo": "2001:db8:4000::/34",
"in_packets": 0,
"in_bytes": 0,
"aggr_flows": 0
},
{
"sequencial": 3,
"prefixo": "2001:db8:8000::/34",
"in_packets": 4832256,
"in_bytes": 5288214528,
"aggr_flows": 1254
},
{
"sequencial": 4,
"prefixo": "2001:db8:c000::/34",
"in_packets": 0,
"in_bytes": 0,
"aggr_flows": 0
}
]
}
Endpoint: /trafnet8
http://[ip]:[porta]/trafnet8
Este endpoint retorna informações de tráfego de toda a rede IPv4 (0.0.0.0/0) segmentado em prefixos /8
.
Descrição dos Parâmetros:
timestart
: Define o início do intervalo de tempo (em timestamp). Se não for informado, utiliza o valor da variávelcollection_interval
subtraído da hora atual.timestop
: Define o final do intervalo de tempo (em timestamp). Se não for informado, utiliza a hora atual.fil
: Filtro a ser aplicado nos dados. Neste exemplo.net8start
: Início do intervalo de prefixos /8.net8stop
: Fim do intervalo de prefixos /8.aggregation
: Método de agregação dos dados.order
: Define a ordem de organização dos dados, com base no campo selecionado.direction
: Direção do tráfego, podendo serin
(entrada) ouout
(saída).source
: Define a origem dos dados.
Exemplos
URL Exemplo 1
http://[ip]:[porta]/trafnet8?timestart=1726785443664×top=1726787243664&fil=any&net8start=186&net8stop=187&aggregation=router&order=bytes&direction=in&source=Borda
URL Exemplo 2
http://[ip]:[porta]/trafnet8?fil=any&net8start=180&net8stop=188&aggregation=router&order=bytes&direction=in&source=Borda
A resposta JSON de ambos os endpoints será semelhante, contendo informações agregadas sobre o tráfego de rede para os prefixos especificados. Abaixo está um exemplo de resposta:
{
"prefixos": [
{
"sequencial": 186,
"prefixo": "186.0.0.0/8",
"in_packets": 1222082560,
"in_bytes": 1186731710464,
"aggr_flows": 469254
},
{
"sequencial": 187,
"prefixo": "187.0.0.0/8",
"in_packets": 69889024,
"in_bytes": 71390141440,
"aggr_flows": 19808
}
]
}
Endpoint: /hardware
http://[ip]:[porta]/hardware
Este endpoint retorna informações detalhadas sobre o hardware do sistema, incluindo dados da CPU, disco, memória e sistema operacional. Abaixo está uma explicação de cada campo da saída JSON:
Descrição dos Campos
cpu
cpu_count
: Número total de núcleos da CPU (neste exemplo, 12 núcleos).cpu_freq
: Frequência atual da CPU em MHz (neste caso, 2298 MHz).cpu_percent_per_core
: Lista do uso percentual de cada núcleo da CPU. Cada índice da lista corresponde a um núcleo (todos com 0.0% de uso neste exemplo).cpu_percent_total
: Uso total da CPU em porcentagem (0.0% no momento da requisição).
disk
disk_partitions
: Lista de partições de disco.device
: Dispositivo do disco (neste caso,/dev/sda1
).fstype
: Tipo de sistema de arquivos utilizado (aqui,ext4
).mountpoint
: Ponto de montagem da partição (neste exemplo,/
).disk_usage
: Informações sobre o uso do disco.free
: Espaço livre no disco em bytes.percent
: Percentual de espaço utilizado.total
: Tamanho total do disco em bytes.used
: Espaço utilizado em bytes.
memory
available
: Memória disponível em bytes.percent
: Percentual de uso da memória.total
: Memória total do sistema em bytes.used
: Memória utilizada em bytes.
system
kernel_version
: Versão do kernel do sistema operacional.motherboard
: Informação da placa-mãe (neste exemplo, não disponível).os_release
: Informações sobre a distribuição do sistema operacional.BUG_REPORT_URL
: URL para reportar bugs.HOME_URL
: URL principal do sistema operacional.ID
: Identificador da distribuição.NAME
: Nome da distribuição.PRETTY_NAME
: Nome mais descritivo da versão do sistema.SUPPORT_URL
: URL para suporte.VERSION
: Versão do sistema.VERSION_CODENAME
: Nome de código da versão.VERSION_ID
: Identificador de versão.tools_versions
: Versões dos principais utilitários de rede:nfcapd
,nfdump
,sfcapd
: Todos com a versão “1.7.4-release”.uptime
: Tempo de atividade contínua do sistema (neste exemplo, 2 dias e 4 horas).
http://[ip]:[porta]/hardware
{
"cpu": {
"cpu_count": 12,
"cpu_freq": 2298,
"cpu_percent_per_core": [
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0
],
"cpu_percent_total": 0.0
},
"disk": {
"disk_partitions": [
{
"device": "/dev/sda1",
"fstype": "ext4",
"mountpoint": "/"
}
],
"disk_usage": {
"free": 28065935360,
"percent": 9.3,
"total": 32626225152,
"used": 2876801024
}
},
"memory": {
"available": 7792734208,
"percent": 6.4,
"total": 8324440064,
"used": 294854656
},
"system": {
"kernel_version": "6.1.0-25-amd64",
"motherboard": "N/A",
"os_release": {
"BUG_REPORT_URL": "https://bugs.debian.org/",
"HOME_URL": "https://www.debian.org/",
"ID": "debian",
"NAME": "Debian GNU/Linux",
"PRETTY_NAME": "Debian GNU/Linux 12 (bookworm)",
"SUPPORT_URL": "https://www.debian.org/support",
"VERSION": "12 (bookworm)",
"VERSION_CODENAME": "bookworm",
"VERSION_ID": "12"
},
"tools_versions": {
"nfcapd": "1.7.4-release",
"nfdump": "1.7.4-release",
"sfcapd": "1.7.4-release"
},
"uptime": "2 dias, 04:42"
}
}
Endpoint: /filter/ports
http://[ip]:[porta]/filter/ports
Este endpoint retorna uma lista de filtros baseados em portas de rede e protocolos (TCP, UDP, ICMP, GRE) usados para diversos serviços de rede. presente no arquivo fav-services-graphs.json
Saída JSON
[
{
"description": "DNS (UDP/TCP)",
"filter": "DIRECTION port 53 AND (proto udp OR proto tcp)"
},
{
"description": "MySQL (TCP)",
"filter": "DIRECTION port 3306 AND (proto tcp)"
},
{
"description": "POP E-Mail (TCP)",
"filter": "DIRECTION port 110 OR DIRECTION port 143 OR DIRECTION port 995 AND (proto tcp)"
},
{
"description": "Ping (ICMP)",
"filter": "proto icmp"
},
{
"description": "SNMP (UDP)",
"filter": "DIRECTION port 161 OR DIRECTION port 162 AND (proto udp)"
},
{
"description": "Tunel GRE (GRE)",
"filter": "proto gre"
}
]
Endpoint: /filter/custom
http://[ip]:[porta]filter/custom
Este endpoint retorna uma lista de filtro do arquivo custom-filters.json.
Saída JSON
[
{
"filter": "dst port 21 and (flags F or flags R)",
"name": "Força bruta FTP"
},
{
"filter": "dst port 8291 and (flags F or flags R)",
"name": "Força bruta Winbox"
},
{
"filter": "dst port 2000 and (flags F or flags R)",
"name": "Força bruta Mikrotik Btest"
},
{
"filter": "dst port 53 and (flags F or flags R)",
"name": "Força bruta DNS"
}
]
Descrição dos Campos
filter
: Filtro.name
: Nome do filtro.
http://186.250.168.49:5000/listpeer/${source} http://186.250.168.49:5000/listpeer/Borda
Descrição dos Campos
description
: Descrição do serviço de rede ou protocolo correspondente ao filtro (ex.: “DNS”, “FTP”, “Web HTTP/HTTPS”).filter
: Expressão lógica que define o filtro de tráfego, contendo a porta de rede, a direção (entrada/saída) e os protocolos associados (TCP, UDP, ICMP, etc.).
Endpoint: /disktest
http://[ip]:[porta]/disktest
Realiza teste de velocidade de leitura e escrita em disco.
{
"read_speed": "2 GB/s",
"write_speed": "988 MB/s"
}
Endpoint: /conf
http://[ip]:[porta]/conf
Este endpoint retorna o arquivo config.json.
Endpoint: /conf/fav/as_prefix_only
http://[ip]:[porta]/conf/fav/as_prefix_only
Este endpoint retorna uma lista de filtros do arquivo fav-asn-prefix-graphs.json.
Saída JSON
[
{
"description": "Youtube",
"filter": {
"as": [
"36040"
],
"prefix": [
"34.104.32.0/21",
"34.126.224.0/20",
"34.187.0.0/24",
"64.15.112.0/20",
"70.32.133.0/24",
"104.237.160.0/19",
"136.22.128.0/19",
"136.117.0.0/24",
"142.250.34.0/24",
"185.192.248.0/26",
"185.192.249.0/24",
"185.192.251.192/26",
"190.210.140.128/27",
"194.122.80.0/22",
"207.126.144.0/20",
"208.65.152.0/22",
"208.76.215.0/24",
"208.117.224.0/19",
"209.85.137.0/24"
]
}
},
{
"description": "Google Cloud",
"filter": " as 396982"
},
{
"description": "Google",
"filter": " as 15169"
}
]
Descrição dos Campos
description
: Descrição do serviço ou empresa relacionado ao ASN e/ou prefixo (ex.: “Youtube”, “Google Cloud”, “Google”).filter
: Filtro aplicado, que pode conter apenas o número do ASN ou uma combinação de ASN e prefixos.as
: Lista de sistemas autônomos (ASN) associados ao serviço.prefix
: Lista de prefixos de rede no formato CIDR que estão associados ao serviço.
Endpoint: /conf/my_prefix
http://[ip]:[porta]/conf/my_prefix
Este endpoint retorna uma lista de prefixos de rede, tanto IPv4 quanto IPv6 do arquivo my-prefix.json.
Saída JSON
[
{
"description": "IPv4 10.0.68.0/24",
"filter": "DIRECTION net 10.0.68.0/24"
},
{
"description": "IPv4 10.0.69.0/24",
"filter": "DIRECTION net 10.0.69.0/24"
},
{
"description": "IPv6 2001db8::/33",
"filter": "DIRECTION net 2001db8::/33"
},
{
"description": "IPv6 2001db8:8000::/33",
"filter": "DIRECTION net 2001db8:8000::/33"
}
]
Descrição dos Campos
description
: Descrição.filter
: Filtro utilizado para definir o tráfego de rede baseado no prefixo de rede. O filtro utiliza o termoDIRECTION net
para especificar a direção do tráfego na rede.
Endpoint: /conf/fav/as_prefix_int
http://[ip]:[porta]/conf/fav/as_prefix_int
Este endpoint retorna uma lista de filtro do arquivo my-prefix-int.json.
Saída JSON
[
{
"description": "Servidores",
"filter": "DIRECTION net 192.168.168.0/26 OR DIRECTION net 2001:db8:bebe:cafe::/64"
}
]
Descrição dos Campos
description
: Descrição.filter
: Filtro.
Endpoint: /listpeer/$source
http://[ip]:[porta]/listpeer/{source}
Este endpoint retorna uma lista de peers BGP, arquivo peers.json.
Exemplo
http://[ip]:[porta]/listpeer/Borda
Saída
[
{
"filter": "bgpnext ip 10.50.50.6",
"name": "PROVEDOR X AS123456789 (10.50.50.6)"
},
{
"filter": "bgpnext ip FD00:BACB:50:252::2",
"name": "PROVEDOR X AS123456789 (FD00:BACB:50:252::2)"
}
]
Descrição dos Campos
filter
: O filtro para identificar o tráfego BGP associado ao peer, baseado no próximo salto (bgpnext ip
).name
: O nome descritivo do peer, incluindo o sistema autônomo (ASN) e o endereço IP.
Endpoint: /all_asn_data/{asn}
http://[ip]:[porta]/all_asn_data/{asn}
Este endpoint retorna dados detalhados sobre um sistema autônomo (ASN), incluindo informações sobre prefixos IP, upstreams, downstreams, e mais. Abaixo está um exemplo de saída JSON e a explicação dos campos.
Exemplo de Chamada
http://[ip]:[porta]/all_asn_data/123456789
Saída JSON
{
"asn_info": {
"asn": 123456789,
"country_code": "BR",
"date_allocated": "2018-06-11 00:00:00",
"date_updated": "2024-09-17 07:23:26",
"name": "Remontti Telecomunicacoes Ltda",
"rir_name": "Lacnic",
"website": null
},
"downstreams": {
"ip_downstreams": [
{
"asn": 987654321,
"country_code": "BR",
"ipv4": "Sim",
"ipv6": "Não",
"name": "CHAVES EIRELI"
}
],
"total_ipv4_downstreams": 1,
"total_ipv6_downstreams": 0
},
"ixs": {
"total_ixs": 0
},
"prefixes": {
"ip_prefixes": [
{
"ip_version": "IPv4",
"prefix": "10.0.196.0/22",
"roa_status": "Valid"
},
{
"ip_version": "IPv6",
"prefix": "2001:db8::/32",
"roa_status": "Valid"
}
],
"total_ipv4_prefixes": 7,
"total_ipv6_prefixes": 7
},
"upstreams": {
"ip_upstreams": [
{
"asn": 9999999,
"country_code": "BR",
"ipv4": "Sim",
"ipv6": "Sim",
"name": "Madruga Telecomunicacoes Ltda"
}
],
"total_ipv4_upstreams": 1,
"total_ipv6_upstreams": 1
}
}
Descrição dos Campos
asn_info
asn
: Número do Sistema Autônomo.country_code
: Código do país associado ao ASN.date_allocated
: Data de alocação do ASN.date_updated
: Data da última atualização do ASN.name
: Nome da organização associada ao ASN.rir_name
: Nome do Registro Regional da Internet (RIR) que alocou o ASN.website
: Website da organização (se disponível).
downstreams
ip_downstreams
: Lista de sistemas autônomos que são downstreams deste ASN.asn
: Número do ASN downstream.ipv4
: Indica se há suporte para IPv4.ipv6
: Indica se há suporte para IPv6.name
: Nome da organização downstream.total_ipv4_downstreams
: Total de downstreams com suporte a IPv4.total_ipv6_downstreams
: Total de downstreams com suporte a IPv6.
ixs
total_ixs
: Número total de Internet Exchange Points (IXs) associados ao ASN.
prefixes
ip_prefixes
: Lista de prefixos de rede (IPv4 e IPv6) associados ao ASN.ip_version
: Versão do IP (IPv4 ou IPv6).prefix
: Bloco de IP no formato CIDR.roa_status
: Status do ROA (Route Origin Authorization) associado ao prefixo.total_ipv4_prefixes
: Número total de prefixos IPv4 associados ao ASN.total_ipv6_prefixes
: Número total de prefixos IPv6 associados ao ASN.
upstreams
ip_upstreams
: Lista de sistemas autônomos que são upstreams deste ASN.asn
: Número do ASN upstream.ipv4
: Indica se há suporte para IPv4.ipv6
: Indica se há suporte para IPv6.name
: Nome da organização upstream.total_ipv4_upstreams
: Número total de upstreams com suporte a IPv4.total_ipv6_upstreams
: Número total de upstreams com suporte a IPv6.
Este endpoint fornece uma visão completa das informações relacionadas a um ASN específico, incluindo upstreams, downstreams, prefixos e status de ROA.
Endpoint: /api/db/traf
Imprime a saída de data_traffic_analysis.json
/api/db/traf/{description}
Imprime a saída dos dados coletatados por data_traffic_analysis.json
/api/db/traf/{start}/{stop}/{description}
/api/db/traf/{start}/{stop}/{description}
start e stop podem serem informados como timestamp
ou padrão AAAA-MM-DD HH:MM:SS
Exemplo:
/api/db/traf/1729195187432/1729198787432/Tráfego%20suspeito
/api/db/traf/2024-10-17 11:00:00/2024-10-17 12:00:00/Tráfego suspeito
[
{
"aggr_flows": 1,
"bpp": 619,
"bps": 84514,
"bytes": 633856,
"packets": 1024,
"timestamp": 1729195200
},
{
"aggr_flows": 2,
"bpp": 579,
"bps": 158242,
"bytes": 1186816,
"packets": 2048,
"timestamp": 1729195560
},
...
]
Endpoint: /api/test
Teste Conectividade do servidor de e-mail
/api/test/email/connection
Teste de envio de email
/api/test/email/<mensagem>/<e-mail destino>
/api/test/email/Mensagem/empresa1@empresa1.com
Teste de envio de mensagem para o telegram
/api/test/telegram/<mensagem>
/api/test/telegram/<mensagem>/<chat id>
/api/test/telegram/<mensagem>
/api/test/telegram/<mensagem>/<chat id>