config.pb.go 28 KB

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