mirror of
https://github.com/zerotier/ZeroTierOne.git
synced 2025-09-08 07:42:55 +02:00
66 lines
2.5 KiB
Protocol Buffer
66 lines
2.5 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package pbmessages;
|
|
|
|
message NetworkChange {
|
|
message NetworkChangeMetadata {
|
|
string trace_id = 1;
|
|
string controller_id = 2;
|
|
}
|
|
|
|
message IPRange {
|
|
string start_ip = 1; // Start of the IP range
|
|
string end_ip = 2; // End of the IP range
|
|
}
|
|
|
|
message Route {
|
|
string target = 1; // Target IP or network
|
|
optional string via = 2; // Optional next hop IP
|
|
}
|
|
|
|
message DNS {
|
|
string domain = 1; // Search domain
|
|
repeated string nameservers = 2; // List of nameservers
|
|
}
|
|
|
|
message IPV4AssignMode {
|
|
bool zt = 1; // Whether ZeroTier is used for IPv4 assignment
|
|
}
|
|
|
|
message IPv6AssignMode {
|
|
bool six_plane = 1; // Whether 6plane is used for IPv6 assignment
|
|
bool rfc4193 = 2; // Whether RFC 4193 is used for IPv6 assignment
|
|
bool zt = 3; // Whether ZeroTier is used for IPv6 assignment
|
|
}
|
|
|
|
message Network {
|
|
string network_id = 1;
|
|
string capabilities = 2; // JSON string of capabilities
|
|
uint64 creation_time = 3; // Unix timestamp in milliseconds
|
|
bool enable_broadcast = 4; // Whether broadcast is enabled
|
|
repeated IPRange assignment_pools = 5; // List of IP ranges for assignment
|
|
uint32 mtu = 6; // Maximum Transmission Unit
|
|
uint32 multicast_limit = 7; // Limit for multicast messages
|
|
optional string name = 8; // Name of the network
|
|
bool is_private = 9; // Whether the network is private
|
|
uint32 remote_trace_level = 10; // Remote trace level
|
|
optional string remote_trace_target = 11; // Remote trace target
|
|
uint64 revision = 12; // Revision number
|
|
repeated Route routes = 13; // List of routes
|
|
string rules = 14; // JSON string of rules
|
|
optional string tags = 15; // JSON string of tags
|
|
IPV4AssignMode ipv4_assign_mode = 16; // IPv4 assignment mode
|
|
IPv6AssignMode ipv6_assign_mode = 17; // IPv6 assignment mode
|
|
optional DNS dns = 18; // DNS configuration
|
|
bool sso_enabled = 19; // Whether Single Sign-On is enabled
|
|
optional string sso_client_id = 20; // SSO client ID
|
|
optional string sso_authorization_endpoint = 21; // SSO authorization endpoint
|
|
optional string sso_issuer = 22; // SSO issuer
|
|
optional string sso_provider = 23; // SSO provider
|
|
string rules_source = 24; // source code for rules
|
|
}
|
|
|
|
optional Network old = 1;
|
|
optional Network new = 2;
|
|
optional NetworkChangeMetadata metadata = 3;
|
|
}
|