Jump to content

Выход руководств зависит от свободного времени автора и востребованности со стороны сообщества  

127 members have voted

  1. 1. Какого руководства для Xray не хватает?

    • Как выбрать VPS-сервер
      22
    • Настройки DNS
      12
    • Настройки Reverse Proxy
      6
    • Настройки FakeDNS (Только часть Xray)
      5
    • Настройки транспортных протоколов
      1
    • Настройки входящего соединения
      7
    • Настройки исходящего соединения
      4
    • Настройки политик доступа
      5
    • Настройки маршрутизации
      43
    • Настройки Fallback
      2
    • Конфигурация для максимальной анонимности
      11
    • Конфигурация для максимальной защищенности
      9


Recommended Posts

31 минуту назад, Skrill0 сказал:

Да, в начале подумала, что у Вас могла быть первая версия конфигурации.

Доброго утра вам! У меня первая версия конфига routing.json :

Скрытый текст
"routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
        {
            "inboundTag": ["socks-in"],
            "domain": ["domain:google-analytics.com"],
            "outboundTag": "block",
            "type": "field"
        },
        {
            "inboundTag": ["socks-in"],
            "domain": [".ru", "whoer.net"],
            "outboundTag": "direct",
            "type": "field"
        },
        {
            "inboundTag": ["socks-in"],
            "outboundTag": "proxy",
            "type": "field"
        }
    ]
}

И проблема с выше отписавшимся @Dr.ZuLuS та же: "...на тестовой машине не работают пинги на выход, например ping ya.ru, трейсерт отваливается на шлюзе (кинетик) "

Более того, у меня наблюдается еще одна проблема: если добавить тот же домен speedtest.net в режим "direct", я не вижу тарифной скорости провайдера 300Mbit, а наблюдаю меньшую скорость 50Mbit. То же самое с загрузкой видео на youtube, в режиме "direct". Разве в режиме "direct" трафик тоже идет через VPS?

Edited by bigpu
Link to comment
Share on other sites

В 19.09.2023 в 12:11, bigpu сказал:

Доброго утра вам! У меня первая версия конфига routing.json :

  Показать содержимое
"routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
        {
            "inboundTag": ["socks-in"],
            "domain": ["domain:google-analytics.com"],
            "outboundTag": "block",
            "type": "field"
        },
        {
            "inboundTag": ["socks-in"],
            "domain": [".ru", "whoer.net"],
            "outboundTag": "direct",
            "type": "field"
        },
        {
            "inboundTag": ["socks-in"],
            "outboundTag": "proxy",
            "type": "field"
        }
    ]
}

И проблема с выше отписавшимся @Dr.ZuLuS та же: "...на тестовой машине не работают пинги на выход, например ping ya.ru, трейсерт отваливается на шлюзе (кинетик) "

Более того, у меня наблюдается еще одна проблема: если добавить тот же домен speedtest.net в режим "direct", я не вижу тарифной скорости провайдера 300Mbit, а наблюдаю меньшую скорость 50Mbit. То же самое с загрузкой видео на youtube, в режиме "direct". Разве в режиме "direct" трафик тоже идет через VPS?

Здравствуйте!

Проблема со скоростью может наблюдаться из-за отсутствия поддержки UDP соединения у встроенного прокси-клиента Keenetic (не точно, нужны тесты). Уже работаю над альтернативным и более незаметным решением в Xkeen.

Попробуйте обновленную версию конфигурации по рекомендации @jameszero!
У нескольких пользователей она работает правильно, в моих тестах в том числе.
Разделите IP и domain на 2 подключения.

Вот свежая версия routing | Отдельное спасибо @jameszero
В этой конфигурации у Вас yandex.ru/internet должен открываться напрямую (speedtest от яндекса), а speedtest.net  — через VPS.

Скрытый текст
// Настройка маршрутизации

{
  "routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
      // Настройка черного списка
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "ext:geosite_v2fly.dat:category-ads-all",
          "google-analytics",  // Могут быть проблемы с сервисами Google. Нужны тесты
          "analytics.yandex"  // Могут быть проблемы с сервисами Yandex. Нужны тесты
        ],
        "outboundTag": "block",
        "type": "field"
      },
      
      // Блокируем соединение по уязвимым UDP портам
      {
        "inboundTag": ["socks-in"],
        "network": "udp",
        "port": "135, 137, 138, 139",
        "outboundTag": "block",
        "type": "field"
      },
            
      // Настройка прямых подключений с помощью доменных имен
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "regexp:\\.ru$",
          "ext:geosite_v2fly.dat:category-gov-ru",
          "ext:geosite_v2fly.dat:yandex",
          "ext:geosite_v2fly.dat:xbox",
          "ext:geosite_v2fly.dat:playstation",
          "ext:geosite_v2fly.dat:steam",
          "ext:geosite_v2fly.dat:rockstar",
          "ext:geosite_v2fly.dat:epicgames",
          "ext:geosite_v2fly.dat:gog",
          "ext:geosite_v2fly.dat:vk"
        ],
        "outboundTag": "direct",
        "type": "field"
      },
	  
      // Настойка прямых подключений с помощью IP
      {
        "inboundTag": ["socks-in"],
        "ip": [
          "ext:geoip_v2fly.dat:ru",
          "ext:geoip_v2fly.dat:private"
        ],
        "outboundTag": "direct",
        "type": "field"
      },
	  
      // Настройка подключений через VPS с помощью доменных имен
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "speedtest.net",
          "ext:geosite_antifilter.dat:antifilter-community",
          "ext:geosite_v2fly.dat:openai",
          "ext:geosite_v2fly.dat:paypal",
          "ext:geosite_v2fly.dat:ebay",
          "ext:geosite_v2fly.dat:facebook",
          "ext:geosite_v2fly.dat:instagram"
        ],
        "outboundTag": "proxy",
        "type": "field"
      },
	  
      // Настройка подключений через VPS с помощью IP
      {
        "inboundTag": ["socks-in"],
        "ip": [
          "ext:geoip_antifilter.dat:antifilter-community",
          "ext:geoip_antifilter.dat:antifilter",
          "ext:geoip_v2fly.dat:facebook",
          "ext:geoip_v2fly.dat:twitter"
        ],
        "outboundTag": "proxy",
        "type": "field"
      }
    ]
  }
}


 

Edited by Skrill0
  • Thanks 2
Link to comment
Share on other sites

В копилку полезных знаний)
Регэкспы для российских доменов, включая кириллические .рф, .рус, .онлайн, .орг, .сайт, .москва, .дети

regexp:^([\\w\\-\\.]+\\.)ru$
regexp:^([\\w\\-\\.]+\\.)xn--p1ai$
regexp:^([\\w\\-\\.]+\\.)xn--p1acf$
regexp:^([\\w\\-\\.]+\\.)xn--80asehdb$
regexp:^([\\w\\-\\.]+\\.)xn--c1avg$
regexp:^([\\w\\-\\.]+\\.)xn--80aswg$
regexp:^([\\w\\-\\.]+\\.)xn--80adxhks$
regexp:^([\\w\\-\\.]+\\.)xn--d1acj3b$
 

Edited by jameszero
  • Thanks 6
Link to comment
Share on other sites

18 минут назад, Skrill0 сказал:

Уже работаю над альтернативным и более незаметным решением в Xkeen.

замечательно, с нетерпением жду)

18 минут назад, Skrill0 сказал:

Разделите IP и domain на 2 подключения.

спасибо, на самом деле, мне было бы удобно открывать через прокси только конкретные домены (их не так много у меня) , а весь остальной трафик пуская напрямую.  В принципе, раньше так и делал - VPN через статические маршруты до конкретных IP. С прокси, естественно, мой кейс был бы удобнее. Вот такой конфиг для этого кейса корректен?

Скрытый текст

// Настройка маршрутизации 

{
"routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
        {
            "inboundTag": ["socks-in"],
            "domain": ["domain:google-analytics.com"],
            "outboundTag": "block",
            "type": "field"
        },
        {
            "inboundTag": ["socks-in"],            
            "outboundTag": "direct",
            "type": "field"
        },
        {
            "inboundTag": ["socks-in"],
            "domain": ["fast-torrent.ru", "nnmclub.to"],
            "outboundTag": "proxy",
            "type": "field"
        }
    ]
}

где весь трафик идет напрямую, а домены "fast-torrent.ru" и "nnmclub.net" через прокси.

Edited by bigpu
Link to comment
Share on other sites

Подскажите пожалуйста, это точно что пинги на хосте который идёт профилем через прокси не будут работать в принципе во вне?

И второй вопрос, если настраивать таким образом выход для всех клиентов на роутере, надо поместить в основном профиле подключение socks первым?

Link to comment
Share on other sites

58 минут назад, Skrill0 сказал:

Проблема со скоростью может наблюдаться из-за отсутствия поддержки UDP соединения у встроенного прокси-клиента Keenetic.
 

Це не проблема, можно вполне себе сделать, чтобы socks UDP-GW поддерживался. Я его не добавлял только потому, что не было серверов в Интернете с его поддержкой, чтобы протестировать. Отпишите тогда если вас такой вариант устраивает.

  • Upvote 2
Link to comment
Share on other sites

8 минут назад, jameszero сказал:

 

Dr.ZuLuS, через прокси пинги не ходят. Прокси работают на верхнем Прикладном уровне модели OSI, а пинги на третьем Сетевом уровне.

 

Значит вариант с прокси не полностью подходит на роль обхода блокировок для устройств.

Таким образом не будут работать многие устройства и сервисы в сети, получается проще остаться на любом VPN сервисе по желанию + ipset в любом виде + встроенные политики соединений кинетик. Так будет маршрутизироваться всё.

Иначе в этом варианте получается половина сервисов и служб не работают на устройствах.

Ну и имелось в виду, пусть не через прокси, а напрямую, так ведь они совсем перестают ходить.

Edited by Dr.ZuLuS
Link to comment
Share on other sites

1 час назад, bigpu сказал:

где весь трафик идет напрямую, а домены "fast-torrent.ru" и "nnmclub.net" через прокси.

Для Вашей задачи исправно должна работать вот такая конфигурация routing

Скрытый текст
// Настройка маршрутизации

{
  "routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
      // Настройка черного списка
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "ext:geosite_v2fly.dat:category-ads-all",
          "google-analytics",  // Могут быть проблемы с сервисами Google. Нужны тесты
          "analytics.yandex"  // Могут быть проблемы с сервисами Yandex. Нужны тесты
        ],
        "outboundTag": "block",
        "type": "field"
      },
      
      // Блокируем соединение по уязвимым UDP портам
      {
        "inboundTag": ["socks-in"],
        "network": "udp",
		"port": "135, 137, 138, 139",
        "outboundTag": "block",
        "type": "field"
      },
	  
      // Настройка подключений через VPS с помощью доменных имен
      {
        "inboundTag": ["socks-in"],
        "domain": [
		  "fast-torrent.ru",
		  "nnmclub.to",
		  "whoer"
        ],
        "outboundTag": "proxy",
        "type": "field"
      },
  
      {
        "inboundTag": ["socks-in"],
        "outboundTag": "direct",
        "type": "field"
      }
    ]
  }
}

 

  • Thanks 1
Link to comment
Share on other sites

1 час назад, jameszero сказал:

В копилку полезных знаний)
Регэкспы для российских доменов, включая кириллические .рф, .рус, .онлайн, .орг, .сайт, .москва, .дети

regexp:^([\\w\\-\\.]+\\.)ru$
regexp:^([\\w\\-\\.]+\\.)xn--p1ai$
regexp:^([\\w\\-\\.]+\\.)xn--p1acf$
regexp:^([\\w\\-\\.]+\\.)xn--80asehdb$
regexp:^([\\w\\-\\.]+\\.)xn--c1avg$
regexp:^([\\w\\-\\.]+\\.)xn--80aswg$
regexp:^([\\w\\-\\.]+\\.)xn--80adxhks$
regexp:^([\\w\\-\\.]+\\.)xn--d1acj3b$
 

Благодарю Вас за помощь пользователям в теме и поиск полезных решений)
Добавила в «ленивую» конфигурацию)

Link to comment
Share on other sites

49 минут назад, Le ecureuil сказал:

Це не проблема, можно вполне себе сделать, чтобы socks UDP-GW поддерживался. Я его не добавлял только потому, что не было серверов в Интернете с его поддержкой, чтобы протестировать. Отпишите тогда если вас такой вариант устраивает.

Доброго Вам дня!

Было бы замечательно видеть подобное обновление во встроенном прокси-клиенте.
Полагаю, сильно бы упростило жизнь людям, которые не хотят ходить далеко от web роутера)

А если его обновлять, то можно посмотреть в сторону решений вида leaf, если оно покажется Вам интересным)

Link to comment
Share on other sites

15 минут назад, Skrill0 сказал:

Доброго Вам дня!

Было бы замечательно видеть подобное обновление во встроенном прокси-клиенте.
Полагаю, сильно бы упростило жизнь людям, которые не хотят ходить далеко от web роутера)

А если его обновлять, то можно посмотреть в сторону решений вида leaf, если оно покажется Вам интересным)

Rust - пока - катастрофический мусор, потому что

 - нет нормальной воспроизводимости сборки и уродская зависимость от cargo и желание выкачать полинтернета при сборке
 - нет официальной поддержки mips в тулчейнах

 - жирный

 

Потому нет, спасибо, пока останемся на том, что есть. Но вот UDP посмотрю.

 

  • Thanks 2
  • Upvote 1
Link to comment
Share on other sites

8 минут назад, Le ecureuil сказал:

Rust - пока - катастрофический мусор, потому что

 - нет нормальной воспроизводимости сборки и уродская зависимость от cargo и желание выкачать полинтернета при сборке
 - нет официальной поддержки mips в тулчейнах

 - жирный

 

Потому нет, спасибо, пока останемся на том, что есть. Но вот UDPGW посмотрю.

Благодарю за объяснения)
Будем рады увидеть UDPGW!)

Link to comment
Share on other sites

1 час назад, Dr.ZuLuS сказал:

Таким образом не будут работать многие устройства и сервисы в сети, получается проще остаться на любом VPN сервисе по желанию + ipset в любом виде + встроенные политики соединений кинетик. Так будет маршрутизироваться всё.

Иначе в этом варианте получается половина сервисов и служб не работают на устройствах.

Если Вы столкнулись с такими проблемами при использовании встроенного прокси-клиента, то может попробовать настроить соединение по tproxy. Это должно решить Вашу задачу)

  • Thanks 1
Link to comment
Share on other sites

2 минуты назад, Skrill0 сказал:

Если Вы столкнулись с такими проблемами при использовании встроенного прокси-клиента, то может попробовать настроить соединение по tproxy. Это должно решить Вашу задачу)

Cпасибо, сейчас буду курить в эту сторону.

Если есть примеры, буду благодарен!

Link to comment
Share on other sites

54 минуты назад, Skrill0 сказал:

Для Вашей задачи исправно должна работать вот такая конфигурация routing

 

с этим конфигом теперь все заработало, спасибо вам за помощь!

Link to comment
Share on other sites

33 минуты назад, Dr.ZuLuS сказал:

Cпасибо, сейчас буду курить в эту сторону.

Если есть примеры, буду благодарен!

Пока не тестировала, но гипотетически должно подняться по следующей схеме:

  1. Устанавливаем компонент Keenetic «Модули ядра подсистемы Netfilter»
  2. Поднимаем tproxy 
    insmod /lib/modules/$(uname -r)/xt_TPROXY.ko
  3. Проверяем, что Tproxy поднят
    lsmod | grep xt_
  4. Маркируем TCP
    iptables -t mangle -N MARK_TCP
    iptables -t mangle -A MARK_TCP -j MARK --set-mark xray_mark_tcp
    iptables -t mangle -A PREROUTING -p tcp -j MARK_TCP
  5. Маркируем UDP
    iptables -t mangle -N MARK_UDP
    iptables -t mangle -A MARK_UDP -j MARK --set-mark xray_mark_udp
    iptables -t mangle -A PREROUTING -p udp -j MARK_UDP
  6. Создаем правило для TCP
    ip rule add fwmark xray_mark_tcp table 100
  7. Создаем правило для UDP
    ip rule add fwmark xray_mark_udp table 101
  8. Создаем правило iptables для TCP
    iptables -t mangle -A PREROUTING -i br0 -p tcp -m mark --mark xray_mark_tcp -j TPROXY --tproxy-mark 0x1/0x1 --on-ip <IP Xray из inbounds> --on-port <IP Xray из inbounds>
  9. Создаем правило iptables для UDP
    iptables -t mangle -A PREROUTING -i br0 -p udp -m mark --mark xray_mark_udp -j TPROXY --tproxy-mark 0x2/0x2 --on-ip <IP Xray из inbounds> --on-port <порт Xray из inbounds>

     

«xray_mark_*» - это маркировка, которую Вы использовали для пакетов
«порт Xray из inbounds» — порт, на котором слушает Xray
«IP Xray из inbounds» – IP, на котором слушает Xray
«br0» — локальный шлюз

В Inbounds протокол Dokodemo-door

Материал для изучения
https://xtls.github.io/en/document/level-2/tproxy.html#开始之前
https://xtls.github.io/en/document/level-2/tproxy_ipv4_and_ipv6.html#xray-配置
https://xtls.github.io/en/document/level-2/iptables_gid.html

Дополнительно можно почитать
https://guide.v2fly.org/app/transparent_proxy.html#优点

Обращаю внимание, что это написано «по памяти» и без тестов, скорее, как отправной пункт. 
Пожалуйста, поделитесь результатами и конкретным методом, с которым у Вас получится поднять. Обязательно будет вынесено в шапку темы)

Edited by Skrill0
  • Thanks 1
  • Upvote 1
Link to comment
Share on other sites

Доброго Вам дня!
Извиняюсь за поздний ответ. Как-то проглядела. Не стесняйтесь писать и в личные сообщения тоже, если не получили ответа)

В 15.09.2023 в 04:35, Yoh сказал:

Да, именно так. Пробовал аналогичное провернуть на Ultra II, не хватает даже 256 мегабайт оперативной памяти. В итоге поднял xray с указанными списками на Debian в локальной сети, там использование памяти процессом около 350 мегабайт. В сети видел варианты оптимизации этих списков (например, объединение подсетей по маске), но не знаю, до каких значений сократится использование памяти.

Сейчас в шапке темы висит «ленивая» конфигурация, которая опирается на фильтры AntiFilter, полезные категории v2fly и регулярные выражения.
Это не должно так загружать устройство. Можно еще сильнее упростить, убрав основной фильтр AntiFilter, оставив только community.
На Viva отписывались о исправной работе)

В 15.09.2023 в 04:35, Yoh сказал:

Спасибо большое за утилиту. Могли бы подкинуть идеи, как сделать маршрутизацию на старых роутерах без встроенного прокси-клиента?

Да, конечно. Одним постом выше я бегло описала настройку варианта tproxy. Думаю, это хороший вариант в Вашем случае)

В 15.09.2023 в 04:35, Yoh сказал:

В xray записи вида

Возможно, у Вас есть проблема в конфигурации outbounds / inbounds.
Как у Вас настроено соединение direct?

Судя по журналу, Ваш socks направляет запросы правильно на Xray, а он в свою очередь захватывает запрос и направляет на direct.
Но, кажется, устройство не может получить ответ ответ, который получает Xray.
То есть мы имеем соединение Клиент>Xray>Сервер, а в обратной цепочке получается Сервер>Xray × Клиент. Копать нужно входящее соединение Xray > Клиент.

Если уверены, что проблем в конфигурации нет, то рекомендую все же попробовать настроить tproxy.

Edited by Skrill0
Link to comment
Share on other sites

5 часов назад, Skrill0 сказал:

leaf, если оно покажется Вам интересным)

Не интересно, но, Вы, можете его "пощупать" )))

Ставить по прямой ссылке или загрузить на устройство для aarch64, mips, mipsel (без конфига и стартового скрипта)

~ # leaf -V
0.10.1
~ # 
~ # leaf -c example.conf
[2023-09-19 15:25:20][DEBUG] default handler [Direct]
[2023-09-19 15:25:20][TRACE] add handler [Direct]
[2023-09-19 15:25:20][TRACE] add handler [Reject]
[2023-09-19 15:25:20][TRACE] added runtime 0
[2023-09-19 15:25:20][INFO] listening tcp 127.0.0.1:1087
[2023-09-19 15:25:20][INFO] listening tcp 127.0.0.1:1086
[2023-09-19 15:25:20][INFO] listening udp 127.0.0.1:1086
...

 

  • Thanks 1
Link to comment
Share on other sites

Всем добрый день 
Хочу отблагодарить @Skrill0 за проект и @jameszero за его конфиг роутинга, почему то Xray завелся только с ним. 

Теперь к проблеме которая у меня возникает, хочу strava.com отправлять в VPN туннель, делаю поправки в роутинге, но не открывается. При этом остальное всё работает. Где то читал, что strava размещается на CDN инфраструктуре AWS и трудно точечно обходить блокировку. Но возможно я не прав
Прикладываю мои конфиги роутинга

Скрытый текст
// Настройка маршрутизации

{
  "routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
      // Настройка черного списка
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "ext:geosite_v2fly.dat:category-ads-all",
          "keyword:google-analytics",  // Могут быть проблемы с сервисами Google. Нужны тесты
          "keyword:analytics.yandex"  // Могут быть проблемы с сервисами Yandex. Нужны тесты
        ],
        "outboundTag": "block",
        "type": "field"
      },
      
      // Блокируем соединение по уязвимым UDP портам
      {
        "inboundTag": ["socks-in"],
        "network": "udp",
        "port": "135, 137, 138, 139",
        "outboundTag": "block",
        "type": "field"
      },
      
      // Настройка прямых подключений
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "regexp:\\.ru$",
          "ext:geosite_v2fly.dat:category-gov-ru",
          "ext:geosite_v2fly.dat:yandex",
          "ext:geosite_v2fly.dat:xbox",
          "ext:geosite_v2fly.dat:playstation",
          "ext:geosite_v2fly.dat:steam",
          "ext:geosite_v2fly.dat:rockstar",
          "ext:geosite_v2fly.dat:epicgames",
          "ext:geosite_v2fly.dat:gog",
          "ext:geosite_v2fly.dat:vk",
          "ext:geosite_v2fly.dat:youtube",
          "ext:geosite_v2fly.dat:telegram",
          "ext:geosite_v2fly.dat:whatsapp"
        ],
        "outboundTag": "direct",
        "type": "field"
      },
      {
        "inboundTag": ["socks-in"],
        "ip": [
          "ext:geoip_v2fly.dat:ru",
          "ext:geoip_v2fly.dat:private"
        ],
        "outboundTag": "direct",
        "type": "field"
      },
      
      // Настройка подключений через VPS
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "app.strava.com", 
          "strava.com", 
          "ext:geosite_antifilter.dat:antifilter-community",
          "ext:geosite_v2fly.dat:openai",
          "ext:geosite_v2fly.dat:paypal",
          "ext:geosite_v2fly.dat:ebay",
          "ext:geosite_v2fly.dat:facebook",
          "ext:geosite_v2fly.dat:instagram"
        ],
        "outboundTag": "proxy",
        "type": "field"
      },
      {
        "inboundTag": ["socks-in"],
        "ip": [
          "ext:geoip_antifilter.dat:antifilter-community",
          "ext:geoip_antifilter.dat:antifilter",
          "ext:geoip_v2fly.dat:facebook",
          "ext:geoip_v2fly.dat:twitter"
        ],
        "outboundTag": "proxy",
        "type": "field"
      }
    ]
  }
}

 

 

10_routing.json

  • Upvote 1
Link to comment
Share on other sites

3 часа назад, Le ecureuil сказал:

В следующей версии draft появится

 

interface Proxy proxy udpgw-upstream <ip> <port>

 

В дополнение к просто upstream, который остается для TCP.

Добрый день.
Хотел прояснить один момент, изучая https://code.google.com/archive/p/badvpn/wikis/tun2socks.wiki
видим что параметр --udpgw-remote-server-addr <addr> задает адрес сервера, на котором запущен badvpn-udpgw
как я понял устаревший метод https://github.com/ambrop72/badvpn/issues/15
предполагающий запуск на удаленной стороне еще один демон.

и теперь появился параметр --socks5-udp (как я понимаю для 
direct UDP support ) https://github.com/ambrop72/badvpn/issues/15#issuecomment-691184141
то ли мы реализуем что надо?

  • Upvote 1
Link to comment
Share on other sites

На KN-1011 заработало, огромное спасибо автору. 

К сожалению скорость пока проседает, но кто хочет может попробовать tproxy или подождать пока занесут udp в компонент

  • Upvote 1
Link to comment
Share on other sites

7 часов назад, artem_annihilator сказал:

CDN инфраструктуре AWS

Доброго Вам времени суток!

Попробуйте обновленную конфигурацию routing. 
В ней все соединения, что не указаны в direct — будут открываться через VPS.

Скрытый текст
// Настройка маршрутизации

{
  "routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
      // Настройка черного списка
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "ext:geosite_v2fly.dat:category-ads-all",
          "google-analytics",  // Могут быть проблемы с сервисами Google. Нужны тесты
          "analytics.yandex"  // Могут быть проблемы с сервисами Yandex. Нужны тесты
        ],
        "outboundTag": "block",
        "type": "field"
      },
      
      // Блокируем соединение по уязвимым UDP портам
      {
        "inboundTag": ["socks-in"],
        "network": "udp",
        "port": "135, 137, 138, 139",
        "outboundTag": "block",
        "type": "field"
      },
            
      // Настройка прямых подключений с помощью доменных имен
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "regexp:^([\\w\\-\\.]+\\.)ru$",  // .ru
          "regexp:^([\\w\\-\\.]+\\.)su$",  // .su
          "regexp:^([\\w\\-\\.]+\\.)xn--p1ai$",  // .рф
          "regexp:^([\\w\\-\\.]+\\.)xn--p1acf$",  // .рус
          "regexp:^([\\w\\-\\.]+\\.)xn--80asehdb$",  // .онлайн
          "regexp:^([\\w\\-\\.]+\\.)xn--c1avg$", // .орг
          "regexp:^([\\w\\-\\.]+\\.)xn--80aswg$",  // .сайт
          "regexp:^([\\w\\-\\.]+\\.)xn--80adxhks$",  // .москва
          "regexp:^([\\w\\-\\.]+\\.)moscow$",  //  .moscow
          "regexp:^([\\w\\-\\.]+\\.)xn--d1acj3b$",  // .дети
          "ext:geosite_v2fly.dat:category-gov-ru",
          "ext:geosite_v2fly.dat:yandex",
          "ext:geosite_v2fly.dat:xbox",
          "ext:geosite_v2fly.dat:playstation",
          "ext:geosite_v2fly.dat:steam",
          "ext:geosite_v2fly.dat:rockstar",
          "ext:geosite_v2fly.dat:epicgames",
          "ext:geosite_v2fly.dat:gog",
          "ext:geosite_v2fly.dat:vk"
        ],
        "outboundTag": "direct",
        "type": "field"
      },
	  
      // Настойка прямых подключений с помощью IP
      {
        "inboundTag": ["socks-in"],
        "ip": [
          "ext:geoip_v2fly.dat:ru",
          "ext:geoip_v2fly.dat:private"
        ],
        "outboundTag": "direct",
        "type": "field"
      },
	  
      // Направление остальныех соединений на VPS
      {
        "inboundTag": ["socks-in"],
        "outboundTag": "proxy",
        "type": "field"
      }
    ]
  }
}


Если необходимо, чтобы через VPS открывались только некоторые сайты, а остальные через direct можно использовать альтернативную конфигурацию

Скрытый текст
// Настройка маршрутизации

{
  "routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
      // Настройка черного списка
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "ext:geosite_v2fly.dat:category-ads-all",
          "google-analytics",  // Могут быть проблемы с сервисами Google. Нужны тесты
          "analytics.yandex"  // Могут быть проблемы с сервисами Yandex. Нужны тесты
        ],
        "outboundTag": "block",
        "type": "field"
      },
      
      // Блокируем соединение по уязвимым UDP портам
      {
        "inboundTag": ["socks-in"],
        "network": "udp",
        "port": "135, 137, 138, 139",
        "outboundTag": "block",
        "type": "field"
      },
	  
      // Настройка подключений через VPS с помощью доменных имен
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "speedtest.net",
          "strava.com",
          "ext:geosite_antifilter.dat:antifilter-community",
          "ext:geosite_v2fly.dat:openai",
          "ext:geosite_v2fly.dat:paypal",
          "ext:geosite_v2fly.dat:ebay",
          "ext:geosite_v2fly.dat:facebook",
          "ext:geosite_v2fly.dat:instagram"
        ],
        "outboundTag": "proxy",
        "type": "field"
      },
	  
      // Настройка подключений через VPS с помощью IP
      {
        "inboundTag": ["socks-in"],
        "ip": [
          "ext:geoip_antifilter.dat:antifilter-community",
          "ext:geoip_antifilter.dat:antifilter",
          "ext:geoip_v2fly.dat:facebook",
          "ext:geoip_v2fly.dat:twitter"
        ],
        "outboundTag": "proxy",
        "type": "field"
      },
  
      {
        "inboundTag": ["socks-in"],
        "outboundTag": "direct",
        "type": "field"
      }
    ]
  }
}

 


Если Вы уверены, что дело в CloudFront, то попробуйте использовать в proxy подключении 

ext:geoip_v2fly.dat:cloudfront

При условии, что у Вас установлена GeoIP v2fly от Xkeen.
 

  • Thanks 1
Link to comment
Share on other sites

5 часов назад, Ризван Нухтаров сказал:

На KN-1011 заработало, огромное спасибо автору. 

К сожалению скорость пока проседает, но кто хочет может попробовать tproxy или подождать пока занесут udp в компонент

Доброго Вам утра!

Я рада, что у Вас все заработало)
Благодарю за отзыв)
Надеемся, решение со скоростью будет в ближайшее время)

Edited by Skrill0
  • Upvote 1
Link to comment
Share on other sites

13 часа назад, Leshiyart сказал:

Добрый день.
Хотел прояснить один момент, изучая https://code.google.com/archive/p/badvpn/wikis/tun2socks.wiki
видим что параметр --udpgw-remote-server-addr <addr> задает адрес сервера, на котором запущен badvpn-udpgw
как я понял устаревший метод https://github.com/ambrop72/badvpn/issues/15
предполагающий запуск на удаленной стороне еще один демон.

и теперь появился параметр --socks5-udp (как я понимаю для 
direct UDP support ) https://github.com/ambrop72/badvpn/issues/15#issuecomment-691184141
то ли мы реализуем что надо?

Пока я сделал UDPGW, но если хотите, могу и SOCKS5-UDP добавить.

Проблема в том, что у меня нет серверов, с которым можно проверить.

Потому пока проверьте с UDPGW, если будет работать это, то можно и SOCKS5-UDP сделать.

  • Upvote 1
Link to comment
Share on other sites

11 минуту назад, Le ecureuil сказал:

Пока я сделал UDPGW, но если хотите, могу и SOCKS5-UDP добавить.

Проблема в том, что у меня нет серверов, с которым можно проверить.

Потому пока проверьте с UDPGW, если будет работать это, то можно и SOCKS5-UDP сделать.

для UDPGW - надо отдельный демон ставить, в который tun2socks будет через tcp попадать, и уже на стороне сервера переадресовываться в udp-gw, который уже в свою очередь будет устанавливать соединение по udp. (это не будет работать так как хотят от него, в топике сам сервер находится внутри ентвар. локально)
лучше наоборот, начать с SOCKS5-UDP для direct UDP (задается без аргументов)

Link to comment
Share on other sites

Мне от вас нужен простой мануал как поднять socks5-udp proxy, чтобы я локально проверил что все ок. Если такой скинете, то есть вероятность что и это сделаю к пятнице.

  • Upvote 2
Link to comment
Share on other sites

36 минут назад, Le ecureuil сказал:

Мне от вас нужен простой мануал как поднять socks5-udp proxy, чтобы я локально проверил что все ок. Если такой скинете, то есть вероятность что и это сделаю к пятнице.

самый простой это shadowsocks-libev-ss-local

пример конфига (создает локально socks5 сервер на порту 1080, подключается к серверу ххх.xxx.xxx.xxx 443 по протоколу шадоусокс 
{
    "server":"xxx.xxx.xxx.xxx",
    "mode":"tcp_and_udp",
    "server_port":443,
    "local_port":1080,
    "local_address":"192.168.1.1",
    "password":"xxxxxxxxxx",
    "fast_open":true,
    "timeout":60,
    "method":"chacha20-ietf-poly1305",
   }
 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   1 member

×
×
  • Create New...