# Two files, two generators, and a tag name that means different things

> runetfreedom/russia-v2ray-rules-dat publishes geoip.dat and geosite.dat for the V2Ray family, rebuilt every 6 hours from Russian block feeds. It is a distribution point rather than a program: no installer, no command line tool, two unversioned download URLs, and a ru-blocked category that draws on different upstream lists in each file.

**runetfreedom/russia-v2ray-rules-dat** — Этот репозиторий содержит автоматически обновляемые правила маршрутизации V2Ray, основанные на данных о заблокированных доменах и адресах в России.

- Repository: https://github.com/runetfreedom/russia-v2ray-rules-dat
- Stars: 2,366 · Forks: 70
- Language: Unknown
- License: GPL-3.0
- Published: 2026-10-14 · Updated: 2026-10-14 · Language: en
- Canonical page: https://hysenlabs.com/projects/runetfreedom-russia-v2ray-rules-dat

## Two binary files generated in two separate repositories

Everything this project ships is two compiled data files, and neither one is built here. geoip.dat is generated in @runetfreedom/russia-blocked-geoip, while geosite.dat is generated in @runetfreedom/russia-blocked-geosite, so the address side and the domain side are assembled in different places by two sibling repositories. The consumer list is broad for exactly that reason: V2Ray, v2rayN, Xray-core, mihomo, hysteria, Trojan-Go and leaf all read these same two filenames, so one download covers every one of them. The project also holds the official role of Russian geo file source for v2rayN. What is new relative to its base is the Russian input data, not the packaging. The repository layout confirms the split, since no source tree and no build script sit in this repository at all, which means anything wrong in the output has to be fixed in the generator repositories or in the upstream feeds they read.

## Six hour rebuilds and an unversioned download target

The update cadence is the operational fact that matters most here. The README states the repository is updated every 6 hours, and it presents both download links as always carrying the latest version of the files. That has a direct consequence for anyone pinning a client configuration: the URLs carry no version segment and no tag, so every fetch returns whatever build is current, and a client that reloads on a schedule can move between rule sets with no config change at all. The README does not document a rollback path, a way to request a previous build, or a checksum for either file. Treat the 6 hour figure as an upper bound on staleness rather than a guarantee, since nothing in the layout records which build a given fetch received. Keep your own copy of the pair that works if you need a stable baseline to compare a new one against.

## One tag name, two different upstream lists

Read the two category tables side by side and an asymmetry turns up at once. On the address side, ru-blocked holds ipresolve.lst and subnet.lst published by antifilter.download, with a separate ru-blocked-community category carrying community.lst from community.antifilter.download and a re-filter category for ipsum.lst from the re:filter project. On the domain side, geosite:ru-blocked is defined as the community list plus re:filter, and the main antifilter.download feed is not part of it. Enabling the same ru-blocked tag in both files therefore does not give you the same data, because the address side already folds in the feed the domain side leaves out. Both feeds are exposed separately as geosite:antifilter-download-community and geosite:refilter, so the union can be assembled by hand if you want to be explicit about it.

## The whitelist lives only on the address side

Whitelist handling is uneven in the same way. geoip.dat carries ru-whitelist, built from cidrwhitelist.txt in the russia-mobile-internet-whitelist project, and it is the only category on either side with a direct routing purpose. geosite.dat has no matching entry, and the nearest domain category is ru-available-only-inside, described as domains reachable only from inside Russia, which answers a different question. A configuration that sends a whitelist out through a direct connection depends on a category name that resolves for one file only and has no counterpart in the other. Convenience categories are lopsided too: the address file adds 10 ASN based entries such as geoip:cloudflare, geoip:yandex and geoip:ddos-guard, while the domain file inherits every category from v2fly/domain-list-community, including discord, openai and youtube, so a rule naming both files does not travel between them.

## Fetching two files instead of installing a package

There is no install step to write down. The project publishes no package, no installer and no command line tool, only two files and a link to each. The last push was on 2026-09-28, and the top level holds .github/, LICENSE and README.md only, with both files served from a branch other than main, so a clone of the default branch gives you nothing a client can load. Point your fetch at these two endpoints:

```bash
https://raw.githubusercontent.com/runetfreedom/russia-v2ray-rules-dat/release/geoip.dat
https://raw.githubusercontent.com/runetfreedom/russia-v2ray-rules-dat/release/geosite.dat
```

What you get after the fetch is two binary files whose bulk reflects the category counts described above, not text you can read or edit by hand. No checksum or signature accompanies either link, so hold on to the pair you are replacing if you want a manual comparison later.

## Where the seven hundred thousand counts sit

The two largest domain categories both carry a caution in the README, and the numbers behind them are worth setting against each other. geosite:ru-blocked-all merges every known blocked domain from every source at once and is given as no fewer than 700 thousand domains. geosite:antifilter-download covers the domains from antifilter.download alone and is given as almost 700 thousand. Those two figures sit almost on top of one another, so the union adds a modest amount of coverage over the single largest feed rather than a different order of magnitude, and the README still tells you to use both with care. Neither count is broken down per source, and the README does not say how overlapping entries are deduplicated or what happens when two feeds disagree about a domain.

## Ad and Windows telemetry lists ride along in geosite

Not every category in geosite.dat has to do with blocking. The file also carries category-ads-all for advertising domains and 3 Windows categories: win-spy for the domains Windows uses to watch and collect analytics, win-update for update traffic, and win-extra for the rest of what Windows reaches. Upstream feeds are named for the ru-blocked entries and the re:filter lists, but no source is given for those four, so their provenance is undocumented even though every client that loads the file inherits them. That is a practical cost when all you want is a block list, because the ad and telemetry domains travel in the same asset, and the only way to leave them out is to reference individual categories rather than load the file wholesale.

## Where this sits against Loyalsoldier's community build

The alternative worth naming is @Loyalsoldier/v2ray-rules-dat, credited here for the idea and the base of the project. That build assembles its own geoip.dat and geosite.dat from general community lists, and it does not carry the Russian block feeds, the ru-whitelist category or the 6 hour rebuild tied to them, so choosing this project means accepting the Russian datasets in place of the general ones. Nothing documents a way to take one file from each build and merge them. Two sibling projects cover the neighboring formats: @runetfreedom/geodat2srs converts geoip and geosite files into sing-box srs, which is the path for a sing-box deployment, and @runetfreedom/russia-v2ray-custom-routing-list ships ready made routing rules for various clients instead of category files, which is the other artefact plenty of people actually want.

## Conclusion

Take this project if you run a V2Ray family client, need Russian block data rebuilt several times a day, and can replace two binary files by hand. Leave it if your client already resolves its own geo assets, or if you need to know why one domain sits in one category, because the README documents upstream feeds only for the block lists. For sing-box, take @runetfreedom/geodat2srs rather than these two downloads. Before switching, diff the new geoip.dat and geosite.dat against your current copy, and check that ru-blocked covers different upstream lists in each file.

## FAQ

### How do I install russia-v2ray-rules-dat into V2Ray or Xray-core?

There is no package to install: the project ships two compiled files, geoip.dat and geosite.dat, and gives a direct raw file URL for each, which you point a client at in place of its bundled assets.

### How often does russia-v2ray-rules-dat update its data files?

The README states the repository is updated every 6 hours, and that both download links always serve the latest version of the files.

### What is the difference between geosite:ru-blocked and geosite:ru-blocked-all?

geosite:ru-blocked is the community list from community.antifilter.download combined with re:filter, while geosite:ru-blocked-all merges every source at once and is given as no fewer than 700 thousand domains, which the README tells you to use with care.

### Can I use russia-v2ray-rules-dat with sing-box?

Not as a direct download, since the project ships geoip.dat and geosite.dat. For sing-box the related project @runetfreedom/geodat2srs converts those geo files into sing-box srs.

### Does russia-v2ray-rules-dat have a whitelist category for both data files?

Only the address file does: geoip.dat carries ru-whitelist, built from cidrwhitelist.txt in russia-mobile-internet-whitelist. The domain file has no matching category, the closest being geosite:ru-available-only-inside for domains reachable only from inside Russia.

### What other categories ship with russia-v2ray-rules-dat?

geosite.dat carries category-ads-all for advertising domains plus win-spy, win-update and win-extra, and geoip.dat adds ten ASN based categories such as geoip:cloudflare and geoip:telegram.

## Sources

- [Issues](https://github.com/runetfreedom/russia-v2ray-rules-dat/issues)
- [License: GPL-3.0](https://github.com/runetfreedom/russia-v2ray-rules-dat/blob/main/LICENSE)
- [README](https://github.com/runetfreedom/russia-v2ray-rules-dat/blob/main/README.md)
- [Releases](https://github.com/runetfreedom/russia-v2ray-rules-dat/releases)
- [runetfreedom/russia-v2ray-rules-dat on GitHub](https://github.com/runetfreedom/russia-v2ray-rules-dat)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/runetfreedom-russia-v2ray-rules-dat
