github.com/v2fly/v2ray-core/v4@v4.45.2/app/dns/config.pb.go (about) 1 // Code generated by protoc-gen-go. DO NOT EDIT. 2 // versions: 3 // protoc-gen-go v1.27.1 4 // protoc v3.17.3 5 // source: app/dns/config.proto 6 7 package dns 8 9 import ( 10 router "github.com/v2fly/v2ray-core/v4/app/router" 11 net "github.com/v2fly/v2ray-core/v4/common/net" 12 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 13 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 14 reflect "reflect" 15 sync "sync" 16 ) 17 18 const ( 19 // Verify that this generated code is sufficiently up-to-date. 20 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 21 // Verify that runtime/protoimpl is sufficiently up-to-date. 22 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 23 ) 24 25 type DomainMatchingType int32 26 27 const ( 28 DomainMatchingType_Full DomainMatchingType = 0 29 DomainMatchingType_Subdomain DomainMatchingType = 1 30 DomainMatchingType_Keyword DomainMatchingType = 2 31 DomainMatchingType_Regex DomainMatchingType = 3 32 ) 33 34 // Enum value maps for DomainMatchingType. 35 var ( 36 DomainMatchingType_name = map[int32]string{ 37 0: "Full", 38 1: "Subdomain", 39 2: "Keyword", 40 3: "Regex", 41 } 42 DomainMatchingType_value = map[string]int32{ 43 "Full": 0, 44 "Subdomain": 1, 45 "Keyword": 2, 46 "Regex": 3, 47 } 48 ) 49 50 func (x DomainMatchingType) Enum() *DomainMatchingType { 51 p := new(DomainMatchingType) 52 *p = x 53 return p 54 } 55 56 func (x DomainMatchingType) String() string { 57 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 58 } 59 60 func (DomainMatchingType) Descriptor() protoreflect.EnumDescriptor { 61 return file_app_dns_config_proto_enumTypes[0].Descriptor() 62 } 63 64 func (DomainMatchingType) Type() protoreflect.EnumType { 65 return &file_app_dns_config_proto_enumTypes[0] 66 } 67 68 func (x DomainMatchingType) Number() protoreflect.EnumNumber { 69 return protoreflect.EnumNumber(x) 70 } 71 72 // Deprecated: Use DomainMatchingType.Descriptor instead. 73 func (DomainMatchingType) EnumDescriptor() ([]byte, []int) { 74 return file_app_dns_config_proto_rawDescGZIP(), []int{0} 75 } 76 77 type QueryStrategy int32 78 79 const ( 80 QueryStrategy_USE_IP QueryStrategy = 0 81 QueryStrategy_USE_IP4 QueryStrategy = 1 82 QueryStrategy_USE_IP6 QueryStrategy = 2 83 ) 84 85 // Enum value maps for QueryStrategy. 86 var ( 87 QueryStrategy_name = map[int32]string{ 88 0: "USE_IP", 89 1: "USE_IP4", 90 2: "USE_IP6", 91 } 92 QueryStrategy_value = map[string]int32{ 93 "USE_IP": 0, 94 "USE_IP4": 1, 95 "USE_IP6": 2, 96 } 97 ) 98 99 func (x QueryStrategy) Enum() *QueryStrategy { 100 p := new(QueryStrategy) 101 *p = x 102 return p 103 } 104 105 func (x QueryStrategy) String() string { 106 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 107 } 108 109 func (QueryStrategy) Descriptor() protoreflect.EnumDescriptor { 110 return file_app_dns_config_proto_enumTypes[1].Descriptor() 111 } 112 113 func (QueryStrategy) Type() protoreflect.EnumType { 114 return &file_app_dns_config_proto_enumTypes[1] 115 } 116 117 func (x QueryStrategy) Number() protoreflect.EnumNumber { 118 return protoreflect.EnumNumber(x) 119 } 120 121 // Deprecated: Use QueryStrategy.Descriptor instead. 122 func (QueryStrategy) EnumDescriptor() ([]byte, []int) { 123 return file_app_dns_config_proto_rawDescGZIP(), []int{1} 124 } 125 126 type NameServer struct { 127 state protoimpl.MessageState 128 sizeCache protoimpl.SizeCache 129 unknownFields protoimpl.UnknownFields 130 131 Address *net.Endpoint `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` 132 ClientIp []byte `protobuf:"bytes,5,opt,name=client_ip,json=clientIp,proto3" json:"client_ip,omitempty"` 133 SkipFallback bool `protobuf:"varint,6,opt,name=skipFallback,proto3" json:"skipFallback,omitempty"` 134 PrioritizedDomain []*NameServer_PriorityDomain `protobuf:"bytes,2,rep,name=prioritized_domain,json=prioritizedDomain,proto3" json:"prioritized_domain,omitempty"` 135 Geoip []*router.GeoIP `protobuf:"bytes,3,rep,name=geoip,proto3" json:"geoip,omitempty"` 136 OriginalRules []*NameServer_OriginalRule `protobuf:"bytes,4,rep,name=original_rules,json=originalRules,proto3" json:"original_rules,omitempty"` 137 } 138 139 func (x *NameServer) Reset() { 140 *x = NameServer{} 141 if protoimpl.UnsafeEnabled { 142 mi := &file_app_dns_config_proto_msgTypes[0] 143 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 144 ms.StoreMessageInfo(mi) 145 } 146 } 147 148 func (x *NameServer) String() string { 149 return protoimpl.X.MessageStringOf(x) 150 } 151 152 func (*NameServer) ProtoMessage() {} 153 154 func (x *NameServer) ProtoReflect() protoreflect.Message { 155 mi := &file_app_dns_config_proto_msgTypes[0] 156 if protoimpl.UnsafeEnabled && x != nil { 157 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 158 if ms.LoadMessageInfo() == nil { 159 ms.StoreMessageInfo(mi) 160 } 161 return ms 162 } 163 return mi.MessageOf(x) 164 } 165 166 // Deprecated: Use NameServer.ProtoReflect.Descriptor instead. 167 func (*NameServer) Descriptor() ([]byte, []int) { 168 return file_app_dns_config_proto_rawDescGZIP(), []int{0} 169 } 170 171 func (x *NameServer) GetAddress() *net.Endpoint { 172 if x != nil { 173 return x.Address 174 } 175 return nil 176 } 177 178 func (x *NameServer) GetClientIp() []byte { 179 if x != nil { 180 return x.ClientIp 181 } 182 return nil 183 } 184 185 func (x *NameServer) GetSkipFallback() bool { 186 if x != nil { 187 return x.SkipFallback 188 } 189 return false 190 } 191 192 func (x *NameServer) GetPrioritizedDomain() []*NameServer_PriorityDomain { 193 if x != nil { 194 return x.PrioritizedDomain 195 } 196 return nil 197 } 198 199 func (x *NameServer) GetGeoip() []*router.GeoIP { 200 if x != nil { 201 return x.Geoip 202 } 203 return nil 204 } 205 206 func (x *NameServer) GetOriginalRules() []*NameServer_OriginalRule { 207 if x != nil { 208 return x.OriginalRules 209 } 210 return nil 211 } 212 213 type Config struct { 214 state protoimpl.MessageState 215 sizeCache protoimpl.SizeCache 216 unknownFields protoimpl.UnknownFields 217 218 // Nameservers used by this DNS. Only traditional UDP servers are support at 219 // the moment. A special value 'localhost' as a domain address can be set to 220 // use DNS on local system. 221 // 222 // Deprecated: Do not use. 223 NameServers []*net.Endpoint `protobuf:"bytes,1,rep,name=NameServers,proto3" json:"NameServers,omitempty"` 224 // NameServer list used by this DNS client. 225 NameServer []*NameServer `protobuf:"bytes,5,rep,name=name_server,json=nameServer,proto3" json:"name_server,omitempty"` 226 // Static hosts. Domain to IP. 227 // Deprecated. Use static_hosts. 228 // 229 // Deprecated: Do not use. 230 Hosts map[string]*net.IPOrDomain `protobuf:"bytes,2,rep,name=Hosts,proto3" json:"Hosts,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 231 // Client IP for EDNS client subnet. Must be 4 bytes (IPv4) or 16 bytes 232 // (IPv6). 233 ClientIp []byte `protobuf:"bytes,3,opt,name=client_ip,json=clientIp,proto3" json:"client_ip,omitempty"` 234 StaticHosts []*Config_HostMapping `protobuf:"bytes,4,rep,name=static_hosts,json=staticHosts,proto3" json:"static_hosts,omitempty"` 235 // Tag is the inbound tag of DNS client. 236 Tag string `protobuf:"bytes,6,opt,name=tag,proto3" json:"tag,omitempty"` 237 // DisableCache disables DNS cache 238 DisableCache bool `protobuf:"varint,8,opt,name=disableCache,proto3" json:"disableCache,omitempty"` 239 QueryStrategy QueryStrategy `protobuf:"varint,9,opt,name=query_strategy,json=queryStrategy,proto3,enum=v2ray.core.app.dns.QueryStrategy" json:"query_strategy,omitempty"` 240 DisableFallback bool `protobuf:"varint,10,opt,name=disableFallback,proto3" json:"disableFallback,omitempty"` 241 DisableFallbackIfMatch bool `protobuf:"varint,11,opt,name=disableFallbackIfMatch,proto3" json:"disableFallbackIfMatch,omitempty"` 242 } 243 244 func (x *Config) Reset() { 245 *x = Config{} 246 if protoimpl.UnsafeEnabled { 247 mi := &file_app_dns_config_proto_msgTypes[1] 248 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 249 ms.StoreMessageInfo(mi) 250 } 251 } 252 253 func (x *Config) String() string { 254 return protoimpl.X.MessageStringOf(x) 255 } 256 257 func (*Config) ProtoMessage() {} 258 259 func (x *Config) ProtoReflect() protoreflect.Message { 260 mi := &file_app_dns_config_proto_msgTypes[1] 261 if protoimpl.UnsafeEnabled && x != nil { 262 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 263 if ms.LoadMessageInfo() == nil { 264 ms.StoreMessageInfo(mi) 265 } 266 return ms 267 } 268 return mi.MessageOf(x) 269 } 270 271 // Deprecated: Use Config.ProtoReflect.Descriptor instead. 272 func (*Config) Descriptor() ([]byte, []int) { 273 return file_app_dns_config_proto_rawDescGZIP(), []int{1} 274 } 275 276 // Deprecated: Do not use. 277 func (x *Config) GetNameServers() []*net.Endpoint { 278 if x != nil { 279 return x.NameServers 280 } 281 return nil 282 } 283 284 func (x *Config) GetNameServer() []*NameServer { 285 if x != nil { 286 return x.NameServer 287 } 288 return nil 289 } 290 291 // Deprecated: Do not use. 292 func (x *Config) GetHosts() map[string]*net.IPOrDomain { 293 if x != nil { 294 return x.Hosts 295 } 296 return nil 297 } 298 299 func (x *Config) GetClientIp() []byte { 300 if x != nil { 301 return x.ClientIp 302 } 303 return nil 304 } 305 306 func (x *Config) GetStaticHosts() []*Config_HostMapping { 307 if x != nil { 308 return x.StaticHosts 309 } 310 return nil 311 } 312 313 func (x *Config) GetTag() string { 314 if x != nil { 315 return x.Tag 316 } 317 return "" 318 } 319 320 func (x *Config) GetDisableCache() bool { 321 if x != nil { 322 return x.DisableCache 323 } 324 return false 325 } 326 327 func (x *Config) GetQueryStrategy() QueryStrategy { 328 if x != nil { 329 return x.QueryStrategy 330 } 331 return QueryStrategy_USE_IP 332 } 333 334 func (x *Config) GetDisableFallback() bool { 335 if x != nil { 336 return x.DisableFallback 337 } 338 return false 339 } 340 341 func (x *Config) GetDisableFallbackIfMatch() bool { 342 if x != nil { 343 return x.DisableFallbackIfMatch 344 } 345 return false 346 } 347 348 type NameServer_PriorityDomain struct { 349 state protoimpl.MessageState 350 sizeCache protoimpl.SizeCache 351 unknownFields protoimpl.UnknownFields 352 353 Type DomainMatchingType `protobuf:"varint,1,opt,name=type,proto3,enum=v2ray.core.app.dns.DomainMatchingType" json:"type,omitempty"` 354 Domain string `protobuf:"bytes,2,opt,name=domain,proto3" json:"domain,omitempty"` 355 } 356 357 func (x *NameServer_PriorityDomain) Reset() { 358 *x = NameServer_PriorityDomain{} 359 if protoimpl.UnsafeEnabled { 360 mi := &file_app_dns_config_proto_msgTypes[2] 361 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 362 ms.StoreMessageInfo(mi) 363 } 364 } 365 366 func (x *NameServer_PriorityDomain) String() string { 367 return protoimpl.X.MessageStringOf(x) 368 } 369 370 func (*NameServer_PriorityDomain) ProtoMessage() {} 371 372 func (x *NameServer_PriorityDomain) ProtoReflect() protoreflect.Message { 373 mi := &file_app_dns_config_proto_msgTypes[2] 374 if protoimpl.UnsafeEnabled && x != nil { 375 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 376 if ms.LoadMessageInfo() == nil { 377 ms.StoreMessageInfo(mi) 378 } 379 return ms 380 } 381 return mi.MessageOf(x) 382 } 383 384 // Deprecated: Use NameServer_PriorityDomain.ProtoReflect.Descriptor instead. 385 func (*NameServer_PriorityDomain) Descriptor() ([]byte, []int) { 386 return file_app_dns_config_proto_rawDescGZIP(), []int{0, 0} 387 } 388 389 func (x *NameServer_PriorityDomain) GetType() DomainMatchingType { 390 if x != nil { 391 return x.Type 392 } 393 return DomainMatchingType_Full 394 } 395 396 func (x *NameServer_PriorityDomain) GetDomain() string { 397 if x != nil { 398 return x.Domain 399 } 400 return "" 401 } 402 403 type NameServer_OriginalRule struct { 404 state protoimpl.MessageState 405 sizeCache protoimpl.SizeCache 406 unknownFields protoimpl.UnknownFields 407 408 Rule string `protobuf:"bytes,1,opt,name=rule,proto3" json:"rule,omitempty"` 409 Size uint32 `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"` 410 } 411 412 func (x *NameServer_OriginalRule) Reset() { 413 *x = NameServer_OriginalRule{} 414 if protoimpl.UnsafeEnabled { 415 mi := &file_app_dns_config_proto_msgTypes[3] 416 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 417 ms.StoreMessageInfo(mi) 418 } 419 } 420 421 func (x *NameServer_OriginalRule) String() string { 422 return protoimpl.X.MessageStringOf(x) 423 } 424 425 func (*NameServer_OriginalRule) ProtoMessage() {} 426 427 func (x *NameServer_OriginalRule) ProtoReflect() protoreflect.Message { 428 mi := &file_app_dns_config_proto_msgTypes[3] 429 if protoimpl.UnsafeEnabled && x != nil { 430 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 431 if ms.LoadMessageInfo() == nil { 432 ms.StoreMessageInfo(mi) 433 } 434 return ms 435 } 436 return mi.MessageOf(x) 437 } 438 439 // Deprecated: Use NameServer_OriginalRule.ProtoReflect.Descriptor instead. 440 func (*NameServer_OriginalRule) Descriptor() ([]byte, []int) { 441 return file_app_dns_config_proto_rawDescGZIP(), []int{0, 1} 442 } 443 444 func (x *NameServer_OriginalRule) GetRule() string { 445 if x != nil { 446 return x.Rule 447 } 448 return "" 449 } 450 451 func (x *NameServer_OriginalRule) GetSize() uint32 { 452 if x != nil { 453 return x.Size 454 } 455 return 0 456 } 457 458 type Config_HostMapping struct { 459 state protoimpl.MessageState 460 sizeCache protoimpl.SizeCache 461 unknownFields protoimpl.UnknownFields 462 463 Type DomainMatchingType `protobuf:"varint,1,opt,name=type,proto3,enum=v2ray.core.app.dns.DomainMatchingType" json:"type,omitempty"` 464 Domain string `protobuf:"bytes,2,opt,name=domain,proto3" json:"domain,omitempty"` 465 Ip [][]byte `protobuf:"bytes,3,rep,name=ip,proto3" json:"ip,omitempty"` 466 // ProxiedDomain indicates the mapped domain has the same IP address on this 467 // domain. V2Ray will use this domain for IP queries. 468 ProxiedDomain string `protobuf:"bytes,4,opt,name=proxied_domain,json=proxiedDomain,proto3" json:"proxied_domain,omitempty"` 469 } 470 471 func (x *Config_HostMapping) Reset() { 472 *x = Config_HostMapping{} 473 if protoimpl.UnsafeEnabled { 474 mi := &file_app_dns_config_proto_msgTypes[5] 475 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 476 ms.StoreMessageInfo(mi) 477 } 478 } 479 480 func (x *Config_HostMapping) String() string { 481 return protoimpl.X.MessageStringOf(x) 482 } 483 484 func (*Config_HostMapping) ProtoMessage() {} 485 486 func (x *Config_HostMapping) ProtoReflect() protoreflect.Message { 487 mi := &file_app_dns_config_proto_msgTypes[5] 488 if protoimpl.UnsafeEnabled && x != nil { 489 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 490 if ms.LoadMessageInfo() == nil { 491 ms.StoreMessageInfo(mi) 492 } 493 return ms 494 } 495 return mi.MessageOf(x) 496 } 497 498 // Deprecated: Use Config_HostMapping.ProtoReflect.Descriptor instead. 499 func (*Config_HostMapping) Descriptor() ([]byte, []int) { 500 return file_app_dns_config_proto_rawDescGZIP(), []int{1, 1} 501 } 502 503 func (x *Config_HostMapping) GetType() DomainMatchingType { 504 if x != nil { 505 return x.Type 506 } 507 return DomainMatchingType_Full 508 } 509 510 func (x *Config_HostMapping) GetDomain() string { 511 if x != nil { 512 return x.Domain 513 } 514 return "" 515 } 516 517 func (x *Config_HostMapping) GetIp() [][]byte { 518 if x != nil { 519 return x.Ip 520 } 521 return nil 522 } 523 524 func (x *Config_HostMapping) GetProxiedDomain() string { 525 if x != nil { 526 return x.ProxiedDomain 527 } 528 return "" 529 } 530 531 var File_app_dns_config_proto protoreflect.FileDescriptor 532 533 var file_app_dns_config_proto_rawDesc = []byte{ 534 0x0a, 0x14, 0x61, 0x70, 0x70, 0x2f, 0x64, 0x6e, 0x73, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 535 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x12, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 536 0x72, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x64, 0x6e, 0x73, 0x1a, 0x18, 0x63, 0x6f, 0x6d, 0x6d, 537 0x6f, 0x6e, 0x2f, 0x6e, 0x65, 0x74, 0x2f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x70, 538 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x6e, 0x65, 0x74, 539 0x2f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 540 0x74, 0x6f, 0x1a, 0x17, 0x61, 0x70, 0x70, 0x2f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x2f, 0x63, 541 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x8c, 0x04, 0x0a, 0x0a, 542 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x39, 0x0a, 0x07, 0x61, 0x64, 543 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x76, 0x32, 544 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 545 0x6e, 0x65, 0x74, 0x2e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x07, 0x61, 0x64, 546 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 547 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 548 0x49, 0x70, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x6b, 0x69, 0x70, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 549 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x6b, 0x69, 0x70, 0x46, 0x61, 550 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x5c, 0x0a, 0x12, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 551 0x74, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x03, 552 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 553 0x61, 0x70, 0x70, 0x2e, 0x64, 0x6e, 0x73, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 554 0x65, 0x72, 0x2e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x44, 0x6f, 0x6d, 0x61, 0x69, 555 0x6e, 0x52, 0x11, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x69, 0x7a, 0x65, 0x64, 0x44, 0x6f, 556 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x32, 0x0a, 0x05, 0x67, 0x65, 0x6f, 0x69, 0x70, 0x18, 0x03, 0x20, 557 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 558 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x6f, 0x49, 559 0x50, 0x52, 0x05, 0x67, 0x65, 0x6f, 0x69, 0x70, 0x12, 0x52, 0x0a, 0x0e, 0x6f, 0x72, 0x69, 0x67, 560 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 561 0x32, 0x2b, 0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x70, 562 0x70, 0x2e, 0x64, 0x6e, 0x73, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 563 0x2e, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x0d, 0x6f, 564 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x1a, 0x64, 0x0a, 0x0e, 565 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x3a, 566 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x76, 567 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x64, 0x6e, 568 0x73, 0x2e, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 569 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 570 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61, 571 0x69, 0x6e, 0x1a, 0x36, 0x0a, 0x0c, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x75, 572 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 573 0x52, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 574 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x22, 0x99, 0x06, 0x0a, 0x06, 0x43, 575 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x45, 0x0a, 0x0b, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 576 0x76, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x76, 0x32, 0x72, 577 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x6e, 578 0x65, 0x74, 0x2e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x02, 0x18, 0x01, 0x52, 579 0x0b, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 580 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x05, 0x20, 0x03, 0x28, 581 0x0b, 0x32, 0x1e, 0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x61, 582 0x70, 0x70, 0x2e, 0x64, 0x6e, 0x73, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 583 0x72, 0x52, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x3f, 0x0a, 584 0x05, 0x48, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x76, 585 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x64, 0x6e, 586 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x73, 0x45, 0x6e, 587 0x74, 0x72, 0x79, 0x42, 0x02, 0x18, 0x01, 0x52, 0x05, 0x48, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x1b, 588 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 589 0x0c, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x70, 0x12, 0x49, 0x0a, 0x0c, 0x73, 590 0x74, 0x61, 0x74, 0x69, 0x63, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 591 0x0b, 0x32, 0x26, 0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x61, 592 0x70, 0x70, 0x2e, 0x64, 0x6e, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x48, 0x6f, 593 0x73, 0x74, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x69, 594 0x63, 0x48, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x06, 0x20, 595 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x22, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x61, 596 0x62, 0x6c, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 597 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x48, 0x0a, 0x0e, 598 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x18, 0x09, 599 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 600 0x65, 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x64, 0x6e, 0x73, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 601 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x52, 0x0d, 0x71, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 602 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x28, 0x0a, 0x0f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 603 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 604 0x0f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 605 0x12, 0x36, 0x0a, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 606 0x61, 0x63, 0x6b, 0x49, 0x66, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 607 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 608 0x6b, 0x49, 0x66, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x1a, 0x5b, 0x0a, 0x0a, 0x48, 0x6f, 0x73, 0x74, 609 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 610 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x37, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 611 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 612 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x6e, 0x65, 0x74, 0x2e, 613 0x49, 0x50, 0x4f, 0x72, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 614 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x98, 0x01, 0x0a, 0x0b, 0x48, 0x6f, 0x73, 0x74, 0x4d, 0x61, 615 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x3a, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 616 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 617 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x64, 0x6e, 0x73, 0x2e, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x4d, 618 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 619 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 620 0x09, 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 621 0x03, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x70, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x6f, 622 0x78, 0x69, 0x65, 0x64, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 623 0x09, 0x52, 0x0d, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x65, 0x64, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 624 0x4a, 0x04, 0x08, 0x07, 0x10, 0x08, 0x2a, 0x45, 0x0a, 0x12, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 625 0x4d, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x08, 0x0a, 0x04, 626 0x46, 0x75, 0x6c, 0x6c, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x75, 0x62, 0x64, 0x6f, 0x6d, 627 0x61, 0x69, 0x6e, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 628 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x52, 0x65, 0x67, 0x65, 0x78, 0x10, 0x03, 0x2a, 0x35, 0x0a, 629 0x0d, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x0a, 630 0x0a, 0x06, 0x55, 0x53, 0x45, 0x5f, 0x49, 0x50, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x53, 631 0x45, 0x5f, 0x49, 0x50, 0x34, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x53, 0x45, 0x5f, 0x49, 632 0x50, 0x36, 0x10, 0x02, 0x42, 0x57, 0x0a, 0x16, 0x63, 0x6f, 0x6d, 0x2e, 0x76, 0x32, 0x72, 0x61, 633 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x64, 0x6e, 0x73, 0x50, 0x01, 634 0x5a, 0x26, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x76, 0x32, 0x66, 635 0x6c, 0x79, 0x2f, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2d, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x34, 636 0x2f, 0x61, 0x70, 0x70, 0x2f, 0x64, 0x6e, 0x73, 0xaa, 0x02, 0x12, 0x56, 0x32, 0x52, 0x61, 0x79, 637 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x41, 0x70, 0x70, 0x2e, 0x44, 0x6e, 0x73, 0x62, 0x06, 0x70, 638 0x72, 0x6f, 0x74, 0x6f, 0x33, 639 } 640 641 var ( 642 file_app_dns_config_proto_rawDescOnce sync.Once 643 file_app_dns_config_proto_rawDescData = file_app_dns_config_proto_rawDesc 644 ) 645 646 func file_app_dns_config_proto_rawDescGZIP() []byte { 647 file_app_dns_config_proto_rawDescOnce.Do(func() { 648 file_app_dns_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_app_dns_config_proto_rawDescData) 649 }) 650 return file_app_dns_config_proto_rawDescData 651 } 652 653 var file_app_dns_config_proto_enumTypes = make([]protoimpl.EnumInfo, 2) 654 var file_app_dns_config_proto_msgTypes = make([]protoimpl.MessageInfo, 6) 655 var file_app_dns_config_proto_goTypes = []interface{}{ 656 (DomainMatchingType)(0), // 0: v2ray.core.app.dns.DomainMatchingType 657 (QueryStrategy)(0), // 1: v2ray.core.app.dns.QueryStrategy 658 (*NameServer)(nil), // 2: v2ray.core.app.dns.NameServer 659 (*Config)(nil), // 3: v2ray.core.app.dns.Config 660 (*NameServer_PriorityDomain)(nil), // 4: v2ray.core.app.dns.NameServer.PriorityDomain 661 (*NameServer_OriginalRule)(nil), // 5: v2ray.core.app.dns.NameServer.OriginalRule 662 nil, // 6: v2ray.core.app.dns.Config.HostsEntry 663 (*Config_HostMapping)(nil), // 7: v2ray.core.app.dns.Config.HostMapping 664 (*net.Endpoint)(nil), // 8: v2ray.core.common.net.Endpoint 665 (*router.GeoIP)(nil), // 9: v2ray.core.app.router.GeoIP 666 (*net.IPOrDomain)(nil), // 10: v2ray.core.common.net.IPOrDomain 667 } 668 var file_app_dns_config_proto_depIdxs = []int32{ 669 8, // 0: v2ray.core.app.dns.NameServer.address:type_name -> v2ray.core.common.net.Endpoint 670 4, // 1: v2ray.core.app.dns.NameServer.prioritized_domain:type_name -> v2ray.core.app.dns.NameServer.PriorityDomain 671 9, // 2: v2ray.core.app.dns.NameServer.geoip:type_name -> v2ray.core.app.router.GeoIP 672 5, // 3: v2ray.core.app.dns.NameServer.original_rules:type_name -> v2ray.core.app.dns.NameServer.OriginalRule 673 8, // 4: v2ray.core.app.dns.Config.NameServers:type_name -> v2ray.core.common.net.Endpoint 674 2, // 5: v2ray.core.app.dns.Config.name_server:type_name -> v2ray.core.app.dns.NameServer 675 6, // 6: v2ray.core.app.dns.Config.Hosts:type_name -> v2ray.core.app.dns.Config.HostsEntry 676 7, // 7: v2ray.core.app.dns.Config.static_hosts:type_name -> v2ray.core.app.dns.Config.HostMapping 677 1, // 8: v2ray.core.app.dns.Config.query_strategy:type_name -> v2ray.core.app.dns.QueryStrategy 678 0, // 9: v2ray.core.app.dns.NameServer.PriorityDomain.type:type_name -> v2ray.core.app.dns.DomainMatchingType 679 10, // 10: v2ray.core.app.dns.Config.HostsEntry.value:type_name -> v2ray.core.common.net.IPOrDomain 680 0, // 11: v2ray.core.app.dns.Config.HostMapping.type:type_name -> v2ray.core.app.dns.DomainMatchingType 681 12, // [12:12] is the sub-list for method output_type 682 12, // [12:12] is the sub-list for method input_type 683 12, // [12:12] is the sub-list for extension type_name 684 12, // [12:12] is the sub-list for extension extendee 685 0, // [0:12] is the sub-list for field type_name 686 } 687 688 func init() { file_app_dns_config_proto_init() } 689 func file_app_dns_config_proto_init() { 690 if File_app_dns_config_proto != nil { 691 return 692 } 693 if !protoimpl.UnsafeEnabled { 694 file_app_dns_config_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 695 switch v := v.(*NameServer); i { 696 case 0: 697 return &v.state 698 case 1: 699 return &v.sizeCache 700 case 2: 701 return &v.unknownFields 702 default: 703 return nil 704 } 705 } 706 file_app_dns_config_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 707 switch v := v.(*Config); i { 708 case 0: 709 return &v.state 710 case 1: 711 return &v.sizeCache 712 case 2: 713 return &v.unknownFields 714 default: 715 return nil 716 } 717 } 718 file_app_dns_config_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 719 switch v := v.(*NameServer_PriorityDomain); i { 720 case 0: 721 return &v.state 722 case 1: 723 return &v.sizeCache 724 case 2: 725 return &v.unknownFields 726 default: 727 return nil 728 } 729 } 730 file_app_dns_config_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 731 switch v := v.(*NameServer_OriginalRule); i { 732 case 0: 733 return &v.state 734 case 1: 735 return &v.sizeCache 736 case 2: 737 return &v.unknownFields 738 default: 739 return nil 740 } 741 } 742 file_app_dns_config_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 743 switch v := v.(*Config_HostMapping); i { 744 case 0: 745 return &v.state 746 case 1: 747 return &v.sizeCache 748 case 2: 749 return &v.unknownFields 750 default: 751 return nil 752 } 753 } 754 } 755 type x struct{} 756 out := protoimpl.TypeBuilder{ 757 File: protoimpl.DescBuilder{ 758 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 759 RawDescriptor: file_app_dns_config_proto_rawDesc, 760 NumEnums: 2, 761 NumMessages: 6, 762 NumExtensions: 0, 763 NumServices: 0, 764 }, 765 GoTypes: file_app_dns_config_proto_goTypes, 766 DependencyIndexes: file_app_dns_config_proto_depIdxs, 767 EnumInfos: file_app_dns_config_proto_enumTypes, 768 MessageInfos: file_app_dns_config_proto_msgTypes, 769 }.Build() 770 File_app_dns_config_proto = out.File 771 file_app_dns_config_proto_rawDesc = nil 772 file_app_dns_config_proto_goTypes = nil 773 file_app_dns_config_proto_depIdxs = nil 774 }