direct.ts 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. export interface DNSMapping {
  2. hosts: {
  3. [domain: string]: string[]
  4. },
  5. dns: string,
  6. /**
  7. * domain[0]
  8. *
  9. * + subdomain only
  10. * $ domain only exact match
  11. * [none] domain and subdomain
  12. */
  13. domains: string[]
  14. }
  15. export const DIRECTS = {
  16. ROUTER: {
  17. dns: 'system',
  18. hosts: {},
  19. domains: [
  20. // Aruba Router
  21. 'instant.arubanetworks.com',
  22. 'setmeup.arubanetworks.com',
  23. // ASUS router
  24. 'router.asus.com',
  25. 'repeater.asus.com',
  26. 'asusrouter.com',
  27. // NetGear
  28. 'routerlogin.net',
  29. // Tenda WiFi
  30. 'tendawifi.com',
  31. // TP-Link Router
  32. 'tplinkwifi.net',
  33. 'tplogin.cn',
  34. 'tplinkap.net',
  35. 'tplinkeap.net',
  36. 'tplinkmodem.net',
  37. 'tplinkplclogin.net',
  38. 'tplinkrepeater.net',
  39. // Xiaomi Router
  40. 'miwifi.com',
  41. // ZTE CPE
  42. 'zte.home',
  43. // UniFi
  44. '+ui.direct',
  45. '$unifi',
  46. 'amplifi.lan',
  47. // Other Router
  48. 'hiwifi.com',
  49. 'huaweimobilewifi.com',
  50. 'my.router',
  51. 'phicomm.me',
  52. 'router.ctc',
  53. 'peiluyou.com',
  54. 'airbox.home',
  55. 'arcor.easybox',
  56. 'aterm.me',
  57. 'bthub.home',
  58. 'bthomehub.home',
  59. 'congstar.box',
  60. 'connect.box',
  61. 'console.gl-inet.com',
  62. 'easy.box',
  63. 'etxr',
  64. 'fritz.box',
  65. 'fritz.nas',
  66. 'fritz.repeater',
  67. 'giga.cube',
  68. 'hi.link',
  69. 'hitronhub.home',
  70. 'homerouter.cpe',
  71. 'myfritz.box',
  72. 'mobile.hotspot',
  73. 'ntt.setup',
  74. 'pi.hole',
  75. 'plex.direct',
  76. 'app.plex.tv',
  77. 'routerlogin.com',
  78. 'samsung.router',
  79. 'speedport.ip',
  80. 'steamloopback.host',
  81. 'web.setup',
  82. 'web.setup.home'
  83. ]
  84. },
  85. SYSTEM: {
  86. dns: 'system',
  87. hosts: {},
  88. domains: [
  89. '_hotspot_.m2m',
  90. 'hotspot.cslwifi.com',
  91. // TailScale Magic DNS
  92. 'ts.net',
  93. // AdGuard
  94. '$injections.adguard.org',
  95. '$local.adguard.org'
  96. ]
  97. }
  98. } satisfies Record<string, DNSMapping>;
  99. export const LANS = {
  100. LAN: {
  101. dns: 'system',
  102. hosts: {},
  103. domains: [
  104. 'lan',
  105. '$localhost',
  106. 'localdomain',
  107. 'home.arpa',
  108. // AS112
  109. '10.in-addr.arpa',
  110. '16.172.in-addr.arpa',
  111. '17.172.in-addr.arpa',
  112. '18.172.in-addr.arpa',
  113. '19.172.in-addr.arpa',
  114. '20.172.in-addr.arpa',
  115. '21.172.in-addr.arpa',
  116. '22.172.in-addr.arpa',
  117. '23.172.in-addr.arpa',
  118. '24.172.in-addr.arpa',
  119. '25.172.in-addr.arpa',
  120. '26.172.in-addr.arpa',
  121. '27.172.in-addr.arpa',
  122. '28.172.in-addr.arpa',
  123. '29.172.in-addr.arpa',
  124. '30.172.in-addr.arpa',
  125. '31.172.in-addr.arpa',
  126. '168.192.in-addr.arpa',
  127. '254.169.in-addr.arpa'
  128. ]
  129. }
  130. } satisfies Record<string, DNSMapping>;