pub struct Device {Show 31 fields
pub addresses: Option<Vec<String>>,
pub id: Option<String>,
pub node_id: Option<String>,
pub user: Option<String>,
pub name: Option<String>,
pub hostname: Option<String>,
pub client_version: Option<String>,
pub update_available: Option<bool>,
pub os: Option<String>,
pub created: Option<String>,
pub connected_to_control: Option<bool>,
pub last_seen: Option<String>,
pub key_expiry_disabled: Option<bool>,
pub expires: Option<String>,
pub authorized: Option<bool>,
pub is_external: Option<bool>,
pub multiple_connections: Option<bool>,
pub machine_key: Option<String>,
pub node_key: Option<String>,
pub blocks_incoming_connections: Option<bool>,
pub enabled_routes: Option<Vec<String>>,
pub advertised_routes: Option<Vec<String>>,
pub client_connectivity: Option<ClientConnectivity>,
pub tags: Option<Vec<String>>,
pub tailnet_lock_error: Option<String>,
pub tailnet_lock_key: Option<String>,
pub ssh_enabled: Option<bool>,
pub posture_identity: Option<PostureIdentity>,
pub is_ephemeral: Option<bool>,
pub distro: Option<Distro>,
pub unknown: Unknown,
}Expand description
A machine in a tailnet.
nodeId is the identifier to use; id is the older numeric one, still
accepted wherever a device is named and still sent back here.
Fields§
§addresses: Option<Vec<String>>Both families: 100.x.y.z and fd7a:115c:….
id: Option<String>§node_id: Option<String>§user: Option<String>Who registered it. For an untagged device this is its owner; a tagged device is owned by its tags instead.
name: Option<String>The MagicDNS name.
hostname: Option<String>The machine name shown in the admin console.
client_version: Option<String>Empty for a device shared in from another tailnet.
update_available: Option<bool>§os: Option<String>§created: Option<String>§connected_to_control: Option<bool>§last_seen: Option<String>Omitted for a device that has never been online, and for one that is online now.
key_expiry_disabled: Option<bool>§expires: Option<String>§is_external: Option<bool>true for a device shared into this tailnet rather than a member
of it.
multiple_connections: Option<bool>Several devices using one node key, which usually means node state was copied between machines.
machine_key: Option<String>A public key, not a secret, and of no use to any call here.
node_key: Option<String>A public key, and the one a locked tailnet signs to admit a node.
blocks_incoming_connections: Option<bool>§enabled_routes: Option<Vec<String>>The advertised routes an admin has approved.
advertised_routes: Option<Vec<String>>The routes this device asks to expose, approved or not.
client_connectivity: Option<ClientConnectivity>§tailnet_lock_error: Option<String>Only populated where tailnet lock is on.
tailnet_lock_key: Option<String>Present whether or not tailnet lock is on: every node generates one.
ssh_enabled: Option<bool>§posture_identity: Option<PostureIdentity>§is_ephemeral: Option<bool>§distro: Option<Distro>§unknown: UnknownEverything the description did not mention, kept so that a control plane ahead of this build still answers usefully.