|
1 | 1 | { |
2 | 2 | "_comment": [ |
3 | 3 | "Curated fronting groups derived from patterniha/MITM-DomainFronting", |
4 | | - "(https://github.com/patterniha/MITM-DomainFronting). The Xray config", |
5 | | - "in that project ships a tested set of (sni, edge, member-domain)", |
6 | | - "tuples for Vercel, Fastly, AWS CloudFront, and direct-to-GitHub paths.", |
| 4 | + "(https://github.com/patterniha/MITM-DomainFronting) plus the", |
| 5 | + "subsequent expansions tracked in config.fronting-groups.example.json", |
| 6 | + "(PR #1191: vercel/fastly expansion + github-central/alive/gist/pubmed).", |
7 | 7 | "This file is the same data, restructured for rahgozar's `fronting_groups`", |
8 | 8 | "config shape. See docs/fronting-groups.md.", |
9 | 9 | "", |
10 | 10 | "Edge IPs rotate. If a group stops working, re-resolve `sni`", |
11 | 11 | "(`nslookup <sni>` or `dig +short <sni>`) and replace the IP in-place.", |
12 | | - "Order matters — first group whose `domains` list matches wins, so the", |
13 | | - "more-specific GitHub-direct groups appear before fastly (which would", |
14 | | - "otherwise eat `*.githubusercontent.com` via suffix match).", |
| 12 | + "Order matters — github-* groups precede fastly because fastly's", |
| 13 | + "`githubusercontent.com` suffix would otherwise eat", |
| 14 | + "`objects-origin.githubusercontent.com` under first-match-wins; pinned", |
| 15 | + "by `curated_groups::tests::curated_bundle_parses`. Each domain is", |
| 16 | + "covered by exactly one group — `match_fronting_group` is single-shot", |
| 17 | + "and returns the first match, so duplicate routes never get tried as", |
| 18 | + "fallbacks (a dial failure surfaces the error rather than iterating).", |
15 | 19 | "", |
16 | 20 | "The `_comment` key is ignored by the deserializer (Config doesn't use", |
17 | | - "`deny_unknown_fields`)." |
| 21 | + "`deny_unknown_fields`).", |
| 22 | + "", |
| 23 | + "Must stay structurally identical (same groups in the same order with", |
| 24 | + "matching name / ip / sni / domains) to config.fronting-groups.example.json's", |
| 25 | + "`fronting_groups` array — `curated_groups::tests::example_file_mirrors_curated_bundle`", |
| 26 | + "pins this so the CLI example and the UI's Load curated fronting groups", |
| 27 | + "button can't drift. Formatting and ordering of unrelated top-level keys", |
| 28 | + "(`_comment`, `mode`, etc.) are not part of the contract." |
18 | 29 | ], |
19 | 30 | "fronting_groups": [ |
20 | 31 | { |
21 | | - "name": "github-direct", |
22 | | - "ip": "140.82.121.4", |
23 | | - "sni": "github.com", |
| 32 | + "name": "github-central", |
| 33 | + "ip": "140.82.113.21", |
| 34 | + "sni": "central.github.com", |
24 | 35 | "domains": [ |
25 | | - "gist.github.com" |
| 36 | + "objects-origin.githubusercontent.com", |
| 37 | + "api.individual.githubcopilot.com", |
| 38 | + "glb-db52c2cf8be544.github.com", |
| 39 | + "api.githubcopilot.com" |
26 | 40 | ] |
27 | 41 | }, |
28 | 42 | { |
29 | | - "name": "github-content-direct", |
30 | | - "ip": "140.82.121.6", |
31 | | - "sni": "central.github.com", |
| 43 | + "name": "github-alive", |
| 44 | + "ip": "140.82.112.26", |
| 45 | + "sni": "alive.github.com", |
32 | 46 | "domains": [ |
33 | | - "objects-origin.githubusercontent.com" |
| 47 | + "alive.github.com", |
| 48 | + "live.github.com" |
| 49 | + ] |
| 50 | + }, |
| 51 | + { |
| 52 | + "name": "github", |
| 53 | + "ip": "140.82.121.3", |
| 54 | + "sni": "github.com", |
| 55 | + "domains": [ |
| 56 | + "gist.github.com" |
34 | 57 | ] |
35 | 58 | }, |
36 | 59 | { |
37 | 60 | "name": "vercel", |
38 | | - "ip": "76.76.21.21", |
39 | | - "sni": "react.dev", |
| 61 | + "ip": "216.230.84.193", |
| 62 | + "sni": "nextjs.org", |
40 | 63 | "domains": [ |
41 | 64 | "ai-sdk.dev", |
42 | 65 | "cursor.com", |
|
71 | 94 | }, |
72 | 95 | { |
73 | 96 | "name": "fastly", |
74 | | - "ip": "151.101.0.223", |
| 97 | + "ip": "151.101.128.223", |
75 | 98 | "sni": "pypi.org", |
76 | 99 | "domains": [ |
77 | 100 | "buzzfeed.com", |
|
111 | 134 | "redditstatic.com", |
112 | 135 | "redditstatus.com", |
113 | 136 | "www.fastly.com", |
| 137 | + "www.pinterest.com", |
114 | 138 | "www.python.org", |
115 | 139 | "xtls.github.io" |
116 | 140 | ] |
117 | 141 | }, |
118 | 142 | { |
119 | | - "name": "cloudfront", |
120 | | - "ip": "75.2.60.5", |
| 143 | + "name": "amazon-cloudfront", |
| 144 | + "ip": "3.33.186.135", |
121 | 145 | "sni": "kubernetes.io", |
122 | 146 | "domains": [ |
| 147 | + "bitballoon.com", |
123 | 148 | "netlify.app", |
124 | | - "netlify.com" |
| 149 | + "netlify.com", |
| 150 | + "netlifystatus.com" |
| 151 | + ] |
| 152 | + }, |
| 153 | + { |
| 154 | + "name": "pubmed", |
| 155 | + "ip": "34.107.134.59", |
| 156 | + "sni": "pubmed.ncbi.nlm.nih.gov", |
| 157 | + "domains": [ |
| 158 | + "pmc.ncbi.nlm.nih.gov" |
125 | 159 | ] |
126 | 160 | } |
127 | 161 | ] |
|
0 commit comments