config.pb.go 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663
  1. // Code generated by protoc-gen-go. DO NOT EDIT.
  2. // versions:
  3. // protoc-gen-go v1.35.1
  4. // protoc v5.28.2
  5. // source: app/dns/config.proto
  6. package dns
  7. import (
  8. router "github.com/xtls/xray-core/app/router"
  9. net "github.com/xtls/xray-core/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. SkipFallback bool `protobuf:"varint,6,opt,name=skipFallback,proto3" json:"skipFallback,omitempty"`
  111. PrioritizedDomain []*NameServer_PriorityDomain `protobuf:"bytes,2,rep,name=prioritized_domain,json=prioritizedDomain,proto3" json:"prioritized_domain,omitempty"`
  112. Geoip []*router.GeoIP `protobuf:"bytes,3,rep,name=geoip,proto3" json:"geoip,omitempty"`
  113. OriginalRules []*NameServer_OriginalRule `protobuf:"bytes,4,rep,name=original_rules,json=originalRules,proto3" json:"original_rules,omitempty"`
  114. QueryStrategy QueryStrategy `protobuf:"varint,7,opt,name=query_strategy,json=queryStrategy,proto3,enum=xray.app.dns.QueryStrategy" json:"query_strategy,omitempty"`
  115. }
  116. func (x *NameServer) Reset() {
  117. *x = NameServer{}
  118. mi := &file_app_dns_config_proto_msgTypes[0]
  119. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  120. ms.StoreMessageInfo(mi)
  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 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) GetSkipFallback() bool {
  154. if x != nil {
  155. return x.SkipFallback
  156. }
  157. return false
  158. }
  159. func (x *NameServer) GetPrioritizedDomain() []*NameServer_PriorityDomain {
  160. if x != nil {
  161. return x.PrioritizedDomain
  162. }
  163. return nil
  164. }
  165. func (x *NameServer) GetGeoip() []*router.GeoIP {
  166. if x != nil {
  167. return x.Geoip
  168. }
  169. return nil
  170. }
  171. func (x *NameServer) GetOriginalRules() []*NameServer_OriginalRule {
  172. if x != nil {
  173. return x.OriginalRules
  174. }
  175. return nil
  176. }
  177. func (x *NameServer) GetQueryStrategy() QueryStrategy {
  178. if x != nil {
  179. return x.QueryStrategy
  180. }
  181. return QueryStrategy_USE_IP
  182. }
  183. type Config struct {
  184. state protoimpl.MessageState
  185. sizeCache protoimpl.SizeCache
  186. unknownFields protoimpl.UnknownFields
  187. // NameServer list used by this DNS client.
  188. // A special value 'localhost' as a domain address can be set to use DNS on local system.
  189. NameServer []*NameServer `protobuf:"bytes,5,rep,name=name_server,json=nameServer,proto3" json:"name_server,omitempty"`
  190. // Client IP for EDNS client subnet. Must be 4 bytes (IPv4) or 16 bytes
  191. // (IPv6).
  192. ClientIp []byte `protobuf:"bytes,3,opt,name=client_ip,json=clientIp,proto3" json:"client_ip,omitempty"`
  193. StaticHosts []*Config_HostMapping `protobuf:"bytes,4,rep,name=static_hosts,json=staticHosts,proto3" json:"static_hosts,omitempty"`
  194. // Tag is the inbound tag of DNS client.
  195. Tag string `protobuf:"bytes,6,opt,name=tag,proto3" json:"tag,omitempty"`
  196. // DisableCache disables DNS cache
  197. DisableCache bool `protobuf:"varint,8,opt,name=disableCache,proto3" json:"disableCache,omitempty"`
  198. QueryStrategy QueryStrategy `protobuf:"varint,9,opt,name=query_strategy,json=queryStrategy,proto3,enum=xray.app.dns.QueryStrategy" json:"query_strategy,omitempty"`
  199. DisableFallback bool `protobuf:"varint,10,opt,name=disableFallback,proto3" json:"disableFallback,omitempty"`
  200. DisableFallbackIfMatch bool `protobuf:"varint,11,opt,name=disableFallbackIfMatch,proto3" json:"disableFallbackIfMatch,omitempty"`
  201. }
  202. func (x *Config) Reset() {
  203. *x = Config{}
  204. mi := &file_app_dns_config_proto_msgTypes[1]
  205. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  206. ms.StoreMessageInfo(mi)
  207. }
  208. func (x *Config) String() string {
  209. return protoimpl.X.MessageStringOf(x)
  210. }
  211. func (*Config) ProtoMessage() {}
  212. func (x *Config) ProtoReflect() protoreflect.Message {
  213. mi := &file_app_dns_config_proto_msgTypes[1]
  214. if x != nil {
  215. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  216. if ms.LoadMessageInfo() == nil {
  217. ms.StoreMessageInfo(mi)
  218. }
  219. return ms
  220. }
  221. return mi.MessageOf(x)
  222. }
  223. // Deprecated: Use Config.ProtoReflect.Descriptor instead.
  224. func (*Config) Descriptor() ([]byte, []int) {
  225. return file_app_dns_config_proto_rawDescGZIP(), []int{1}
  226. }
  227. func (x *Config) GetNameServer() []*NameServer {
  228. if x != nil {
  229. return x.NameServer
  230. }
  231. return nil
  232. }
  233. func (x *Config) GetClientIp() []byte {
  234. if x != nil {
  235. return x.ClientIp
  236. }
  237. return nil
  238. }
  239. func (x *Config) GetStaticHosts() []*Config_HostMapping {
  240. if x != nil {
  241. return x.StaticHosts
  242. }
  243. return nil
  244. }
  245. func (x *Config) GetTag() string {
  246. if x != nil {
  247. return x.Tag
  248. }
  249. return ""
  250. }
  251. func (x *Config) GetDisableCache() bool {
  252. if x != nil {
  253. return x.DisableCache
  254. }
  255. return false
  256. }
  257. func (x *Config) GetQueryStrategy() QueryStrategy {
  258. if x != nil {
  259. return x.QueryStrategy
  260. }
  261. return QueryStrategy_USE_IP
  262. }
  263. func (x *Config) GetDisableFallback() bool {
  264. if x != nil {
  265. return x.DisableFallback
  266. }
  267. return false
  268. }
  269. func (x *Config) GetDisableFallbackIfMatch() bool {
  270. if x != nil {
  271. return x.DisableFallbackIfMatch
  272. }
  273. return false
  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=xray.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. mi := &file_app_dns_config_proto_msgTypes[2]
  285. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  286. ms.StoreMessageInfo(mi)
  287. }
  288. func (x *NameServer_PriorityDomain) String() string {
  289. return protoimpl.X.MessageStringOf(x)
  290. }
  291. func (*NameServer_PriorityDomain) ProtoMessage() {}
  292. func (x *NameServer_PriorityDomain) ProtoReflect() protoreflect.Message {
  293. mi := &file_app_dns_config_proto_msgTypes[2]
  294. if x != nil {
  295. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  296. if ms.LoadMessageInfo() == nil {
  297. ms.StoreMessageInfo(mi)
  298. }
  299. return ms
  300. }
  301. return mi.MessageOf(x)
  302. }
  303. // Deprecated: Use NameServer_PriorityDomain.ProtoReflect.Descriptor instead.
  304. func (*NameServer_PriorityDomain) Descriptor() ([]byte, []int) {
  305. return file_app_dns_config_proto_rawDescGZIP(), []int{0, 0}
  306. }
  307. func (x *NameServer_PriorityDomain) GetType() DomainMatchingType {
  308. if x != nil {
  309. return x.Type
  310. }
  311. return DomainMatchingType_Full
  312. }
  313. func (x *NameServer_PriorityDomain) GetDomain() string {
  314. if x != nil {
  315. return x.Domain
  316. }
  317. return ""
  318. }
  319. type NameServer_OriginalRule struct {
  320. state protoimpl.MessageState
  321. sizeCache protoimpl.SizeCache
  322. unknownFields protoimpl.UnknownFields
  323. Rule string `protobuf:"bytes,1,opt,name=rule,proto3" json:"rule,omitempty"`
  324. Size uint32 `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"`
  325. }
  326. func (x *NameServer_OriginalRule) Reset() {
  327. *x = NameServer_OriginalRule{}
  328. mi := &file_app_dns_config_proto_msgTypes[3]
  329. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  330. ms.StoreMessageInfo(mi)
  331. }
  332. func (x *NameServer_OriginalRule) String() string {
  333. return protoimpl.X.MessageStringOf(x)
  334. }
  335. func (*NameServer_OriginalRule) ProtoMessage() {}
  336. func (x *NameServer_OriginalRule) ProtoReflect() protoreflect.Message {
  337. mi := &file_app_dns_config_proto_msgTypes[3]
  338. if x != nil {
  339. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  340. if ms.LoadMessageInfo() == nil {
  341. ms.StoreMessageInfo(mi)
  342. }
  343. return ms
  344. }
  345. return mi.MessageOf(x)
  346. }
  347. // Deprecated: Use NameServer_OriginalRule.ProtoReflect.Descriptor instead.
  348. func (*NameServer_OriginalRule) Descriptor() ([]byte, []int) {
  349. return file_app_dns_config_proto_rawDescGZIP(), []int{0, 1}
  350. }
  351. func (x *NameServer_OriginalRule) GetRule() string {
  352. if x != nil {
  353. return x.Rule
  354. }
  355. return ""
  356. }
  357. func (x *NameServer_OriginalRule) GetSize() uint32 {
  358. if x != nil {
  359. return x.Size
  360. }
  361. return 0
  362. }
  363. type Config_HostMapping struct {
  364. state protoimpl.MessageState
  365. sizeCache protoimpl.SizeCache
  366. unknownFields protoimpl.UnknownFields
  367. Type DomainMatchingType `protobuf:"varint,1,opt,name=type,proto3,enum=xray.app.dns.DomainMatchingType" json:"type,omitempty"`
  368. Domain string `protobuf:"bytes,2,opt,name=domain,proto3" json:"domain,omitempty"`
  369. Ip [][]byte `protobuf:"bytes,3,rep,name=ip,proto3" json:"ip,omitempty"`
  370. // ProxiedDomain indicates the mapped domain has the same IP address on this
  371. // domain. Xray will use this domain for IP queries.
  372. ProxiedDomain string `protobuf:"bytes,4,opt,name=proxied_domain,json=proxiedDomain,proto3" json:"proxied_domain,omitempty"`
  373. }
  374. func (x *Config_HostMapping) Reset() {
  375. *x = Config_HostMapping{}
  376. mi := &file_app_dns_config_proto_msgTypes[4]
  377. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  378. ms.StoreMessageInfo(mi)
  379. }
  380. func (x *Config_HostMapping) String() string {
  381. return protoimpl.X.MessageStringOf(x)
  382. }
  383. func (*Config_HostMapping) ProtoMessage() {}
  384. func (x *Config_HostMapping) ProtoReflect() protoreflect.Message {
  385. mi := &file_app_dns_config_proto_msgTypes[4]
  386. if x != nil {
  387. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  388. if ms.LoadMessageInfo() == nil {
  389. ms.StoreMessageInfo(mi)
  390. }
  391. return ms
  392. }
  393. return mi.MessageOf(x)
  394. }
  395. // Deprecated: Use Config_HostMapping.ProtoReflect.Descriptor instead.
  396. func (*Config_HostMapping) Descriptor() ([]byte, []int) {
  397. return file_app_dns_config_proto_rawDescGZIP(), []int{1, 0}
  398. }
  399. func (x *Config_HostMapping) GetType() DomainMatchingType {
  400. if x != nil {
  401. return x.Type
  402. }
  403. return DomainMatchingType_Full
  404. }
  405. func (x *Config_HostMapping) GetDomain() string {
  406. if x != nil {
  407. return x.Domain
  408. }
  409. return ""
  410. }
  411. func (x *Config_HostMapping) GetIp() [][]byte {
  412. if x != nil {
  413. return x.Ip
  414. }
  415. return nil
  416. }
  417. func (x *Config_HostMapping) GetProxiedDomain() string {
  418. if x != nil {
  419. return x.ProxiedDomain
  420. }
  421. return ""
  422. }
  423. var File_app_dns_config_proto protoreflect.FileDescriptor
  424. var file_app_dns_config_proto_rawDesc = []byte{
  425. 0x0a, 0x14, 0x61, 0x70, 0x70, 0x2f, 0x64, 0x6e, 0x73, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
  426. 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x78, 0x72, 0x61, 0x79, 0x2e, 0x61, 0x70, 0x70,
  427. 0x2e, 0x64, 0x6e, 0x73, 0x1a, 0x1c, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x6e, 0x65, 0x74,
  428. 0x2f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f,
  429. 0x74, 0x6f, 0x1a, 0x17, 0x61, 0x70, 0x70, 0x2f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x2f, 0x63,
  430. 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb2, 0x04, 0x0a, 0x0a,
  431. 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x33, 0x0a, 0x07, 0x61, 0x64,
  432. 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x78, 0x72,
  433. 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x6e, 0x65, 0x74, 0x2e, 0x45, 0x6e,
  434. 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12,
  435. 0x1b, 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01,
  436. 0x28, 0x0c, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x70, 0x12, 0x22, 0x0a, 0x0c,
  437. 0x73, 0x6b, 0x69, 0x70, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01,
  438. 0x28, 0x08, 0x52, 0x0c, 0x73, 0x6b, 0x69, 0x70, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b,
  439. 0x12, 0x56, 0x0a, 0x12, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x69, 0x7a, 0x65, 0x64, 0x5f,
  440. 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x78,
  441. 0x72, 0x61, 0x79, 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x64, 0x6e, 0x73, 0x2e, 0x4e, 0x61, 0x6d, 0x65,
  442. 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x44,
  443. 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x52, 0x11, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x69, 0x7a,
  444. 0x65, 0x64, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x2c, 0x0a, 0x05, 0x67, 0x65, 0x6f, 0x69,
  445. 0x70, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x78, 0x72, 0x61, 0x79, 0x2e, 0x61,
  446. 0x70, 0x70, 0x2e, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x6f, 0x49, 0x50, 0x52,
  447. 0x05, 0x67, 0x65, 0x6f, 0x69, 0x70, 0x12, 0x4c, 0x0a, 0x0e, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e,
  448. 0x61, 0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25,
  449. 0x2e, 0x78, 0x72, 0x61, 0x79, 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x64, 0x6e, 0x73, 0x2e, 0x4e, 0x61,
  450. 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61,
  451. 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x0d, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x52,
  452. 0x75, 0x6c, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x74,
  453. 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x78,
  454. 0x72, 0x61, 0x79, 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x64, 0x6e, 0x73, 0x2e, 0x51, 0x75, 0x65, 0x72,
  455. 0x79, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x52, 0x0d, 0x71, 0x75, 0x65, 0x72, 0x79,
  456. 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x1a, 0x5e, 0x0a, 0x0e, 0x50, 0x72, 0x69, 0x6f,
  457. 0x72, 0x69, 0x74, 0x79, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x34, 0x0a, 0x04, 0x74, 0x79,
  458. 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x78, 0x72, 0x61, 0x79, 0x2e,
  459. 0x61, 0x70, 0x70, 0x2e, 0x64, 0x6e, 0x73, 0x2e, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x4d, 0x61,
  460. 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65,
  461. 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
  462. 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x1a, 0x36, 0x0a, 0x0c, 0x4f, 0x72, 0x69, 0x67,
  463. 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65,
  464. 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04,
  465. 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65,
  466. 0x22, 0x9c, 0x04, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x39, 0x0a, 0x0b, 0x6e,
  467. 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b,
  468. 0x32, 0x18, 0x2e, 0x78, 0x72, 0x61, 0x79, 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x64, 0x6e, 0x73, 0x2e,
  469. 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x0a, 0x6e, 0x61, 0x6d, 0x65,
  470. 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74,
  471. 0x5f, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e,
  472. 0x74, 0x49, 0x70, 0x12, 0x43, 0x0a, 0x0c, 0x73, 0x74, 0x61, 0x74, 0x69, 0x63, 0x5f, 0x68, 0x6f,
  473. 0x73, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x78, 0x72, 0x61, 0x79,
  474. 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x64, 0x6e, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
  475. 0x48, 0x6f, 0x73, 0x74, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x0b, 0x73, 0x74, 0x61,
  476. 0x74, 0x69, 0x63, 0x48, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18,
  477. 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x22, 0x0a, 0x0c, 0x64, 0x69,
  478. 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08,
  479. 0x52, 0x0c, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x42,
  480. 0x0a, 0x0e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79,
  481. 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x78, 0x72, 0x61, 0x79, 0x2e, 0x61, 0x70,
  482. 0x70, 0x2e, 0x64, 0x6e, 0x73, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x72, 0x61, 0x74,
  483. 0x65, 0x67, 0x79, 0x52, 0x0d, 0x71, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65,
  484. 0x67, 0x79, 0x12, 0x28, 0x0a, 0x0f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x61, 0x6c,
  485. 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x64, 0x69, 0x73,
  486. 0x61, 0x62, 0x6c, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x36, 0x0a, 0x16,
  487. 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x49,
  488. 0x66, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69,
  489. 0x73, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x49, 0x66, 0x4d,
  490. 0x61, 0x74, 0x63, 0x68, 0x1a, 0x92, 0x01, 0x0a, 0x0b, 0x48, 0x6f, 0x73, 0x74, 0x4d, 0x61, 0x70,
  491. 0x70, 0x69, 0x6e, 0x67, 0x12, 0x34, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01,
  492. 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x78, 0x72, 0x61, 0x79, 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x64, 0x6e,
  493. 0x73, 0x2e, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67,
  494. 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f,
  495. 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61,
  496. 0x69, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x02,
  497. 0x69, 0x70, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x65, 0x64, 0x5f, 0x64, 0x6f,
  498. 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x72, 0x6f, 0x78,
  499. 0x69, 0x65, 0x64, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x4a, 0x04, 0x08, 0x07, 0x10, 0x08, 0x2a,
  500. 0x45, 0x0a, 0x12, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e,
  501. 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x46, 0x75, 0x6c, 0x6c, 0x10, 0x00, 0x12,
  502. 0x0d, 0x0a, 0x09, 0x53, 0x75, 0x62, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x10, 0x01, 0x12, 0x0b,
  503. 0x0a, 0x07, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x52,
  504. 0x65, 0x67, 0x65, 0x78, 0x10, 0x03, 0x2a, 0x35, 0x0a, 0x0d, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53,
  505. 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x53, 0x45, 0x5f, 0x49,
  506. 0x50, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x53, 0x45, 0x5f, 0x49, 0x50, 0x34, 0x10, 0x01,
  507. 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x53, 0x45, 0x5f, 0x49, 0x50, 0x36, 0x10, 0x02, 0x42, 0x46, 0x0a,
  508. 0x10, 0x63, 0x6f, 0x6d, 0x2e, 0x78, 0x72, 0x61, 0x79, 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x64, 0x6e,
  509. 0x73, 0x50, 0x01, 0x5a, 0x21, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
  510. 0x78, 0x74, 0x6c, 0x73, 0x2f, 0x78, 0x72, 0x61, 0x79, 0x2d, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x61,
  511. 0x70, 0x70, 0x2f, 0x64, 0x6e, 0x73, 0xaa, 0x02, 0x0c, 0x58, 0x72, 0x61, 0x79, 0x2e, 0x41, 0x70,
  512. 0x70, 0x2e, 0x44, 0x6e, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  513. }
  514. var (
  515. file_app_dns_config_proto_rawDescOnce sync.Once
  516. file_app_dns_config_proto_rawDescData = file_app_dns_config_proto_rawDesc
  517. )
  518. func file_app_dns_config_proto_rawDescGZIP() []byte {
  519. file_app_dns_config_proto_rawDescOnce.Do(func() {
  520. file_app_dns_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_app_dns_config_proto_rawDescData)
  521. })
  522. return file_app_dns_config_proto_rawDescData
  523. }
  524. var file_app_dns_config_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
  525. var file_app_dns_config_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
  526. var file_app_dns_config_proto_goTypes = []any{
  527. (DomainMatchingType)(0), // 0: xray.app.dns.DomainMatchingType
  528. (QueryStrategy)(0), // 1: xray.app.dns.QueryStrategy
  529. (*NameServer)(nil), // 2: xray.app.dns.NameServer
  530. (*Config)(nil), // 3: xray.app.dns.Config
  531. (*NameServer_PriorityDomain)(nil), // 4: xray.app.dns.NameServer.PriorityDomain
  532. (*NameServer_OriginalRule)(nil), // 5: xray.app.dns.NameServer.OriginalRule
  533. (*Config_HostMapping)(nil), // 6: xray.app.dns.Config.HostMapping
  534. (*net.Endpoint)(nil), // 7: xray.common.net.Endpoint
  535. (*router.GeoIP)(nil), // 8: xray.app.router.GeoIP
  536. }
  537. var file_app_dns_config_proto_depIdxs = []int32{
  538. 7, // 0: xray.app.dns.NameServer.address:type_name -> xray.common.net.Endpoint
  539. 4, // 1: xray.app.dns.NameServer.prioritized_domain:type_name -> xray.app.dns.NameServer.PriorityDomain
  540. 8, // 2: xray.app.dns.NameServer.geoip:type_name -> xray.app.router.GeoIP
  541. 5, // 3: xray.app.dns.NameServer.original_rules:type_name -> xray.app.dns.NameServer.OriginalRule
  542. 1, // 4: xray.app.dns.NameServer.query_strategy:type_name -> xray.app.dns.QueryStrategy
  543. 2, // 5: xray.app.dns.Config.name_server:type_name -> xray.app.dns.NameServer
  544. 6, // 6: xray.app.dns.Config.static_hosts:type_name -> xray.app.dns.Config.HostMapping
  545. 1, // 7: xray.app.dns.Config.query_strategy:type_name -> xray.app.dns.QueryStrategy
  546. 0, // 8: xray.app.dns.NameServer.PriorityDomain.type:type_name -> xray.app.dns.DomainMatchingType
  547. 0, // 9: xray.app.dns.Config.HostMapping.type:type_name -> xray.app.dns.DomainMatchingType
  548. 10, // [10:10] is the sub-list for method output_type
  549. 10, // [10:10] is the sub-list for method input_type
  550. 10, // [10:10] is the sub-list for extension type_name
  551. 10, // [10:10] is the sub-list for extension extendee
  552. 0, // [0:10] is the sub-list for field type_name
  553. }
  554. func init() { file_app_dns_config_proto_init() }
  555. func file_app_dns_config_proto_init() {
  556. if File_app_dns_config_proto != nil {
  557. return
  558. }
  559. type x struct{}
  560. out := protoimpl.TypeBuilder{
  561. File: protoimpl.DescBuilder{
  562. GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  563. RawDescriptor: file_app_dns_config_proto_rawDesc,
  564. NumEnums: 2,
  565. NumMessages: 5,
  566. NumExtensions: 0,
  567. NumServices: 0,
  568. },
  569. GoTypes: file_app_dns_config_proto_goTypes,
  570. DependencyIndexes: file_app_dns_config_proto_depIdxs,
  571. EnumInfos: file_app_dns_config_proto_enumTypes,
  572. MessageInfos: file_app_dns_config_proto_msgTypes,
  573. }.Build()
  574. File_app_dns_config_proto = out.File
  575. file_app_dns_config_proto_rawDesc = nil
  576. file_app_dns_config_proto_goTypes = nil
  577. file_app_dns_config_proto_depIdxs = nil
  578. }