mirror of
https://github.com/slackhq/nebula.git
synced 2025-01-25 17:48:25 +00:00
85ec807b7e
We are currently testing changes for multiport (related to #497) that use fields 6 and 7 in the protobuf. Reserved these fields so that when we eventually open the PR we are backwards compatible with any future changes.
80 lines
1.4 KiB
Protocol Buffer
80 lines
1.4 KiB
Protocol Buffer
syntax = "proto3";
|
|
package nebula;
|
|
|
|
option go_package = "github.com/slackhq/nebula";
|
|
|
|
message NebulaMeta {
|
|
enum MessageType {
|
|
None = 0;
|
|
HostQuery = 1;
|
|
HostQueryReply = 2;
|
|
HostUpdateNotification = 3;
|
|
HostMovedNotification = 4;
|
|
HostPunchNotification = 5;
|
|
HostWhoami = 6;
|
|
HostWhoamiReply = 7;
|
|
PathCheck = 8;
|
|
PathCheckReply = 9;
|
|
}
|
|
|
|
MessageType Type = 1;
|
|
NebulaMetaDetails Details = 2;
|
|
}
|
|
|
|
message NebulaMetaDetails {
|
|
uint32 VpnIp = 1;
|
|
repeated Ip4AndPort Ip4AndPorts = 2;
|
|
repeated Ip6AndPort Ip6AndPorts = 4;
|
|
repeated uint32 RelayVpnIp = 5;
|
|
uint32 counter = 3;
|
|
}
|
|
|
|
message Ip4AndPort {
|
|
uint32 Ip = 1;
|
|
uint32 Port = 2;
|
|
}
|
|
|
|
message Ip6AndPort {
|
|
uint64 Hi = 1;
|
|
uint64 Lo = 2;
|
|
uint32 Port = 3;
|
|
}
|
|
|
|
message NebulaPing {
|
|
enum MessageType {
|
|
Ping = 0;
|
|
Reply = 1;
|
|
}
|
|
|
|
MessageType Type = 1;
|
|
uint64 Time = 2;
|
|
}
|
|
|
|
message NebulaHandshake {
|
|
NebulaHandshakeDetails Details = 1;
|
|
bytes Hmac = 2;
|
|
}
|
|
|
|
message NebulaHandshakeDetails {
|
|
bytes Cert = 1;
|
|
uint32 InitiatorIndex = 2;
|
|
uint32 ResponderIndex = 3;
|
|
uint64 Cookie = 4;
|
|
uint64 Time = 5;
|
|
// reserved for WIP multiport
|
|
reserved 6, 7;
|
|
}
|
|
|
|
message NebulaControl {
|
|
enum MessageType {
|
|
None = 0;
|
|
CreateRelayRequest = 1;
|
|
CreateRelayResponse = 2;
|
|
}
|
|
MessageType Type = 1;
|
|
|
|
uint32 InitiatorRelayIndex = 2;
|
|
uint32 ResponderRelayIndex = 3;
|
|
uint32 RelayToIp = 4;
|
|
uint32 RelayFromIp = 5;
|
|
}
|