Egern 支持多种类型的规则,可以用于控制网络流量的代理行为,同时可以用于阻止某些流量。规则按照配置顺序依次匹配,匹配成功后不再继续匹配后续规则。
支持的规则
域名规则
| 类型 | 名称 | 说明 |
|---|
| domain | 域名完全匹配 | 完全匹配域名 |
| domain_suffix | 域名后缀匹配 | 匹配域名后缀,自动处理子域名边界(如 google.com 匹配 www.google.com 但不匹配 fakegoogle.com) |
| domain_keyword | 域名关键词匹配 | 匹配含有指定关键词的域名 |
| domain_regex | 域名正则匹配 | 通过正则表达式匹配域名 |
| domain_wildcard | 域名通配符匹配 | 使用 glob 模式匹配域名,大小写不敏感(如 *.google.*) |
IP 规则
| 类型 | 名称 | 说明 |
|---|
| geoip | GeoIP 匹配 | 根据 ISO 3166-1 alpha-2 国家/地区代码匹配 IP 地址(如 CN、US) |
| ip_cidr | IPv4 范围匹配 | 匹配指定 IPv4 CIDR 范围 |
| ip_cidr6 | IPv6 范围匹配 | 匹配指定 IPv6 CIDR 范围 |
| asn | ASN 匹配 | 匹配 ASN 编号或组织名称(如 13335、AS13335、Telegram Messenger Inc) |
其他规则
| 类型 | 名称 | 说明 |
|---|
| url_regex | URL 正则匹配 | 通过正则表达式匹配完整 URL(仅 HTTP/HTTPS 流量) |
| user_agent | User-Agent 匹配 | 使用 glob 模式匹配 User-Agent 头,大小写不敏感(仅 HTTP/HTTPS 流量) |
| dest_port | 目标端口匹配 | 匹配目标端口,支持单端口、范围和混合格式(如 80,443,8000-9000) |
| protocol | 协议匹配 | 匹配协议类型:tcp、udp、http、https、quic、stun |
| rule_set | 规则集合 | 引用本地或远程规则集文件,将多条规则打包复用 |
网络环境规则
| 类型 | 名称 | 说明 |
|---|
| ssid | Wi-Fi SSID 匹配 | 使用 glob 模式匹配当前 Wi-Fi 名称,大小写不敏感 |
| bssid | Wi-Fi BSSID 匹配 | 使用 glob 模式匹配当前 Wi-Fi 接入点的 MAC 地址 |
| cellular | 蜂窝网络匹配 | 使用 glob 模式匹配蜂窝网络类型(如 NR、LTE、WCDMA) |
逻辑规则
| 类型 | 名称 | 说明 |
|---|
| and | 逻辑与 | 所有子条件都满足时匹配 |
| or | 逻辑或 | 任一子条件满足时匹配 |
| not | 逻辑非 | 子条件不满足时匹配 |
默认规则
| 类型 | 名称 | 说明 |
|---|
| default | 默认规则 | 兜底规则,匹配所有未被其他规则匹配的流量 |