netlab.config

Config can be passed to netlab.async_client.NetlabClient using environment variables, using a json file on your system, or by passing a dict explicitly.

Classes

NetlabCipherListEnum(value[, names, module, ...])

Preconfigured Netlab cipher lists.

NetlabServerConfig

Passed to netlab.async_client.NetlabClient to configure the connection to a server.

NetlabServerEnvConfig

Each of the above configuration options can be specified as environment variables.

class netlab.config.NetlabCipherListEnum(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Preconfigured Netlab cipher lists.

PYTHON = 'PYTHON'

Default netlab cipher list.

class netlab.config.NetlabServerConfig

Passed to netlab.async_client.NetlabClient to configure the connection to a server.

Example

config = {
    "host": "192.168.1.10",
    "user": "administrator",
    "token": "S25GWP5P2247CMRDNLTCNKATT49KSGEDDPXMTM6A",
    "port": 9000,
}

async with NetlabClient(config=config) as client:
    ...
host: str

IP Address or hostname of remote NETLAB+ API.

message_byte_limit: int

The maximum size of a NETLAB+ message.

port: int

Port of remote NETLAB+ API. Usually 9000.

server_hostname: str | None

The hostname that ssl is configured to use. Only required if it is diffrent from ‘host’.

ssl: Literal['default', 'noverify'] | SSLContext

You may pass ssl.SSLContext for complete control over ssl. ‘self_signed’ and ‘noverify’ are equivilant.

ssl_ciphers: None | NetlabCipherListEnum | str

ssl ciphers to use. This can be a value from NetlabCipherListEnum or an openssl cipher list.

token: str

Token obtained from NETLAB+ system.

user: str

Currently 'administrator' is the only user account allowed to use the API.

class netlab.config.NetlabServerEnvConfig

Each of the above configuration options can be specified as environment variables.

NETLAB_CONFIG: str

Folder which contains the ‘config.json’.

NETLAB_CONFIG_HOST: str

IP Address or hostname of remote NETLAB+ API.

NETLAB_CONFIG_PORT: str

Port of remote NETLAB+ API.

NETLAB_CONFIG_TOKEN: str

Token obtained from NETLAB+ system.

NETLAB_CONFIG_USER: str

User account ID from NETLAB+ system.