Geo
GeoConfig — domain, IP, and app sets
Geo data sets are defined in ServerConfig.geo (GeoConfig). Schema: protos/proto/vx/geo/geo.proto.
Router rules and DNS refer to sets by name via domainTags, dstIpTags, srcIpTags, and geoDomains.
| Field | Type | Description |
|---|
domainSets | DomainSetConfig[] | Named groups of domain set tags |
greatDomainSets | GreatDomainSetConfig[] | Composed domain sets (inNames, exNames, opposites) |
atomicDomainSets | AtomicDomainSetConfig[] | Concrete domain lists or geosite files |
greatIpSets | GreatIPSetConfig[] | Composed IP sets |
atomicIpSets | AtomicIPSetConfig[] | CIDR lists or geoip files |
appSets | AppSetConfig[] | Mobile app id groupings |
Names must be unique within each category (no duplicate names across greatDomainSets and atomicDomainSets, and similarly for IP sets).
| Field | Description |
|---|
name | Tag used in domainTags |
domains | Inline Domain list |
geosite, geosites | Load from geosite file or remote |
useBloomFilter | Bloom filter optimization |
clashFiles | Clash-format rule files |
inverse | Match domains not in the set |
remoteGeoFiles | Download geodata on a schedule |
| Field | Description |
|---|
codes | Geosite category codes |
attributes | Attribute filters |
filepath | Local geosite.dat path |
remoteUrl, refreshCron | Remote download and cron refresh |
| Field | Description |
|---|
name | Tag used in *IpTags |
cidrs | Inline CIDR list |
geoip | GeoIPConfig — file, codes, remote URL, cron |
inverse | Match IPs outside the set |
clashFiles, remoteGeoFiles | External rule / remote sources |
Build large sets from other named sets:
| Field | Description |
|---|
name | Resulting set name |
oppositeName | Complement set name |
inNames | Include these sets |
exNames | Exclude these sets |
| Field | Description |
|---|
name | Set name |
tags | Member atomic/great set names |
| Field | Description |
|---|
name | Referenced by appTags in router rules |
appIds | AppId entries (keyword, prefix, or exact) |
clashFiles | Clash app rules |
Used under atomic sets for scheduled downloads:
| Field | Description |
|---|
filepath | Local path to write |
sourceUrl | HTTPS URL |
refreshCron | 5-field cron; empty = fetch only at startup/reload |
- Router —
domainTags, dstIpTags, geoDomains
- DNS —
domainTags, ipTags on DNS rules and servers