Thanks to visit codestin.com
Credit goes to github.com

Skip to content
/ iplist Public

IP Address Collection and Management Service with multiple output formats: mikrotik, json, text, ipset, nfset, clashx, keenetic, switchy, amnezia

License

Notifications You must be signed in to change notification settings

rekryt/iplist

Repository files navigation

IP Address Collection and Management Service with multiple formats

For english readme: README.en.md

Demo URL: https://iplist.opencck.org

iplist

БСрвис сбора IP-адрСсов ΠΈ CIDR Π·ΠΎΠ½

Π”Π°Π½Π½Ρ‹ΠΉ сСрвис ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для сбора ΠΈ обновлСния IP-адрСсов (IPv4 ΠΈ IPv6), Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡ… CIDR Π·ΠΎΠ½ для ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Π΄ΠΎΠΌΠ΅Π½ΠΎΠ². Π­Ρ‚ΠΎ асинхронный PHP Π²Π΅Π±-сСрвСр Π½Π° основС AMPHP ΠΈ Linux-ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ whois ΠΈ ipcalc. БСрвис прСдоставляСт интСрфСйсы для получСния списков Π·ΠΎΠ½ ip адрСсов ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² (IPv4 адрСсов, IPv6 адрСсов, Π° Ρ‚Π°ΠΊΠΆΠ΅ CIDRv4 ΠΈ CIDRv6 Π·ΠΎΠ½) Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°Ρ…, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ тСкстовый, JSON, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ скриптов для добавлСния Π² "Address List" Π½Π° Ρ€ΠΎΡƒΡ‚Π΅Ρ€Π°Ρ… Mikrotik (RouterOS), Keenetic KVAS\BAT, SwitchyOmega, Amnezia ΠΈ Π΄Ρ€.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ возмоТности

  • Π‘Π±ΠΎΡ€ ΠΈ автоматичСскоС ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ IP-адрСсов ΠΈ CIDR Π·ΠΎΠ½ для Π΄ΠΎΠΌΠ΅Π½ΠΎΠ².
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π²Ρ‹Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°Ρ… (JSON, lst, Mikrotik, OpenWRT, ipset ΠΈ Ρ‚.Π΄).
  • Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ с внСшними источниками Π΄Π°Π½Π½Ρ‹Ρ… (ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Π²Π½Π΅ΡˆΠ½ΠΈΡ… URL).
  • Π›Π΅Π³ΠΊΠΎΠ΅ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Docker Compose.
  • Настройка Ρ‡Π΅Ρ€Π΅Π· JSON Ρ„Π°ΠΉΠ»Ρ‹ для управлСния Π΄ΠΎΠΌΠ΅Π½Π°ΠΌΠΈ.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ

  • PHP 8.1+ (amphp, revolt)
  • whois, ipcalc (linux)

Image

Π€ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ

Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ описаниС
json JSON Ρ„ΠΎΡ€ΠΌΠ°Ρ‚
text Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ строкой
comma Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ запятыми
geoip v2rayGeoIPDat
mikrotik MikroTik Script
switchy SwitchyOmega RuleList
nfset Dnsmasq nfset
ipset Dnsmasq ipset
clashx ClashX
kvas Keenetic KVAS
bat Keenetic Routes .bat
amnezia Amnezia filter list
pac Proxy Auto-Configuration file

Настройки

ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ хранятся Π² config/<Π³Ρ€ΡƒΠΏΠΏΠ°>/<ΠΏΠΎΡ€Ρ‚Π°Π»>.json. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ JSON Ρ„Π°ΠΉΠ» прСдставляСт собой ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π°Π»Π°, задавая Π΄ΠΎΠΌΠ΅Π½Ρ‹ для ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΈ источники Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ IP ΠΈ CIDR.

{
    "domains": [
        "youtube.com",
        "www.youtube.com",
        "m.youtube.com",
        "www.m.youtube.com",
        "googlevideo.com",
        "www.googlevideo.com",
        "ytimg.com",
        "i.ytimg.com"
    ],
    "dns": ["127.0.0.11:53", "77.88.8.88:53", "8.8.8.8:53"],
    "timeout": 43200,
    "ip4": [],
    "ip6": [],
    "cidr4": [],
    "cidr6": [],
    "external": {
        "domains": ["https://raw.githubusercontent.com/nickspaargaren/no-google/master/categories/youtubeparsed"],
        "ip4": ["https://raw.githubusercontent.com/touhidurrr/iplist-youtube/main/ipv4_list.txt"],
        "ip6": ["https://raw.githubusercontent.com/touhidurrr/iplist-youtube/main/ipv6_list.txt"],
        "cidr4": ["https://raw.githubusercontent.com/touhidurrr/iplist-youtube/main/cidr4.txt"],
        "cidr6": ["https://raw.githubusercontent.com/touhidurrr/iplist-youtube/main/cidr6.txt"]
    }
}
свойство Ρ‚ΠΈΠΏ описаниС
domains string[] Бписок Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² ΠΏΠΎΡ€Ρ‚Π°Π»Π°
dns string[] Бписок DNS сСрвСров для обновлСния ip-адрСсов. По ΠΌΠΈΠΌΠΎ локального ΠΈ google dns, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹Π΅ российскиС DNS, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ЯндСкс
timeout int ВрСмя ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ip-адрСсов Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² (сСкунды)
ip4 string[] ΠΠ°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ список ipv4 адрСсов
ip6 string[] ΠΠ°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ список ipv6 адрСсов
cidr4 string[] ΠΠ°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ список CIDRv4 Π·ΠΎΠ½ ipv4 адрСсов
cidr6 string[] ΠΠ°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ список CIDRv6 Π·ΠΎΠ½ ipv6 адрСсов
external object Бписки URL для получСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΡ‚ сторонних источников
свойство Ρ‚ΠΈΠΏ описаниС
domains string[] Бписок URL для пополнСния Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² ΠΏΠΎΡ€Ρ‚Π°Π»Π°
ip4 string[] Бписок URL для пополнСния ipv4 адрСсов
ip6 string[] Бписок URL для пополнСния ipv6 адрСсов
cidr4 string[] Бписок URL для пополнСния CIDRv4 Π·ΠΎΠ½ ipv4 адрСсов
cidr6 string[] Бписок URL для пополнСния CIDRv6 Π·ΠΎΠ½ ipv6 адрСсов

Настройка ΠΈ запуск ΠΏΠΎΠ΄ docker

git clone https://github.com/rekryt/iplist.git
cd iplist
cp .env.example .env

Если трСбуСтся ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ .env Ρ„Π°ΠΉΠ»

свойство Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ описаниС
COMPOSE_PROJECT_NAME iplist Имя compose ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
STORAGE_SAVE_INTERVAL 120 ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ сохранСния кСша whois (сСкунды)
SYS_DNS_RESOLVE_IP4 true ΠŸΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ipv4 адрСса
SYS_DNS_RESOLVE_IP6 true ΠŸΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ipv6 адрСса
SYS_DNS_RESOLVE_CHUNK_SIZE 10 Π Π°Π·ΠΌΠ΅Ρ€ Ρ‡Π°Π½ΠΊΠ° для получСния dns записСй
SYS_DNS_RESOLVE_DELAY 100 Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ΠΌ dns записСй (миллисСкунды)
SYS_IP6_SUBNET_PREFIX_CAP 64 Максимально допустимая Π΄Π»ΠΈΠ½Π° прСфикса IPv6-подсСти
SYS_MEMORY_LIMIT 1024M ΠŸΡ€Π΅Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΊΠΎΠ»-Π²ΠΎ памяти.
SYS_TIMEZONE Europe/Moscow Бписок URL для получСния Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Ρ… CIDRv4 Π·ΠΎΠ½ ipv4 адрСсов
HTTP_HOST 0.0.0.0 IP сСтСвого интСрфСйса (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ всС интСрфСйсы)
HTTP_PORT 8080 Π‘Π΅Ρ‚Π΅Π²ΠΎΠΉ ΠΏΠΎΡ€Ρ‚ сСрвСра (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 8080)
DEBUG true ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ логирования
docker compose up -d

ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ сСрвис ΠΌΠΎΠΆΠ½ΠΎ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ http, ΠΏΠΎΡ€Ρ‚ 8080

http://0.0.0.0:8080/
http://0.0.0.0:8080/?format=json
http://0.0.0.0:8080/?format=json&site=youtube.com&data=domains
http://0.0.0.0:8080/?format=text&site=youtube.com&data=ip4
http://0.0.0.0:8080/?format=mikrotik&data=cidr4
http://0.0.0.0:8080/?format=mikrotik&site=youtube.com&data=cidr4
http://0.0.0.0:8080/?format=comma&data=cidr4
get ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ описаниС ΠΏΡ€ΠΈΠΌΠ΅Ρ€
format Π€ΠΎΡ€ΠΌΠ°Ρ‚ Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ?format=text
data Π”Π°Π½Π½Ρ‹Π΅ для Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ ?data=cidr4
site ΠŸΠΎΡ€Ρ‚Π°Π» для Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ?site=youtube.com
group Π“Ρ€ΡƒΠΏΠΏΠ° для Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ?group=youtube
exclude[ip4] Π˜ΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ipv4 адрСса ?exclude[ip4]=1.1.1.1&exclude[ip4]=2.2.2.2
exclude[ip6] Π˜ΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ipv6 адрСса ?exclude[ip6]=2a06:98c1:3121::a
exclude[cidr4] Π˜ΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ CIDRv4 Π·ΠΎΠ½Ρ‹ ?exclude[cidr4]=1.1.1.0/24
exclude[cidr6] Π˜ΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ CIDRv6 Π·ΠΎΠ½Ρ‹ ?exclude[cidr6]=2a06:98c1::/32
exclude[group] Π˜ΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π³Ρ€ΡƒΠΏΠΏΡ‹ ?exclude[group]=youtube&exclude[group]=casino
exclude[site] Π˜ΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΏΠΎΡ€Ρ‚Π°Π»Ρ‹ ?exclude[site]=youtube.com
exclude[domain] Π˜ΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΄ΠΎΠΌΠ΅Π½Ρ‹ ?exclude[domain]=youtube.com
wildcard ΠžΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ wildcard Π΄ΠΎΠΌΠ΅Π½Ρ‹ ?wildcard=1
filesave Π‘ΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ ΠΊΠ°ΠΊ Ρ„Π°ΠΉΠ» ?filesave=1
template Π¨Π°Π±Π»ΠΎΠ½ Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ ?format=custom&template=ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅

Настройка SSL

Для настройки SSL сСртификата Π²Π°ΠΌ понадобится Π΄ΠΎΠΌΠ΅Π½ настроСнный Π½Π° ваш сСрвСр. Если Ρƒ вас Π½Π΅Ρ‚ собствСнного Π΄ΠΎΠΌΠ΅Π½Π° - ΠΊΠ°ΠΊ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ бСсплатный Π΄ΠΎΠΌΠ΅Π½ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π½Π° https://noip.com. ΠΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ΅Π½Π° придётся ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°Ρ‚ΡŒ Ρ€Π°Π· Π² мСсяц.

  • УстановитС ΠΈ настройтС рСвСрс-прокси, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ NginxProxyManager
  • Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΡΠ΅Ρ‚ΡŒ docker
docker network create web
  • НастройтС Π΅Ρ‘ Π² docker-compose.yml Ρ„Π°ΠΉΠ»Π°Ρ… рСвСрс-прокси ΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
services:
    ...
    app:
        networks:
            - web
networks:
    web:
        external: true
        name: web
  • Π£Π΄Π°Π»ΠΈΡ‚Π΅ свойство ports ΠΈΠ· docker-compose.yml (этого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°)
  • ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅ измСнСния:
docker compose up -d
  • Имя ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ docker compose ps
  • Π’ ΠΏΠ°Π½Π΅Π»ΠΈ администрирования рСвСрс-прокси настройтС Π΄ΠΎΠΌΠ΅Π½ Π½Π° Π½Π΅Π³ΠΎ iplist-app-1 ΠΏΠΎΡ€Ρ‚ 8080 ΠΈ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ SSL
  • NginxProxyManager Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠ΄Π»Π΅Π²Π°Ρ‚ΡŒ ssl сСртификат автоматичСски

Π ΡƒΡ‡Π½ΠΎΠΉ запуск (PHP 8.1+)

apt-get install -y git golang
git clone https://github.com/v2fly/geoip.git
cd geoip
go build .
cd ../
apt-get install -y ntpsec whois dnsutils ipcalc
cp .env.example .env
composer install
php index.php

ΠšΠ°ΡΡ‚ΠΎΠΌΠ½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π²Ρ‹Π²ΠΎΠ΄Π°

Для получСния Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡƒ ΡˆΠ°Π±Π»ΠΎΠ½Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ get ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹: format=custom ΠΈ template=шаблон, Π³Π΄Π΅ шаблон ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Ρ‹ ΠΊΠ°ΠΊ:

свойство описаниС
{group} Имя Π³Ρ€ΡƒΠΏΠΏΡ‹
{site} Имя сайта
{data} Π’Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅
{shortmask} Маска подсСти (короткая) (для ip ΠΈ cidr)
{mask} Маска подсСти (полная) (для ip ΠΈ cidr)

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

Wildcard Π΄ΠΎΠΌΠ΅Π½Ρ‹ twitter для dns static add ΠΏΠΎΠ΄ mikrotik для forward-to=localhost:
https://iplist.opencck.org/?format=custom&data=domains&site=x.com&wildcard=1&template=%2Fip%20dns%20static%20add%20name%3D%7Bdata%7D%20type%3DFWD%20address-list%3D%7Bgroup%7D_%7Bsite%7D%20match-subdomain%3Dyes%20forward-to%3Dlocalhost

Wildcard Π΄ΠΎΠΌΠ΅Π½Ρ‹ Π² кастомном Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅:
https://iplist.opencck.org/?format=custom&data=domains&wildcard=1&template=data%3A%20%7Bdata%7D%20group%3A%20%7Bgroup%7D%20site%3A%20%7Bsite%7D

Маска подсСти Π² кастомном Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅:
https://iplist.opencck.org/?format=custom&data=cidr4&template=data%3A%20%7Bdata%7D%20group%3A%20%7Bgroup%7D%20site%3A%20%7Bsite%7D%20shortmask%3A%20%7Bshortmask%7D%20mask%3A%20%7Bmask%7D

Настройка ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Xray/V2Ray

Π‘ΠΊΠ°Ρ‡Π°ΠΉΡ‚Π΅ iplist.dat Ρ„Π°ΠΉΠ» Π² Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³:

https://iplist.opencck.org/?format=geoip&data=cidr4

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ routing ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ:

{
  "routing": {
    "rules": [
      {
        "type": "field",
        "outboundTag": "vpn",
        "ip": ["ext:iplist.dat"]
      },
      ...
    ]
  },
  ...
}

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования Ρ‚Π΅Π³ΠΎΠ² (ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΡ€Ρ‚Π°Π»Π° ΠΈΠ»ΠΈ Π³Ρ€ΡƒΠΏΠΏΡ‹) Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ:

{
  "routing": {
    "rules": [
      {
        "type": "field",
        "outboundTag": "vpn",
        "ip": ["ext:iplist.dat:youtube.com"]
      },
      {
        "type": "field",
        "outboundTag": "vpn",
        "ip": ["ext:iplist.dat:anime"]
      },
      ...
    ]
  },
  ...
}

Настройка Mikrotik

  • Π’ администраторской ΠΏΠ°Π½Π΅Π»ΠΈ Ρ€ΠΎΡƒΡ‚Π΅Ρ€Π° (ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π΅Π· winbox) ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ€Π°Π·Π΄Π΅Π» System -> Scripts
  • Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π½ΠΎΠ²Ρ‹ΠΉ скрипт "Add new" с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ iplist_v4_cidr
  • Π’ ΠΏΠΎΠ»Π΅ Source Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ url адрСс вашСго сСрвСра, ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π² mode Ρ‚ΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ):
/tool fetch url="https://iplist.opencck.org/?format=mikrotik&data=cidr4&append=timeout%3D1d" mode=https dst-path=iplist_v4_cidr.rsc
:delay 5s
:log info "Downloaded iplist_v4_cidr.rsc succesfully";

/import file-name=iplist_v4_cidr.rsc
:delay 10s
:log info "New iplist_v4_cidr added successfully";
  • 1
  • Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ скрипт
  • ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ€Π°Π·Π΄Π΅Π» ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠ° System -> Scheduler
  • Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π½ΠΎΠ²ΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅ с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ iplist_v4_cidr
  • Π’ качСствС Start time ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ врСмя для старта задания (ΠΏΡ€ΠΈΠΌΠ΅Ρ€: 00:05:00). Для Interval Π²Π²Π΅Π΄ΠΈΡ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 1d 00:00:00.
  • Π’ ΠΏΠΎΠ»Π΅ On event Π²Π²Π΅Π΄ΠΈΡ‚Π΅ имя скрипта
iplist_v4_cidr
  • 2
  • ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ скрипт Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ System -> Scripts ΠΈ запуститС Π΅Π³ΠΎ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Run Script
  • Π’ Ρ€Π°Π·Π΄Π΅Π»Π΅ Logs Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ сообщСниС New iplist_v4_cidr added successfully
  • 3
  • А Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ IP -> Firewall -> Address Lists Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ Π½ΠΎΠ²Ρ‹Π΅ списоки (Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ с ΠΈΠΌΠ΅Π½Π΅ΠΌ youtube)
  • 4

Π§Π΅Ρ€Π΅Π· GET-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ template для Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° mikrotik ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ шаблон для ΠΈΠΌΠ΅Π½ΠΈ списка:

https://iplist.opencck.org/?format=mikrotik&data=cidr4&append=timeout%3D1d&template={group}_{data}

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ шаблон ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅: {group}_{data}

Настройка HomeProxy (sing-box)

Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ "Routing mode" Π² "Only proxy mainland China": 1 ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ΡΡŒ ΠΊ Ρ€ΠΎΡƒΡ‚Π΅Ρ€Ρƒ ΠΏΠΎ ssh ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

# ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Ρ‹Π²Π°Π΅ΠΌ старый скрипт обновлСния
mv /etc/homeproxy/scripts/update_resources.sh /etc/homeproxy/scripts/update_resources.sh.origin

# Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ Π½ΠΎΠ²Ρ‹ΠΉ скрипт
wget https://iplist.opencck.org/scripts/homeproxy/update_resources.sh -O /etc/homeproxy/scripts/update_resources.sh

# добавляСм ΠΏΡ€Π°Π²Π° Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅
chmod +x /etc/homeproxy/scripts/update_resources.sh

# отмСняСм стираниС cron послС пСрСзапуска homeproxy
sed -i '/sed -i/s/^/\t#/; /\/etc\/init.d\/cron restart >/s/^/\t#/' /etc/init.d/homeproxy

# Π²Ρ‹ захостили это Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅? - Ρ‚ΠΎΠ³Π΄Π° раскоммСнтируйтС ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ строку ΠΈ помСняйтС "example.com" Π½Π° ваш Π΄ΠΎΠΌΠ΅Π½
# sed -i 's/iplist.opencck.org/example.com/g' /etc/homeproxy/scripts/update_resources.sh

ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡ‚Ρ€Π°Ρ‚ΠΈΠ²Π½ΡƒΡŽ панСль OpenWRT Ρ€Π°Π·Π΄Π΅Π» "System" - "Sсheduled Tasks". Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ строку, Ρ‡Ρ‚ΠΎΠ±Ρ‹ автоматичСски Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ скрипт обновлСния ΠΏΡ€ΠΈ стартС, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π² 00:05:00 ΠΈ 12:05:00

5 0,12 * * * /etc/homeproxy/scripts/update_crond.sh

2

Настройка дополнСния для Chrome - Proxy SwitchySharp

Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ ссылкС 1

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Switchy RuleList

License

The MIT License (MIT). Please see LICENSE for more information.

About

IP Address Collection and Management Service with multiple output formats: mikrotik, json, text, ipset, nfset, clashx, keenetic, switchy, amnezia

Topics

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •