EntityDB holds all network allocations and associated information.
Go to file
pravda 035c0718df Upload files to "/" 2024-02-28 00:56:48 +00:00
LICENSE.md Add autistic gay penis licsense version three 2021-11-07 18:56:27 +02:00
README.md Fix invalid JSON in README.md 2021-10-31 13:27:21 +02:00
bandura.json add new router 2023-04-12 23:29:32 +02:00
build_maxlen_filter.sh Extend maxlen script by YAML building function 2023-07-02 17:44:04 +02:00
deavmi.json fix deavmi 2022-12-29 18:23:24 +01:00
pravda.json Upload files to "/" 2024-02-28 00:56:48 +00:00
reddawn.json fix && format 2022-12-29 18:14:29 +01:00
rutra.json Spacing stuff 2023-12-10 23:08:24 +03:00
schema solve problem `Every 'entity' has its data stored in a JSON file named as 'UNIQUE.json' where UNIQUE is any unique identifier (UUID/hash/name etc.).` 2023-01-29 13:23:43 +01:00
skiqqy.json fix && format 2022-12-29 18:14:29 +01:00
test.sh use another for each method and check for device 2023-01-29 13:41:41 +01:00
ty3r0x.json Fixed discrepancies 2023-04-15 19:10:20 +03:00

README.md

entitydb

EntityDB holds all network allocations and associated information.

Format

Every 'entity' has its data stored in a JSON file named as 'UNIQUE.json' where UNIQUE is any unique identifier (UUID/hash/name etc.).

Content of entity (data)

The data should be a JSON object with a anonymous top-level object and "route" as only object. "route" should be a list of all routes provided by the entity with a required list of devices named "device".

"device" must contain at least one device that is reachable. A router is commonly used as the only object for the network as it is necessary in most setups.

Every device can contain the type of the device (router, generic, server), along with the list of services as "service". When no type is defined, generic is assumed.

Services must have a type (eg. tcp, udp, http, rsync, git) and at least one endpoint in the endpoints list.

Every object may contain a optional description, except lists.

Descriptions should not be used other than for describing things in a human-readable form.

Example

Here's a example that you may modify to your needs.

{
  "route": {
    "fdaa:bbcc:ddee::/48": {
      "description": "My home network",
      "device": {
        "fdaa:bbcc:ddee::1": {
          "type": "router",
          "description": "My custom router running BIRD"
        },
        "fdaa:bbcc:ddee::5": {
          "description": "Electronic mail endpoint",
          "service": [
            {
              "type": "smtp",
              "endpoint": [
                { "port": 25 }
              ]
            },
            {
              "description": "Super-secret authentication gateway",
              "type": "kerberos",
              "endpoint": [
                { "port": 89 }
              ]
            },
            {
              "type": "imap",
              "endpoint": [
                { "port": 143 }
              ]
            }
          ]
        }
      }
    },
    "fdcc:ba11:b00b::/48": {
      "device": {
        "fdcc:ba11:b00b::1": {
          "type": "router"
        }
      }
    }
  }
}