Profile
Back to NewsBack
GitHub Trending 4 min
Reader Mode
abclq/home-dns-adblock: ๐Ÿ  ๅฎถๅบญ DNS ๅนฟๅ‘Šๆ‹ฆๆˆช๏ผˆ็บขๆžœ็Ÿญๅ‰ง / ็•ช่Œ„ๅฐ่ฏด็ญ‰๏ผ‰โ€”โ€” ๅœจๅฎถใ€ๅ‡บ้—จ๏ผˆTailscale๏ผ‰้ƒฝ่ƒฝ็”จใ€‚85 ๆก็ฒพ็กฎ่ง„ๅˆ™ + 928 ๆกไธŠๆธธ็คพๅŒบ่ง„ๅˆ™๏ผŒ้›ถ่ฏฏไผคใ€‚Home DNS ad-blocker for Chinese apps.

abclq/home-dns-adblock: ๐Ÿ  ๅฎถๅบญ DNS ๅนฟๅ‘Šๆ‹ฆๆˆช๏ผˆ็บขๆžœ็Ÿญๅ‰ง / ็•ช่Œ„ๅฐ่ฏด็ญ‰๏ผ‰โ€”โ€” ๅœจๅฎถใ€ๅ‡บ้—จ๏ผˆTailscale๏ผ‰้ƒฝ่ƒฝ็”จใ€‚85 ๆก็ฒพ็กฎ่ง„ๅˆ™ + 928 ๆกไธŠๆธธ็คพๅŒบ่ง„ๅˆ™๏ผŒ้›ถ่ฏฏไผคใ€‚Home DNS ad-blocker for Chinese apps.

๐Ÿ  home-dns-adblock

ไธญๆ–‡ | English ยท MIT ยท 75 ๆก็ฒพ็กฎ่ง„ๅˆ™ + 939 ๆกไธŠๆธธ็คพๅŒบ่ง„ๅˆ™ ยท ็™ฝๅๅ•ไฟๆŠคๆญฃ็‰‡๏ผŒๅทฒ็Ÿฅๆญฃ็‰‡ๅŸŸ้›ถ่ฏฏๆ‹ฆ

stars</a> last-commit</a> license</a> rules</a> upstream</a>

ๅฎถๅบญ DNS ๅนฟๅ‘Šๆ‹ฆๆˆช โ€”โ€” 7ร—24 ๅœจๅฎถ่ท‘๏ผŒๅ‡บ้—จๅœจๅค–็…งๆ ท็”Ÿๆ•ˆ

้’ˆๅฏนๅ›ฝๅ†…ใ€Œ็œ‹ๅนฟๅ‘Šๆขๅ…่ดนๅ†…ๅฎนใ€็ฑป App๏ผˆ็บขๆžœๅ…่ดน็Ÿญๅ‰ง / ็•ช่Œ„ๅฐ่ฏด / ๅญ—่Š‚็ณป๏ผ‰็š„ DNS ๅฑ‚ๅนฟๅ‘Šๆ‹ฆๆˆชๆ–นๆกˆใ€‚

### ่ทŸ Pi-hole / AdGuard Home ๆœ‰ไป€ไนˆไธไธ€ๆ ท๏ผŸ
> ๅฎƒไปฌ่งฃๅ†ณ็š„ๆ˜ฏใ€Œ้€š็”จๅนฟๅ‘Šๆ‹ฆๆˆชใ€๏ผŒๆœฌ้กน็›ฎ่งฃๅ†ณ็š„ๆ˜ฏใ€Œๅ›ฝๅ†…็‰นๅฎš App ็š„้›ถไพตๅ…ฅๆ‹ฆๆˆช + ๅ‡บ้—จๅœจๅค–ไนŸ็”Ÿๆ•ˆใ€๏ผš
> | | ้€š็”จๆ–นๆกˆ๏ผˆPi-hole / AdGuard๏ผ‰| App Hook ๆ–นๆกˆ | ๆœฌ้กน็›ฎ |
|---|---|---|---|
| ่ง„ๅˆ™ๆ•ฐ้‡ | 10 ไธ‡+ ๅฎฝๆณ›่ง„ๅˆ™ | โ€” | 75 ๆก็ฒพ็กฎ่ง„ๅˆ™ + 939 ๆกไธŠๆธธ็คพๅŒบ่ง„ๅˆ™๏ผˆๅŽป้‡ๅŽๅˆ่ฎก 1011 ๆก๏ผ‰ |
| ่ฏฏไผค้ฃŽ้™ฉ | ๆœ‰ๅฏ่ƒฝ | โ€” | ้›ถ๏ผˆ็™ฝๅๅ•ไฟๆŠคๆญฃ็‰‡๏ผ‰ |
| ้œ€่ฆ root / ่ถŠ็‹ฑ | ไธ้œ€่ฆ | ้œ€่ฆ | ไธ้œ€่ฆ |
| ๅ‡บ้—จๅœจๅค–ๅฏ็”จ | โœ— | โœ— | โœ“ Tailscale ้šง้“ |
| ไธ“้—จ้’ˆๅฏน็บขๆžœ / ็•ช่Œ„ | โœ— | ๆœ‰๏ผˆHook ่ทฏ็บฟ๏ผ‰| โœ“ DNS ๅฑ‚ |
| ๅทฒ็ผ“ๅญ˜็š„ๅนฟๅ‘Š | ๆ‹ฆไธไฝ | ่ƒฝๆ‹ฆ | ๆ‹ฆไธไฝ๏ผˆ่งใ€Œๆ•ˆๆžœ่พน็•Œใ€๏ผ‰|

ไธ rootใ€ไธ่ฃ…ๆ่ฟฐๆ–‡ไปถใ€ไธ่ฃ… CA ่ฏไนฆใ€ไธๆ”นไปปไฝ• App โ€”โ€” ๅชๅœจไธ€ๅฐๅธธๅผ€็š„ Linux ไธปๆœบไธŠๅš DNS ๅฑ‚้ป‘ๆดžใ€‚ ๅฎถ้‡Œๆ‰€ๆœ‰่ฎพๅค‡ๆŠŠ DNS ๆŒ‡่ฟ‡ๆฅๅณๅฏ็”Ÿๆ•ˆ๏ผ›ไบบๅœจๅค–้ข๏ผˆ4G / ๅˆซไบบๅฎถ WiFi๏ผ‰้€š่ฟ‡ Tailscale ้šง้“๏ผŒๅŒๆ ท็”Ÿๆ•ˆใ€‚


๐Ÿ“– ็›ฎๅฝ•


๐Ÿฝ ไธค็ง็”จๆณ•๏ผŒๆŒ‘ไธ€ไธช

| | ้€‚ๅˆ | ๆ€Žไนˆๅš | |---|---|---| | โ‘  ่‡ชๅปบ๏ผˆๆœฌๆ–‡ไธปไฝ“๏ผ‰| ๆœ‰ไธ€ๅฐๅธธๅผ€ไธปๆœบใ€ๆƒณๅ…จๅฑ‹ + ๅ‡บ้—จ้ƒฝ็”Ÿๆ•ˆ | ่ฃ… dnsmasq + Tailscale๏ผŒ่งไธ‹ๆ–นใ€Œๅฟซ้€Ÿๅผ€ๅง‹ใ€ | | โ‘ก ๅช่ฎข้˜…่ง„ๅˆ™๏ผˆไธๆƒณๆŠ˜่…พๆœๅŠกๅ™จ๏ผ‰| ๆ‰‹ๆœบ/่ทฏ็”ฑๅ™จไธŠๅทฒๆœ‰่ฟ‡ๆปค่ฝฏไปถ | ๆŠŠ่ง„ๅˆ™ๅ–‚็ป™ AdGuard Home / AdGuard / Clash / Surge ็ญ‰ |

ๅชๆƒณ็”จ็Žฐๆˆ่ฝฏไปถ๏ผŸ โ†’ ็œ‹ docs/use-with-other-apps.md
> ไธ€่กŒ่ฎข้˜…๏ผˆAdGuard ่ฏญๆณ•ๅ…จ้‡็‰ˆ๏ผŒ่ตฐ jsDelivr ๅ…จ็ƒ CDN๏ผŒๅ›ฝๅ†…็›ด่ฟžๅฏ็”จใ€ๆตทๅค–ๅŒๆ ทๅฟซ๏ผ‰๏ผš
> https://fastly.jsdelivr.net/gh/abclq/home-dns-adblock@main/dist/adguard-dns-full.txt
>
= ็ฒพ็กฎ 86 ๆก + ไธŠๆธธ 938 ๆก๏ผŒๅŽป้‡ๅŽ 1021 ๆก๏ผŒไธ€ๆก่ฎข้˜…ๆ‹ฟๅˆฐๅ…จ้‡ใ€‚
ๆƒณๅˆ†ๅฑ‚็ฎก็†๏ผˆ็ฒพ็กฎ่ง„ๅˆ™ๅ•็‹ฌๆ›ดๆ–ฐ๏ผ‰ๅฏๆ”น่ฎข adguard-dns.txt + upstream-domains.txt ไธคๆกใ€‚
ๅ…ถๅฎƒๆ ผๅผ๏ผˆhosts / Clash / Surge / Quantumult X / dnsmasq๏ผ‰่ง dist/ใ€‚
ๆ‹‰ไธๅŠจๅฐฑๆŠŠ fastly ๆขๆˆ gcore ๆˆ– testingcf๏ผ›ๅˆซ็”จ cdn.jsdelivr.net๏ผˆๅ›ฝๅ†…ไผš่ขซ้‡็ฝฎ๏ผ‰ใ€‚

โœจ ๆ•ˆๆžœไธ€่งˆ

| ๅœบๆ™ฏ | ๅšๆณ• | ๆ•ˆๆžœ | |------|------|------| | ๅœจๅฎถ | ่ฎพๅค‡ DNS ๆ‰‹ๅกซๆœฌๆœบๅ†…็ฝ‘ IP | ๅนฟๅ‘ŠๅŸŸไธ€ๅพ‹็ญ” NXDOMAIN๏ผŒๅนฟๅ‘Šๆ‹‰ไธๅˆฐๆ•ฐๆฎ่ขซ่ทณ่ฟ‡ | | ๅœจๅค– | ่ฃ… Tailscale๏ผŒ็™ปๅŒไธ€่ดฆๅท | DNS ่ตฐๅŠ ๅฏ†้šง้“ๅ›žๅฎถ๏ผŒ4G/ๅผ‚ๅœฐ WiFi ไพ็„ถๆ‹ฆๆˆช |

ๅฎžๆต‹ๆ•ฐๆฎ๏ผˆ2026-10๏ผŒ็บขๆžœๅ…่ดน็Ÿญๅ‰ง + ็•ช่Œ„ๅฐ่ฏดไธปๅŠ›ๅœบๆ™ฏ๏ผ‰

| ๆŒ‡ๆ ‡ | ๆ•ฐๅ€ผ | |------|------| | ่ง„ๅˆ™ๆกๆ•ฐ | 75 ๆก็ฒพ็กฎๅŸŸๅ๏ผˆๆ— ไธ€ๆกๅฎฝๆณ›ๅ…ณ้”ฎๅญ—่ง„ๅˆ™๏ผ‰+ 939 ๆกไธŠๆธธ็คพๅŒบ่ง„ๅˆ™๏ผˆๅ…จ้‡ๅˆๅนถ 1021 ๆก๏ผŒ่ง dist/adguard-dns-full.txt๏ผ‰ | | ๆœๅŠก่ต„ๆบๅ ็”จ | ๅ†…ๅญ˜ 2.5 MB ยท CPU 0.0% | | ๅ‡บ้—จ้“พ่ทฏๅปถ่ฟŸ | 39 ms๏ผˆP2P ็›ด่ฟž๏ผŒไธ่ตฐไธญ็ปง๏ผ‰ | | ๅผ‚ๅœฐๅฎžๆต‹ | ๅŒป้™ข WiFi ไธ‹๏ผŒ1431 ๆก DNS ๆŸฅ่ฏขๅ…จ้ƒจๅ›ž่ฝๆœฌๆœบๅนถๆญฃๅธธๆ‹ฆๆˆช | | ่ฏฏไผค | 0๏ผˆๆญฃ็‰‡ / ๅ›พๅบŠ / ไธšๅŠกๆŽฅๅฃๅ…จ้ƒจๆ”พ่กŒ๏ผ‰ |

ๅ…ณ้”ฎ่ฏ๏ผš็บขๆžœๅ…่ดน็Ÿญๅ‰ง / ็•ช่Œ„ๅฐ่ฏด / ๅŽปๅนฟๅ‘Š / dnsmasq / DNS ้ป‘ๆดž / Tailscale / ๅ‡บ้—จๅฏ็”จ

๐Ÿง  ๅŽŸ็†๏ผˆ30 ็ง’็‰ˆ๏ผ‰

App ่ฆๆ˜พ็คบไธ€ๆกๅนฟๅ‘Š๏ผŒ็ฌฌไธ€ๆญฅๅฟ…้กป่งฃๆžๅนฟๅ‘ŠๆœๅŠกๅ™จ็š„ๅŸŸๅ๏ผˆๆŸฅๅท๏ผ‰ใ€‚

ๆˆ‘ไปฌๅœจ่ฟ™ไธ€ๅฑ‚ๅšๆ‰‹่„š๏ผšๅ‡กๆ˜ฏ้—ฎๅนฟๅ‘ŠๅŸŸ็š„๏ผŒไธ€ๅพ‹ๅ›ž็ญ” NXDOMAIN๏ผˆใ€ŒๅŸŸๅไธๅญ˜ๅœจใ€๏ผ‰ โ†’ App ๆ‹ฟไธๅˆฐๅœฐๅ€ โ†’ ๅนฟๅ‘ŠๅŠ ่ฝฝๅคฑ่ดฅ โ†’ ่ขซ่ทณ่ฟ‡ใ€‚

ไธบไป€ไนˆไธๆ˜ฏ 0.0.0.0๏ผš้‚ฃๆ˜ฏใ€ŒๆœๅŠกๅ™จไธๅฏ็”จใ€๏ผŒApp ไผšๅๅค้‡่ฏ•๏ผˆๅฎžๆต‹ๆŸๅนฟๅ‘ŠๅŸŸ 20 ๅˆ†้’Ÿ่ขซ้‡่ฏ• 206 ๆฌก๏ผ‰๏ผ›
่€Œ NXDOMAIN ๆ˜ฏใ€ŒๅŸŸๅไธๅญ˜ๅœจใ€๏ผŒApp ็ซ‹ๅˆปๆ”พๅผƒ๏ผŒ้‡่ฏ•ๅฝ’้›ถใ€‚

ไธบไป€ไนˆๆฏ”ๆ‹ฆ IP ่ชๆ˜Ž๏ผšๅนฟๅ‘ŠๆœๅŠกๅ™จ็š„ IP ๅคฉๅคฉๅ˜๏ผŒไฝ†ๅŸŸๅๆ˜ฏๅ›บๅฎš็š„ใ€‚ๆ‹ฆไฝ"ๆŸฅๅท"่ฟ™ไธ€ๆญฅ๏ผŒๅฎƒๆขๅคšๅฐ‘ IP ้ƒฝๆฒก็”จใ€‚

ไธบไป€ไนˆๆฏ”ๆ”น hosts ๅนฒๅ‡€๏ผšๆœฌๆ–นๆกˆ่ท‘ๅœจ็‹ฌ็ซ‹ไธปๆœบไธŠ๏ผŒๆ”นๅŠจไธ่ฝๅˆฐไปปไฝ•่ฎพๅค‡๏ผŒ้šๆ—ถๅฏๅ›ž้€€๏ผ› ่ฎพๅค‡ไพงๅช้œ€ๆŠŠ DNS ๆŒ‡่ฟ‡ๆฅ๏ผŒๅ–ๆถˆไนŸๆ˜ฏๆ”นไธ€ไธชๅญ—ๆฎตใ€‚


๐Ÿ— ๆžถๆž„

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ๅœจๅฎถ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
   ๆ‰‹ๆœบ / ๅนณๆฟ / ็”ต่„‘ โ”€โ”€ WiFi โ”€โ”€> 192.168.x.x:53 (dnsmasq)
                                              โ”‚
                                              โ”œโ”€ ๅ‘ฝไธญ้ป‘ๅๅ• โ†’ ็ญ” NXDOMAIN  โ† ๅนฟๅ‘Š่ขซๆ‹ฆ
                                              โ””โ”€ ๅ…ถไฝ™       โ†’ ่ฝฌๅ‘ไธŠๆธธ DNS โ† ๆญฃๅธธไธŠ็ฝ‘

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ๅœจๅค– โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” ๆ‰‹ๆœบ(4G/ๅผ‚ๅœฐWiFi) โ”€โ”€ Tailscale ๅŠ ๅฏ†้šง้“(P2P 39ms) โ”€โ”€> 100.x.y.z:53 (ๅŒไธ€ไปฝ้ป‘ๅๅ•) โ†‘ ็ฎก็†ๅŽๅฐ้… Global nameserver + ๆ‰“ๅผ€ใ€ŒOverride local DNSใ€

ๅ…ณ้”ฎ่ฎพ่ฎก๏ผšๅœจๅฎถ่ตฐๅฑ€ๅŸŸ็ฝ‘็›ด่ฟž๏ผŒๅœจๅค–่ตฐ Tailscale ้šง้“ โ€”โ€” ไธคไธชๅ…ฅๅฃๅ…ฑ็”จๅŒไธ€ไปฝ้ป‘ๅๅ•ๅ’ŒๅŒไธ€ไปฝๆ—ฅๅฟ—๏ผŒ ่ง„ๅˆ™ๅช้œ€่ฆ็ปดๆŠคไธ€ๅค„ใ€‚

่ง„ๅˆ™ๆ˜ฏๆ€Žไนˆ่ฟ›ๆฅ็š„๏ผˆๅŒๅ‘่‡ชๅŠจๅŒๆญฅ๏ผ‰

่ง„ๅˆ™ๆœ‰ไธคไธชๆฅๆบ๏ผŒๅ„่ตฐๅ„็š„่‡ชๅŠจ้“พ่ทฏ๏ผŒไบ’ไธๅนฒๆ‰ฐ๏ผš

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ‘  ไธปๅŠจๅŒๆญฅๅˆซไบบ็š„๏ผˆไธป่ฆ๏ผ‰โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
   ็คพๅŒบ่ง„ๅˆ™ไป“ๅบ“ โ”€โ”€> GitHub Actions๏ผˆไบ‘็ซฏ๏ผŒๆฏๅคฉ 04:00๏ผ‰
   AWAvenue ็ญ‰        โ””โ”€ ๆ‹‰ๅ– โ†’ ่งฃๆž AdGuard ่ฏญๆณ• โ†’ ็™ฝๅๅ•็กฌไฟๆŠค
                          โ†’ ๆไบค config/adblock-upstream.conf
                                    โ”‚
   ๅฎถ้‡Œไธปๆœบ๏ผˆๆฏๅคฉ 05:00๏ผ‰<โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  git pull
        โ””โ”€ ่ฏญๆณ•้—จๆ ก้ชŒ โ†’ ้€š่ฟ‡ๆ‰้‡่ฝฝ dnsmasq โ†’ ้ชŒ็™ฝๅๅ•ๆœช่ขซ่ฏฏไผค
           ๏ผˆๅคฑ่ดฅ่‡ชๅŠจๅ›žๆปš๏ผŒไฟ็•™ไธŠไธ€็‰ˆ๏ผ‰

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ‘ก ๆˆ‘ไปฌๆ‰‹ๅŠจๅŒๆญฅ่‡ชๅทฑ็š„ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” ๆœฌๆœบๅฎžๆœบๆŠ“ๅŒ…็กฎ่ฎค็š„ๆ–ฐๅนฟๅ‘ŠๅŸŸ โ”€โ”€> config/adblock-fq.conf โ””โ”€ ๆœฌๆœบๆฏ 6h ๆŽจ้€ๅˆฐๆœฌไป“ๅบ“๏ผˆๅชๆŽจไธๆ‹‰๏ผ‰

ไธบไป€ไนˆไธŠๆธธๅŒๆญฅๆ”พไบ‘็ซฏ๏ผšไธไพ่ต–ๅฎถ้‡Œๆœบๅ™จๅผ€ๆœบใ€ไธๅ—ๅฎถ้‡Œ็ฝ‘็ปœๅฝฑๅ“๏ผŒไป“ๅบ“่‡ชๅทฑๅฐฑ่ƒฝไฟๆŒๆœ€ๆ–ฐใ€‚

ไธคๆก้“พ่ทฏ็š„ไบง็‰ฉๆ˜ฏๅˆ†ๅผ€็š„ๆ–‡ไปถ๏ผš

| ๆ–‡ไปถ | ๆฅๆบ | ่ฐ็ปดๆŠค | ๆกๆ•ฐ | |------|------|--------|------| | config/adblock-fq.conf | ๅฎžๆœบๆŠ“ๅŒ… + ็คพๅŒบ่ง„ๅˆ™ไบคๅ‰้ชŒ่ฏ | ไบบ๏ผˆๆœฌไป“ๅบ“๏ผ‰ | 45 | | config/adblock-extra.conf | ๆ‰‹ๅทฅ่กฅๅ……๏ผˆๅŸ‹็‚น / DoH ๅŠ ๅ›บ๏ผ‰ | ไบบ | 30 | | config/adblock-upstream.conf | ่‡ชๅŠจ็”Ÿๆˆ๏ผŒๅ‹ฟๆ‰‹ๆ”น | GitHub Actions | 927 |

ๅฎ‰ๅ…จไธ‰้‡้—จ๏ผˆ็ผบไธ€ไธๅฏ๏ผŒๅฆๅˆ™ไผš่ฏฏไผคๆญฃ็‰‡๏ผ‰๏ผš

  1. ็™ฝๅๅ•็กฌไฟๆŠค โ€”โ€” config/whitelist.txt ๅˆ—ๅ‡บ็š„ๅŸŸ๏ผˆๆญฃ็‰‡ CDN / ็›ดๆ’ญๆต / ๅ›พๅบŠ / ้ฃŽๆŽง๏ผ‰
ๅŠๅ…ถๆ‰€ๆœ‰ๅญๅŸŸ๏ผŒๆฐธไธๅ…ฅ่ง„ๅˆ™๏ผŒไธŠๆธธๅˆ—่กจ้‡Œๆœ‰ไนŸไธ€ๅพ‹ๅ‰”้™ค - ๅˆปๆ„ไพ‹ๅค–๏ผšqznovelvod.com ไธ‹็š„ v{N}-*-reading-ad๏ผˆ็Žฐๅญ˜ 9 ๆก๏ผ‰ ๆ˜ฏๆ•…ๆ„็ฉฟ้€็š„ ๏ผˆๆญฃ็‰‡่ตฐ *-reading-video๏ผŒไธๅŒๅญๅŸŸ๏ผ‰ใ€‚่„šๆœฌ้‡Œ็š„ WL_EXCEPTIONS ่ฎฉๅฎƒไปฌไพ‹ๅค–ไผ˜ๅ…ˆ๏ผŒ ไธ่ขซ็™ฝๅๅ•ๅ‰”ๆމใ€‚่ฏฆ่ง docs/domain-list.md ็ฌฌไบŒ่Š‚
  1. ่ฃธๅŸŸๅฑ้™ฉ่ง„ๅˆ™ๅ‰”้™ค โ€”โ€” ไธŠๆธธๅˆ—่กจ้‡Œ .zijieapi.comใ€.isnssdk.com ่ฟ™็งๅฐๆ•ดไธชๅŸŸ็š„่ง„ๅˆ™
็›ดๆŽฅไธขๆމ๏ผˆๅˆ่ฟ›ๆฅไผš่ฎฉๅญ—่Š‚็ณป App ๅ…จๅบŸ๏ผ‰
  1. ่ฏญๆณ•้—จ + ๅ›žๆปš โ€”โ€” ๆ–ฐ่ง„ๅˆ™ๅ…ˆ dnsmasq --test๏ผŒ้€š่ฟ‡ๆ‰้‡่ฝฝ๏ผ›ไธ้€š่ฟ‡่‡ชๅŠจๅ›žๆปšๅˆฐไธŠไธ€็‰ˆ

๐Ÿš€ ๅฟซ้€Ÿๅผ€ๅง‹

0. ๅ‰็ฝฎๆกไปถ

  • ไธ€ๅฐๅธธๅผ€็š„ Linux ไธปๆœบ๏ผˆUbuntu / Debian / OpenWrt / ๆ ‘่Ž“ๆดพ / ่ฟทไฝ ไธปๆœบๅ‡ๅฏ๏ผ‰
  • ไธปๆœบๆœ‰ๅ›บๅฎšๅ†…็ฝ‘ IP๏ผˆDHCP ้™ๆ€็ป‘ๅฎšๅณๅฏ๏ผ‰
  • ่‹ฅ่ฆๅœจๅค–้ขไนŸ่ƒฝ็”จ๏ผšไธ€ไธช Tailscale ่ดฆๅท๏ผˆๅ…่ดน็‰ˆๅคŸ็”จ๏ผš3 ็”จๆˆท / 100 ่ฎพๅค‡๏ผ‰

1. ่ฃ… dnsmasq ๅนถ็Œ่ง„ๅˆ™

sudo apt-get install -y dnsmasq
sudo mkdir -p /etc/dnsmasq-adblock
sudo cp config/adblock-fq.conf /etc/dnsmasq-adblock/          # 45 ๆก็Žฐๆˆ่ง„ๅˆ™๏ผˆๅฎžๆœบๆŠ“ๅŒ…็กฎ่ฎค๏ผ‰
sudo cp config/adblock-upstream.conf /etc/dnsmasq-adblock/    # 939 ๆกไธŠๆธธ็คพๅŒบ่ง„ๅˆ™๏ผˆ่‡ชๅŠจ็”Ÿๆˆ๏ผ‰
sudo cp config/whitelist.txt /etc/dnsmasq-adblock/            # ็™ฝๅๅ•๏ผˆไฟๆŠคๅŸŸ๏ผŒๅŠกๅฟ…ไธ€่ตท่ฃ…๏ผ‰
sudo cp config/adblock-extra.conf /etc/dnsmasq-adblock/       # ๆ‰‹ๅทฅ่กฅๅ……่ง„ๅˆ™
sudo cp config/dnsmasq.conf.example /etc/dnsmasq-adblock/dnsmasq.conf

ๆ”น้…็ฝฎ้‡Œ็š„ไธ‰ๅค„๏ผˆconfig/dnsmasq.conf.example ๅทฒๆ ‡ๆณจ๏ผ‰๏ผš

listen-address=192.168.x.x        # โ† ๆ”นๆˆไฝ ไธปๆœบ็š„ๅ†…็ฝ‘ IP
log-facility=/etc/dnsmasq-adblock/queries.log
dns-forward-max=2000             # ๅนถๅ‘่ฝฌๅ‘ไธŠ้™๏ผˆ็บขๆžœๅฏๅŠจไผš็ˆ†ๅ‘ๅ‡ ็™พๆŸฅ่ฏข๏ผ‰
conf-file=/etc/dnsmasq-adblock/adblock-fq.conf
conf-file=/etc/dnsmasq-adblock/adblock-upstream.conf

ๅฏๅŠจ๏ผˆๆŽจ่ไบค็ป™ systemd ๆ‰˜็ฎก๏ผšๅผ€ๆœบ่‡ชๅฏ + ๆŒ‚ไบ† 5 ็ง’่‡ชๅŠจๆ‹‰่ตท๏ผ‰๏ผš

sudo cp config/dnsmasq-home.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now dnsmasq-home.service
systemctl status dnsmasq-home.service     # ็œ‹ๅˆฐ active (running) ๅณๅฏ
๐Ÿ’ก ไปฅไธŠ 1ใ€ๅฏๅŠจ ไธคๆญฅๅฏไปฅ็›ดๆŽฅ็”จไธ€้”ฎ่„šๆœฌ๏ผšsudo ./scripts/install.sh 192.168.x.x
โ€”โ€” ๆœ‰ systemd ๆ—ถ่‡ชๅŠจ่ฃ…ๅฅฝ dnsmasq-home.service๏ผ›ๆฒกๆœ‰ systemd๏ผˆๅฆ‚ OpenWrt๏ผ‰ๆ—ถๅ›ž้€€ไธบ
sudo dnsmasq -C /etc/dnsmasq-adblock/dnsmasq.conf ่ฃธ่ฟ›็จ‹ๅฏๅŠจ๏ผˆๆ— ่‡ชๆ„ˆใ€ๆ— ๅผ€ๆœบ่‡ชๅฏ๏ผ‰ใ€‚
ๆณจๆ„๏ผšdnsmasq ็ณป็ปŸๆœๅŠก้ป˜่ฎคๅ ็”จ 53 ็ซฏๅฃ๏ผŒ่‹ฅไธŽ็ณป็ปŸ่‡ชๅธฆๅฎžไพ‹ๅ†ฒ็ช๏ผŒ
ๅ…ˆ sudo systemctl stop dnsmasq && sudo systemctl disable dnsmasq๏ผˆๆœฌ้กน็›ฎ็”จ่‡ชๅทฑ็š„ dnsmasq-home.service ๅ’Œ็‹ฌ็ซ‹้…็ฝฎ็›ฎๅฝ•๏ผ‰ใ€‚

2. ่ฎฉ่ฎพๅค‡็”จไธŠ

| ่ฎพๅค‡ | ๆ“ไฝœ | |------|------| | iPhone / iPad | ่ฎพ็ฝฎ โ†’ ๆ— ็บฟๅฑ€ๅŸŸ็ฝ‘ โ†’ โ“˜ โ†’ ้…็ฝฎ DNS โ†’ ๆ‰‹ๅŠจ โ†’ ๅˆ ๆމๅŽŸๆœ‰ๆก็›ฎ๏ผŒๅช็•™ 192.168.x.x | | Android | ่ฎพ็ฝฎ โ†’ ็ฝ‘็ปœ โ†’ ็งไบบ DNS๏ผˆๅ…ณ้—ญ๏ผ‰โ†’ WiFi ่ฏฆๆƒ… โ†’ IP ่ฎพ็ฝฎ โ†’ ้™ๆ€ โ†’ DNS1 ๅกซ 192.168.x.x | | Windows | ็ฝ‘ๅกๅฑžๆ€ง โ†’ IPv4 โ†’ ไฝฟ็”จไธ‹้ข็š„ DNS โ†’ ้ฆ–้€‰ 192.168.x.x | | ่ทฏ็”ฑๅ™จ๏ผˆๆŽจ่๏ผ‰ | DHCP ไธ‹ๅ‘็š„ DNS ๆ”นๆˆ 192.168.x.x๏ผŒๅ…จๅฑ‹่ฎพๅค‡่‡ชๅŠจ็”Ÿๆ•ˆ |

โ˜… iOS ไธŠๅช็•™ไธ€ไธช DNS๏ผŒๆททๅ…ฅ 1.1.1.1 ไน‹็ฑปๅœจๅ›ฝๅ†…ไธ้€š็š„ๆก็›ฎไผšๅฏผ่‡ดๆ–ญ็ฝ‘ใ€‚

3.๏ผˆๅฏ้€‰๏ผ‰ๅ‡บ้—จๅœจๅค–ไนŸ่ƒฝ็”จ โ€”โ€” Tailscale

ๅฎŒๆ•ดๆญฅ้ชค่ง docs/tailscale-remote.md๏ผŒๅ››ๆญฅๆฆ‚ๆ‹ฌ๏ผš

# โ‘  ๆœฌๆœบๅฎ‰่ฃ…ๅนถ็™ปๅฝ•๏ผˆไผšๆ‰“ๅฐๆŽˆๆƒ้“พๆŽฅ๏ผŒๆต่งˆๅ™จ็‚นๅผ€๏ผ‰
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up --hostname=my-dns --accept-dns=false --accept-routes=false

โ‘ก dnsmasq ๅขžๅŠ ็›‘ๅฌ Tailscale ็ฝ‘ๆฎต

echo "listen-address=100.x.y.z" | sudo tee -a /etc/dnsmasq-adblock/dnsmasq.conf echo "interface=tailscale0" | sudo tee -a /etc/dnsmasq-adblock/dnsmasq.conf sudo systemctl restart dnsmasq-home.service

ๆฒกๆœ‰ systemd๏ผšsudo pkill -x dnsmasq && sudo dnsmasq -C /etc/dnsmasq-adblock/dnsmasq.conf

โ‘ข ๅŽๅฐ https://login.tailscale.com/admin/dns

ๆทปๅŠ  nameserver = 100.x.y.z + ๆ‰“ๅผ€ใ€ŒOverride local DNSใ€โ˜…

โ‘ฃ ๆ‰‹ๆœบ่ฃ… Tailscale๏ผŒ็™ปๅŒไธ€่ดฆๅท๏ผŒๆ‰“ๅผ€ๅผ€ๅ…ณ

โ˜… ไธ‰ไธชๆœ€ๅฎนๆ˜“่ธฉๆญป็š„ๅ‘๏ผˆ่ฏฆ่ง docs/pitfalls.md๏ผ‰๏ผš

  1. ไธๅ‹พใ€ŒOverride local DNSใ€= ็™ฝ้… โ€”โ€” ๆ‰‹ๆœบๅชๅœจ่งฃๆž *.ts.net ๆ—ถๆ‰ไผš้—ฎไฝ ็š„ๆœบๅ™จ
  2. iOS ไธŠใ€ŒVPN ๅ›พๆ ‡ไบฎ็€ใ€โ‰ ใ€ŒApp ๅทฒ็™ปๅฝ•ใ€ โ€”โ€” ่ดฆๅทๆฒก็™ปๅฝ•ๆ—ถๆ•ฐๆฎ้ขๅฎŒๅ…จไธๅทฅไฝœ
  3. iOS ๅŒๆ—ถๅช่ƒฝๆœ‰ไธ€ไธช VPN โ€”โ€” ๅ…ถๅฎƒ็ฟปๅข™ VPN ๅผ€็€ๆ—ถ Tailscale ่ตทไธๆฅ

๐Ÿ“ ่ง„ๅˆ™ๆ˜ฏๆ€Žไนˆๆฅ็š„

็ฒพ็กฎๅŸŸๅ๏ผŒ็ปไธไฝฟ็”จๅฎฝๆณ›ๅ…ณ้”ฎๅญ—ใ€‚ ่ฟ™ๆ˜ฏๆœฌๆ–นๆกˆไธ่ฏฏไผค็š„ๆ ธๅฟƒใ€‚

python3 scripts/gen_rules.py     # โ˜… ๅฎ‰ๅ…จๆจกๅผ๏ผšๅชๅ†™ scripts/adblock-fq.generated.conf ๅนถๆ‰“ๅฐๅทฎๅผ‚
                                  #   ไธไผš่ฆ†็›– config/adblock-fq.conf๏ผˆ้‚ฃๆ˜ฏๅ”ฏไธ€็œŸๆบ๏ผŒๆ‰‹ๅทฅ็ปดๆŠค + ไธŠๆธธ่‡ชๅŠจๅŒๆญฅ๏ผ‰

่ง„ๅˆ™ๆฅๆบ๏ผˆ็คพๅŒบ่ง„ๅˆ™้›†ไบคๅ‰้ชŒ่ฏ + ๅฎžๆœบๆŠ“ๅŒ…็กฎ่ฎค๏ผ‰๏ผš

  • honue/rules โ€” Loon ๆ’ไปถๆ ผๅผ
  • chxm1023/Script_X โ€” ่ฟ‡ๆปค่ง„ๅˆ™
  • anti-AD
  • AWAvenue-Ads-Rule
  • ๅญ—่Š‚็ณป็คพๅŒบ่ง„ๅˆ™
  • ๆœฌๆœบ DNS ๆ—ฅๅฟ—ๅฎžๆœบๆŠ“ๅŒ…็กฎ่ฎค๏ผˆๆœ€ๅ…ณ้”ฎ็š„ไธ€็Žฏ๏ผŒ่งไธ‹๏ผ‰
ๅ‘็Žฐๆ–ฐๅนฟๅ‘ŠๅŸŸ็š„ๅทฅไฝœๆต๏ผˆๆœฌ้กน็›ฎๆœ€ๅฎž็”จ็š„้ƒจๅˆ†๏ผ‰๏ผš
# ็œ‹ๅˆฐๅนฟๅ‘Š็š„้‚ฃไธ€ๅˆป๏ผŒ่ฎฐๅฝ•ๆ—ถ้—ด โ†’ ไบ‹ๅŽไปŽๅ…จ้‡ๆ—ฅๅฟ—ๆŒ‰ๆ—ถ้—ดๆˆณๅ›žๆบฏ
./scripts/adblock-helper.sh win 3      # ๆœ€่ฟ‘ 3 ๅˆ†้’Ÿ็š„ๆ‰€ๆœ‰ๆŸฅ่ฏข
./scripts/adblock-helper.sh suspect    # ็–‘ไผผๅนฟๅ‘ŠๅŸŸๆธ…ๅ•
./scripts/adblock-helper.sh ad         # ๅทฒ่ขซ้ป‘ๆดžๆ‹ฆไธ‹็š„
./scripts/adblock-helper.sh top        # ๆŸฅ่ฏข้‡ Top30

ๅนฟๅ‘ŠๅŸŸ็š„็‰นๅพ๏ผšๅชๅœจๅนฟๅ‘Šๅ‡บ็Žฐ็š„้‚ฃไธ€็žฌ้—ด่ขซๆŸฅ่ฏข๏ผŒๅนณๆ—ถๅฎŒๅ…จไธๅ‡บ็Žฐใ€‚ ็”จ่ฟ™ไธช็‰นๅพๅฏไปฅๆŠŠๅนฟๅ‘ŠๅŸŸไปŽๅ‡ ็™พๆกๆ—ฅๅฟ—้‡Œ็ฒพๅ‡†ๆŒ‘ๅ‡บๆฅ โ†’ ่กฅ่ฟ› gen_rules.py โ†’ ่ท‘ไธ€ๆฌก็œ‹ๅทฎๅผ‚ โ†’ ไบบๅทฅ็กฎ่ฎคๅŽๆ‰‹ๅŠจๅˆๅนถๅˆฐ config/adblock-fq.confใ€‚


โš ๏ธ ๆ•ˆๆžœ่พน็•Œ๏ผˆ่ฏšๅฎž่ฏดๆ˜Ž๏ผŒๅˆซๆŠฑไธๅˆ‡ๅฎž้™…็š„ๆœŸๅพ…๏ผ‰

่ƒฝๆ‹ฆไฝ็š„๏ผšๅนฟๅ‘Š SDK ็š„ๆŽฅๅฃ่ฏทๆฑ‚ใ€ๅนฟๅ‘Š่ฎก่ดนใ€็‚นๅ‡ปไธŠๆŠฅใ€ๅนฟๅ‘Š็ด ๆ็ญพๅใ€ๅฐ่ฏดๅนฟๅ‘Š่ง†้ข‘ โ€”โ€” ๆ™ฎ้่ƒฝ่ฎฉๅนฟๅ‘Š"ๅŠ ่ฝฝไธๅ‡บๆฅ"่€Œ่ขซ่ทณ่ฟ‡ใ€‚

ๆ‹ฆไธไฝ็š„๏ผš

| ็ฑปๅž‹ | ๅŽŸๅ›  | |------|------| | ็›ดๆ’ญๆตๆ’ๆ’ญๅนฟๅ‘Š | ไธŽๆญฃ็‰‡ๅ…ฑ็”จๅŒไธ€ไธช่ง†้ข‘ CDN ๅŸŸๅ๏ผˆpull-*.douyincdn.com๏ผ‰๏ผŒๆ‹ฆไบ†ๆญฃ็‰‡ไธ€่ตทๅบŸ | | ๅทฒ็ผ“ๅญ˜็š„ๅนฟๅ‘Š | DNS ๅชๆ‹ฆ"ๆ–ฐ็š„"่งฃๆž่ฏทๆฑ‚๏ผŒๅทฒ็ปไธ‹่ฝฝๅˆฐๆœฌๅœฐ็š„ๅนฟๅ‘Š็…งๆ ทๆ’ญ | | App ๆ‹ฟๅˆฐ CNAME ๅŽ่‡ช่กŒ่งฃๆž | ๆ—ฅๅฟ—้‡Œ่กจ็Žฐไธบ ๅŽŸๅŸŸๅ..c.cdnhwc1.com๏ผŒ็ป•่ฟ‡้ป‘ๅๅ• | | DoH / ็ณป็ปŸ็บง VPN | ๅฎขๆˆท็ซฏๆ”น็”จๅŠ ๅฏ† DNS ๆˆ–ๅ…จๅฑ€ VPN๏ผŒ็›ดๆŽฅ็ป•่ฟ‡ๆœฌๆœบ DNS |

ๅฆๅค–๏ผš่ฟ™ๅฅ—ๆ–นๆกˆ่ฎฉๆ‰€ๆœ‰็ป่ฟ‡ๅฎƒ็š„่ฎพๅค‡ไธ€่ตทๅŽปๅนฟๅ‘Š โ€”โ€” ่ฟ™ๆ˜ฏไผ˜็‚น๏ผˆๅฎถไบบ้›ถ้…็ฝฎ๏ผ‰๏ผŒ ไนŸๆ˜ฏ้ฃŽ้™ฉ๏ผˆ่ฏฏๆ‹ฆไผšๅฝฑๅ“ๅ…จๅฎถ๏ผ‰ใ€‚ๆ‰€ไปฅๆ–ฐๅขž่ง„ๅˆ™ๅฟ…้กปๅ…ˆๅœจๅ•ๅฐ่ฎพๅค‡ไธŠ้ชŒ่ฏๆญฃ็‰‡ๆญฃๅธธ๏ผŒๅ†ๅ…จ้‡ๆ”พๅผ€ใ€‚


๐Ÿ“ ็›ฎๅฝ•็ป“ๆž„

.
โ”œโ”€โ”€ README.md
โ”œโ”€โ”€ LICENSE
โ”œโ”€โ”€ CHANGELOG.md
โ”œโ”€โ”€ CONTRIBUTORS.md
โ”œโ”€โ”€ config/
โ”‚   โ”œโ”€โ”€ adblock-fq.conf            # โ˜… ไธป่ง„ๅˆ™๏ผŒๅฎžๆœบๆŠ“ๅŒ…็กฎ่ฎค๏ผˆ45 ๆก็ฒพ็กฎๅŸŸๅ๏ผ‰
โ”‚   โ”œโ”€โ”€ adblock-extra.conf         # โ˜… ๆ‰‹ๅทฅ่กฅๅ……่ง„ๅˆ™๏ผˆๅŸ‹็‚น็ปŸ่ฎก + DoH ๅŠ ๅ›บ๏ผŒ30 ๆก๏ผ‰
โ”‚   โ”œโ”€โ”€ adblock-upstream.conf      # โš™ ไธŠๆธธ็คพๅŒบ่ง„ๅˆ™๏ผˆActions ่‡ชๅŠจ็”Ÿๆˆ๏ผŒ927 ๆก๏ผŒๅ‹ฟๆ‰‹ๆ”น๏ผ‰
โ”‚   โ”œโ”€โ”€ whitelist.txt              # โ˜… ็™ฝๅๅ•๏ผš็ปไธ่ƒฝๆ‹ฆ็š„ไฟๆŠคๅŸŸ๏ผˆ16 ๆก๏ผ‰
โ”‚   โ”œโ”€โ”€ dnsmasq.conf.example       # ้…็ฝฎๆจกๆฟ๏ผˆๆ”น 3 ๅค„ๅณๅฏ็”จ๏ผ‰
โ”‚   โ”œโ”€โ”€ dnsmasq-home.service       # โ˜… systemd ๅ•ๅ…ƒ๏ผˆๅผ€ๆœบ่‡ชๅฏ + ๆŒ‚ไบ†่‡ชๅŠจๆ‹‰่ตท๏ผ‰
โ”‚   โ””โ”€โ”€ dnsmasq-adblock.logrotate  # ๆ—ฅๅฟ—่ฝฎ่ฝฌ
โ”œโ”€โ”€ dist/                          # โ˜… ๅคšๆ ผๅผ่ง„ๅˆ™๏ผŒไพ›็ฌฌไธ‰ๆ–น่ฝฏไปถ็›ดๆŽฅ่ฎข้˜…
โ”‚   โ”œโ”€โ”€ README.md                  #   ่ฎข้˜…ๅœฐๅ€ไธŽ็”จๆณ•
โ”‚   โ”œโ”€โ”€ hosts.txt / hosts-ipv6.txt
โ”‚   โ”œโ”€โ”€ adguard-dns.txt
โ”‚   โ”œโ”€โ”€ clash-surge-rules.txt
โ”‚   โ”œโ”€โ”€ quantumultx-rules.txt
โ”‚   โ”œโ”€โ”€ domains.txt
โ”‚   โ”œโ”€โ”€ upstream-domains.txt       #   ไธŠๆธธ่ง„ๅˆ™็บฏๅŸŸๅ็‰ˆ๏ผˆ927 ๆก๏ผ‰
โ”‚   โ””โ”€โ”€ dnsmasq-adblock.conf
โ”œโ”€โ”€ scripts/
โ”‚   โ”œโ”€โ”€ gen_rules.py               # ่ง„ๅˆ™็”Ÿๆˆๅ™จ๏ผˆๅคšๆบๅˆๅนถ + ็™ฝๅๅ•ไฟๆŠค๏ผŒโ˜… ๅฎ‰ๅ…จๆจกๅผ๏ผšไธ่ฆ†็›–็บฟไธŠ๏ผ‰
โ”‚   โ”œโ”€โ”€ sync_upstream.py           # โ˜… ไธŠๆธธๅŒๆญฅ๏ผˆไบ‘็ซฏ่ท‘๏ผŒๆ‹‰็คพๅŒบ่ง„ๅˆ™ + ็™ฝๅๅ•่ฟ‡ๆปค + ๅˆปๆ„ไพ‹ๅค–๏ผ‰
โ”‚   โ”œโ”€โ”€ export_lists.py            # โ˜… ๅฏผๅ‡บๅคšๆ ผๅผ่ง„ๅˆ™๏ผˆ็”Ÿๆˆ dist/๏ผ‰
โ”‚   โ”œโ”€โ”€ adblock-helper.sh          # ๆŠ“ๅŒ…้€ŸๆŸฅๅทฅๅ…ท๏ผˆๅ‘็Žฐๆ–ฐๅนฟๅ‘ŠๅŸŸ็š„ๅˆฉๅ™จ๏ผ‰
โ”‚   โ”œโ”€โ”€ install.sh                 # ไธ€้”ฎ้ƒจ็ฝฒ๏ผˆๆœ‰ systemd ่‡ชๅŠจ่ฃ… dnsmasq-home.service๏ผ‰
โ”‚   โ””โ”€โ”€ verify.sh                  # ้ƒจ็ฝฒๅŽ่‡ชๆฃ€
โ””โ”€โ”€ docs/
    โ”œโ”€โ”€ principles.md              # ๅŽŸ็†ไธŽๆžถๆž„่ฏฆ่งฃ
    โ”œโ”€โ”€ domain-list.md             # โ˜… ๅŸŸๅๆธ…ๅ•๏ผš่ฏฅๆ‹ฆ็š„ / ็ปไธ่ƒฝๆ‹ฆ็š„
    โ”œโ”€โ”€ pitfalls.md                # โ˜… ่ธฉๅ‘ๅ…จ่ฎฐๅฝ•
    โ”œโ”€โ”€ tailscale-remote.md        # ๅ‡บ้—จๅœจๅค–ๆ–นๆกˆ
    โ”œโ”€โ”€ use-with-other-apps.md     # โ˜… ้…ๅˆๅ…ถไป–่ฝฏไปถไฝฟ็”จ๏ผˆๅช่ฎข้˜…๏ผŒไธ่‡ชๅปบ๏ผ‰
    โ”œโ”€โ”€ for-agents.md              # โ˜… ็ป™ AI ๅŠฉๆ‰‹็š„ไฝœไธš่ฏดๆ˜Ž๏ผˆๅ…ˆ่ฏป่ฟ™ไธชๅ†ๅŠจๆ‰‹๏ผ‰
    โ”œโ”€โ”€ coordination.md            # ๐Ÿ“‹ ๅคš agent ๅไฝœๅฐ่ดฆ๏ผˆๆœฌๆœบ โ†” ไบ‘ๆœบๅฏน่ดฆ็”จ๏ผŒๅ†…้ƒจ๏ผ‰
    โ””โ”€โ”€ redguo-case-study.md       # โ˜… ๅฎžๆต‹ๆกˆไพ‹๏ผš็บขๆžœ็Ÿญๅ‰ง๏ผˆๆŠ“ๅŒ…โ†’ๆต‹ๆผๆดžโ†’่กฅ่ง„ๅˆ™๏ผŒDNS/ๅฐ็ซ็ฎญไธคๅฅ—ๆ€Žไนˆ็”จ๏ผ‰

๐Ÿ›  ๅธธ็”จๅ‘ฝไปค

# ้ƒจ็ฝฒ่‡ชๆฃ€
./scripts/verify.sh

ๅฎžๆ—ถ็œ‹ๆ‰€ๆœ‰่ฎพๅค‡็š„ DNS ๆŸฅ่ฏข

tail -f /etc/dnsmasq-adblock/queries.log

ๅช็œ‹่ขซๆ‹ฆไธ‹็š„ๅนฟๅ‘Š

grep "NXDOMAIN" /etc/dnsmasq-adblock/queries.log | tail -30

ๆŸๅฐ่ฎพๅค‡ๅœจๆŸฅไป€ไนˆ

grep "from 192.168.x.x" /etc/dnsmasq-adblock/queries.log | tail -50

้‡ๆ–ฐ็”Ÿๆˆ่ง„ๅˆ™ๅŽ่ฎฉ dnsmasq ็”Ÿๆ•ˆ๏ผˆSIGHUP ไธ้‡่ฏป่ง„ๅˆ™๏ผŒๅฟ…้กป restart๏ผ‰

sudo systemctl restart dnsmasq-home.service

ๅ›ž้€€๏ผˆ้…็ฝฎๆ”นๅŠจๅ‰ๅ…ˆๅค‡ไปฝ๏ผ‰

sudo cp /etc/dnsmasq-adblock/dnsmasq.conf.bak /etc/dnsmasq-adblock/dnsmasq.conf sudo systemctl restart dnsmasq-home.service

โš ๏ธ ๅƒไธ‡ๅˆซ็”จ pkill -f 'dnsmasq -C ...' โ€”โ€” ๅฎƒไผšๅŒน้…ๅˆฐไฝ ่‡ชๅทฑ้‚ฃๆกๅ‘ฝไปค๏ผŒ

ๆŠŠ่‡ชๅทฑไนŸๆ€ๆމ๏ผˆๆœฌ้กน็›ฎ่ธฉ่ฟ‡๏ผŒ53 ็ซฏๅฃ่ฃธๅฅ”๏ผ‰ใ€‚

่ฃธ่ฟ›็จ‹็”จ: sudo pkill -x dnsmasq && sudo dnsmasq -C /etc/dnsmasq-adblock/dnsmasq.conf

ๆœ‰ systemd ๅฐฑ็”จ: sudo systemctl restart dnsmasq-home.service


๐Ÿค ่ดก็Œฎ

ๆฌข่ฟŽๆไบคๅฎžๆต‹ๆœ‰ๆ•ˆ็š„ๆ–ฐๅนฟๅ‘ŠๅŸŸๅ โ€”โ€” ่ฟ™ๆ˜ฏๆœฌ้กน็›ฎๆœ€ๆœ‰ไปทๅ€ผ็š„่ดก็Œฎ็ฑปๅž‹ใ€‚

ๆไบค่ง„ๅˆ™่ฏทๅŠกๅฟ…่ฏดๆ˜Ž๏ผš

  1. ่งฆๅ‘ๅœบๆ™ฏ๏ผšๅ“ชไธช Appใ€ไป€ไนˆไฝ็ฝฎ๏ผˆๅผ€ๅฑ / ไฟกๆฏๆต / ๆฟ€ๅŠฑ่ง†้ข‘๏ผ‰ๅ‡บ็Žฐ็š„ๅนฟๅ‘Š
  2. ่ฏๆฎ๏ผš่ฏฅๅŸŸๅœจๅนฟๅ‘Šๅ‡บ็Žฐ้‚ฃไธ€ๅˆปๆ˜ฏๅฆ่ขซๆŸฅ่ฏข๏ผˆDNS ๆ—ฅๅฟ—็‰‡ๆฎต๏ผ‰
  3. ๆ˜ฏๅฆ่ฏฏไผค๏ผš็กฎ่ฎคๆญฃ็‰‡ / ๅ›พ็‰‡ / ไธšๅŠกๅŠŸ่ƒฝๆญฃๅธธ
  4. ๅชๆไบค็ฒพ็กฎๅŸŸๅ โ€”โ€” ไธๆŽฅๅ— DOMAIN-KEYWORD ็ฑป็š„ๅฎฝๆณ›่ง„ๅˆ™
่ดก็Œฎๆต็จ‹๏ผšFork โ†’ ๅœจ scripts/gen_rules.py ้‡ŒๅŠ ไธŠไฝ ็š„ๅŸŸๅ๏ผˆๅนถๅ†™ๅฅฝๆณจ้‡Š่ฏดๆ˜Žๆฅๆบ๏ผ‰โ†’ ่ท‘ python3 scripts/gen_rules.py ็œ‹ๅทฎๅผ‚ โ†’ ๆ‰‹ๅŠจๅˆๅนถ่ฟ› config/adblock-fq.conf โ†’ ๆไบค PR ้™„ๅธฆๅฎžๆต‹่ฏๆฎใ€‚

็ปไธ่ฆๆไบค็š„ๅŸŸๅ็ฑปๅž‹่ง docs/domain-list.md ็š„ใ€Œ็ฆๆ‹ฆๆธ…ๅ•ใ€ใ€‚


๐Ÿค– ็ป™ๆœบๅ™จไบบ / ๅไฝœ่€…็š„ไฝœไธš่ฏดๆ˜Ž

ๅฆ‚ๆžœไฝ ๏ผˆๆˆ–ไฝ ็š„ AI ๅŠฉๆ‰‹๏ผ‰่ฆๅŠจๆ‰‹ๆ”น่ฟ™ไธชไป“ๅบ“๏ผŒๅ…ˆ่ฏป docs/for-agents.mdใ€‚

้‚ฃไธ€ไปฝๆ˜ฏๅ†™็ป™ๆœบๅ™จไบบ็œ‹็š„๏ผŒๅ†…ๅฎนๅŒ…ๆ‹ฌ๏ผš

  • ไธ‰ๆ–นๅธƒๅฑ€๏ผšๆœฌๆœบ ~/.hermes/dns/๏ผˆๆƒๅจ๏ผ‰ยท GitHub ไป“ๅบ“ ยท ไบ‘็ซฏ Actions๏ผŒ่ฐๆ˜ฏ่ฐใ€่ฐ่ƒฝๆ”น
  • ๐Ÿ”ด ้“ๅพ‹ๆธ…ๅ•๏ผš็ฆๆ‹ฆ่ฃธๅŸŸ / NXDOMAIN ็ฉบๅฐพๅ†™ๆณ• / ่ทจๆ ‡็ญพๅฟ…้กปๅˆ—ๅ…จๅŸŸๅ / ๅชๆ’ๅ…ฅไธ้‡ๆŽ’ / ็ฆ็”จ pkill -f / SIGHUP ๆ— ๆ•ˆ / ๆกๆ•ฐๅชไฟก grep -c
  • ๆ”น่ง„ๅˆ™ๆ ‡ๅ‡†ๆต็จ‹๏ผšๅค‡ไปฝ โ†’ ๆ”น โ†’ dnsmasq --test โ†’ restart โ†’ ๅŒๅ‘้ชŒ่ฏ๏ผˆๆ–ฐๅŸŸ NXDOMAIN ไธ”็™ฝๅๅ•ๅŸŸ NOERROR๏ผ‰
  • ๆŽ’ๆŸฅ่ฏฏๅฐๆต็จ‹๏ผš็ฌฌไธ€ๆญฅๆฐธ่ฟœๆ˜ฏๅ…ˆ็กฎ่ฎคๆœๅŠกๆดป็€๏ผˆ่ก€ๆณช๏ผš้™้ป˜ๆญป 36 ๅฐๆ—ถ๏ผ‰
  • ๆˆ‘ไปฌๅนฒ่ฟ‡ไป€ไนˆ๏ผš2026-10-05 ๅปบๅบ“ โ†’ 10-06 ็บขๆžœ่ฏฏๅฐ โ†’ 10-13 ๅคงไฟฎ โ†’ 10-14 ๆŠ“ๅŒ…่กฅๆผ๏ผŒๅซๅ…ณ้”ฎๅ†ณ็ญ–ไธŽๅทฒๆŽจ็ฟป็š„้”™่ฏฏ็ป“่ฎบ
  • ็”จๆˆทๅธธ่ฎพ่ฆๆฑ‚ + ๅทกๆฃ€ๆœบๅ™จไบบ่ฏฅๆŸฅไป€ไนˆ
่ฟ™ไปฝๆ–‡ๆกฃๅญ˜ๅœจ็š„ๆ„ไน‰๏ผš่ง„ๅˆ™ๆœฌ่บซไผš่ฟ‡ๆ—ถ๏ผŒ่ธฉ่ฟ‡็š„ๅ‘ไธไผšใ€‚ ๅˆซ้‡ๅค่ธฉใ€‚

๐Ÿ“‹ ๅคšไธช AI ๅŠฉๆ‰‹ๅŒๆ—ถๆ”น่ฟ™ไธชไป“ๅบ“๏ผŸ ็”จ docs/coordination.md ๅฏน่ดฆ โ€”โ€” ้‚ฃๆ˜ฏๅ†…้ƒจๅไฝœๅฐ่ดฆ๏ผˆๅฝ“ๅ‰็Šถๆ€ / ๅพ…ๅŠž / ๅฏน่ดฆ่ฎฐๅฝ• / ไบ‰่ฎฎ๏ผ‰๏ผŒๅผ€ๅทฅๅ‰ๅ…ˆ่ฏป๏ผŒๅนฒๅฎŒๅพ€้‡Œๅ†™ใ€‚ ๆ”พไป“ๅบ“้‡Œ่€Œไธๆ˜ฏ่ตฐ่Šๅคฉ๏ผŒๅฐฑๆ˜ฏๅ› ไธบๅช้  git pull ๅฐฑ่ƒฝ่ฏป๏ผŒไธไพ่ต–ไปปไฝ•่ดฆๅท็™ปๅฝ•ๆ€ใ€‚


๐Ÿ™ ่‡ด่ฐข

ๆœฌ้กน็›ฎ็ซ™ๅœจ่ฟ™ไบ›็คพๅŒบ่ง„ๅˆ™้›†็š„่‚ฉ่†€ไธŠ๏ผš

ไปฅๅŠ Tailscale ๆไพ›็š„ๅ…่ดนๅฎ‰ๅ…จ็ป„็ฝ‘ โ€”โ€” ่ฎฉใ€Œๅ‡บ้—จไนŸ่ƒฝ็”จๅฎถ้‡Œ DNSใ€่ฟ™ไปถไบ‹ๅ˜ๅพ—้›ถๆˆๆœฌใ€‚

ๅฎŒๆ•ดๅๅ•่ง CONTRIBUTORS.mdใ€‚


๐Ÿ“„ License

MIT

ๆœฌ้กน็›ฎไป…ไพ›ไธชไบบๅญฆไน ไธŽ่‡ชๅฎถ็ฝ‘็ปœ็Žฏๅขƒไผ˜ๅŒ–ไฝฟ็”จใ€‚
่ฏท้ตๅฎˆๅ„ App ็š„็”จๆˆทๅ่ฎฎ๏ผŒๅœจๅˆๆณ•ๅˆ่ง„่Œƒๅ›ดๅ†…ไฝฟ็”จใ€‚
Chat with me