2024-10-11 21:04:18 +08:00

131 lines
2.8 KiB
TypeScript

export interface DNSMapping {
hosts: {
[domain: string]: string[]
},
dns: string,
/**
* domain[0]
*
* + subdomain only
* $ domain only exact match
* [none] domain and subdomain
*/
domains: string[]
}
export const DIRECTS = {
HOTSPOT_CAPTIVE_PORTAL: {
dns: 'system',
hosts: {},
domains: [
'securelogin.com.cn',
'$captive.apple.com',
'$hotspot.cslwifi.com'
]
},
ROUTER: {
dns: 'system',
hosts: {},
domains: [
'+home',
// 'zte.home', // ZTE CPE
// 'airbox.home',
// 'bthub.home',
// 'bthomehub.home',
// 'hitronhub.home',
// 'web.setup.home'
// Aruba Router
'$instant.arubanetworks.com',
'$setmeup.arubanetworks.com',
// ASUS router
'$router.asus.com',
'$repeater.asus.com',
'asusrouter.com',
// NetGear
'routerlogin.net',
'routerlogin.com',
// Tenda WiFi
'tendawifi.com',
// TP-Link Router
'tplinkwifi.net',
'tplogin.cn',
'tplinkap.net',
'tplinkmodem.net',
'tplinkplclogin.net',
'tplinkrepeater.net',
// UniFi
'+ui.direct',
'$unifi',
// Other Router
'+huaweimobilewifi.com',
'+router',
// 'my.router',
// 'samsung.router',
// '$easy.box', // Vodafone EasyBox
'$aterm.me',
'$console.gl-inet.com',
// '$fritz.box',
// '$fritz.repeater',
// '$myfritz.box',
// '$speedport.ip', // Telekom
// '$giga.cube', // Vodafone GigaCube
'$homerouter.cpe', // Huawei LTE CPE
'$mobile.hotspot', // T-Mobile Hotspot
'$ntt.setup',
'$pi.hole',
'+plex.direct'
// 'web.setup'
]
},
SYSTEM: {
dns: 'system',
hosts: {},
domains: [
'+m2m',
// TailScale Magic DNS
'+ts.net',
// AdGuard
'$injections.adguard.org',
'$local.adguard.org',
// Android ADB
'_adb-tls-connect._tcp'
]
}
} satisfies Record<string, DNSMapping>;
export const LANS = {
LAN: {
dns: 'system',
hosts: {},
domains: [
'+lan',
// 'amplifi.lan',
'$localhost',
'localdomain',
'home.arpa',
// AS112
'10.in-addr.arpa',
'16.172.in-addr.arpa',
'17.172.in-addr.arpa',
'18.172.in-addr.arpa',
'19.172.in-addr.arpa',
'2?.172.in-addr.arpa',
// '20.172.in-addr.arpa',
// '21.172.in-addr.arpa',
// '22.172.in-addr.arpa',
// '23.172.in-addr.arpa',
// '24.172.in-addr.arpa',
// '25.172.in-addr.arpa',
// '26.172.in-addr.arpa',
// '27.172.in-addr.arpa',
// '28.172.in-addr.arpa',
// '29.172.in-addr.arpa',
'30.172.in-addr.arpa',
'31.172.in-addr.arpa',
'168.192.in-addr.arpa',
'254.169.in-addr.arpa'
]
}
} satisfies Record<string, DNSMapping>;