-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathservice_network_manager.proto
More file actions
64 lines (53 loc) · 2.71 KB
/
service_network_manager.proto
File metadata and controls
64 lines (53 loc) · 2.71 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
syntax = "proto3";
package tool_cluster.v4;
import "google/protobuf/wrappers.proto";
import "shared_device.proto";
// Описание сервиса для мониторинга доступности и управления конфигурациями коммутаторов
service NetworkManager {
// процедура для мониторинга доступности оборудования
rpc IcmpHealth(IcmpHealthRequest) returns (IcmpHealthRequestResponse);
// процедура для восстановления настроек коммутатора
rpc RestoreConfig(RestoreNetworkConfigRequest) returns (RestoreNetworkConfigResponse);
// процедура для сохранения настроек коммутатора
rpc CreateConfig(CreateNetworkConfigRequest) returns (CreateNetworkConfigResponse);
}
// По данному контракту отправляется команда на проверку доступности оборудования
message IcmpHealthRequest {
// Список ip адресов для проверки.
repeated string ip_addresses = 1;
// Список доменных имен для проверки.
repeated string fqdn_addresses = 2;
// Список диапазонов-ip адресов в формате 192.168.1.FIRST-192.168.1.LAST для проверки (меняется только последний октет).
repeated string ip_ranges = 3;
// Список масок подсетей для проверки в формате 192.168.1.0/22, минимальный октет - 18.
repeated string masks = 4;
}
// Перечень адресов, прошедших проверку
message IcmpHealthRequestResponse {
// Перечень адресов, прошедших проверку
repeated IcmpAvailableAddress addresses = 1;
}
message IcmpAvailableAddress {
// Адрес (ip или fqdn) на котором проверена доступность.
string address = 1;
// Mac полученный с проверенного адреса (null, если не удалось получить)
google.protobuf.StringValue mac = 2;
// Список доменных имен, полученных с dns
repeated string domain_names = 3;
// Операционная система собранная с адреса
string operation_system = 4;
}
message RestoreNetworkConfigRequest {
DeviceContent device = 1;
// Конфигурация для восстановления.
string config = 2;
}
message RestoreNetworkConfigResponse {
OperationResult result = 1;
}
message CreateNetworkConfigRequest {
DeviceContent device = 1;
}
message CreateNetworkConfigResponse {
OperationResult result = 1;
}