x2ray + tun2socks. Сделал памятку чтоб не забыть

Started by males, July 14, 2025, 08:20:52 AM

Previous topic - Next topic
Quote from: Erhesar on December 23, 2025, 02:07:39 PMА есть какая-то инфа почему там исользуется Unbound? У меня, например, doh через dnscrypt, и как его туда завести не понятно, документации толком никакой нет...
Есть сайт с описанием параметров файла конфигурации

Quote from: Serg on December 10, 2025, 07:16:01 AMсразу создавать интерфейс на который можно настроить переадресацию.
точно умеет? интересно, почему тогда на сайте синг-бокс написано, что не умеет создавать  tun на freebsd или уже научилось?
Кстати, самое фиговое в том скрипте,  что оно напрямую в конфиг опнсенс гвоздями вкорячивает интерфейс новый, что может аукнуться при всяких обновах.
Вот оно:
log "$YELLOW" "添加 tun_3000 接口..."
if grep -q "<if>tun_3000</if>" "$CONFIG_FILE"; then
  log "$CYAN" "存在同名接口,忽略"
else
  awk '
  BEGIN { inserted = 0 }
  {
    print
    if ($0 ~ /<\/lo0>/ && inserted == 0) {
      print "    <opt10>"
      print "      <if>tun_3000</if>"
      print "      <descr>TUN</descr>"
      print "      <enable>1</enable>"
      print "    </opt10>"
      inserted = 1
    }
  }
  ' "$CONFIG_FILE" > "$TMP_FILE" && mv "$TMP_FILE" "$CONFIG_FILE"
  echo "接口添加完成"
fi
echo ""

тупо вписывается интерфейс в обход стандартных механизмов opnsense.

Quote from: _tribal_ on December 24, 2025, 10:57:59 PMточно умеет? интересно, почему тогда на сайте синг-бокс написано, что не умеет создавать  tun на freebsd или уже научилось?
Кстати, самое фиговое в том скрипте,  что оно напрямую в конфиг опнсенс гвоздями вкорячивает интерфейс новый, что может аукнуться при всяких обновах.
Умеет уже давно
Я использую sing-box в pfSense. Интерфейс появляется только когда служба/сервис sing-box запущен. В opnSense тоже такое поведение должно быть



Нашёл офлайн генератор конфигов для sing-box и xray

Более-менее разобрался в этом чуде китайской инженерной мысли, в целом понял логику работы sing-box.
Форвардинг в unbound нужен только для того чтоб перехватывать dns запросы внутри sing-box. То есть по сути unbound остается только в роли рабочего кэша и разных блокировок-перезаписей. DoH я настроил внутри конфига sing-box. "auto_route": true и "strict_route": true в конфиге позволяют перехватывать весь трафик системы и заворачивать его в тун, то есть правила фаервола на каждый конкретный интерфейс не нужны. Это удобно, но не без минусов. Например если sing-box упадет, трафик пойдет напрямую как раньше уже через не зашифрованный днс, который указан как заглушка для форвардинга. Из личных наблюдейний - MTU 9000 это прям дохрена, выше 1400 я бы не ставил, чтоб пакеты по wifi не фрагментировались, иначе будут большие потери скорости. Ну и стак с system на gvisor я у себя поменял - он работает быстрее как по мне, но местами не очень стабильно, вероятно вернусь к system

UPD: После доп тестов пришел к выводу, что MTU вообще никак не влияет на фрагментацию в этом конфиге. что 1400, что 9000 работают одинаково, пока оставил тестироваться с 9000. А вот stack влияет очень сильно. У меня внешняя ап точка, через system я не закачку по wifi не получаю больше 150 мегабит (по проводу получаю свои 500 по тарифу), однако стоит только сменить stack на gvisor - сразу 500 в обе стороны и по wifi. Не понятно с чем связано.

Quote from: Serg on December 25, 2025, 07:08:25 AMУмеет уже давно
Я использую sing-box в pfSense. Интерфейс появляется только когда служба/сервис sing-box запущен. В opnSense тоже такое поведение должно быть
1. Я так то не про просто наличие tun он там оочень давно, а умение САМОСТОЯТЕЛЬНО создавать его использую СТАНДАРТНЫЕ механизмы ОС freebsd.
2. Если вы его добавляли использую указанный вами скрипт, то интерфейс там вкорячивается тупо в конфиг системы в обход механизмов ОС, это все же слегка другое. И если вы просто установите пакет sing-box без "предварительных ласк" конфига ОС, оно не стартанет, ругаясь на ошибки.

Quote from: Erhesar on December 25, 2025, 10:44:15 AMИз личных наблюдейний - MTU 9000 это прям дохрена, выше 1400 я бы не ставил, чтоб пакеты по wifi не фрагментировались, иначе будут большие потери скорости.
данное число используется на внутреннем интерфейсе программы и не влияет на фрагментацию внешних пакетов за ее пределами.

Quote from: _tribal_ on Today at 09:32:10 AM1. Я так то не про просто наличие tun он там оочень давно, а умение САМОСТОЯТЕЛЬНО создавать его использую СТАНДАРТНЫЕ механизмы ОС freebsd.
2. Если вы его добавляли использую указанный вами скрипт, то интерфейс там вкорячивается тупо в конфиг системы в обход механизмов ОС, это все же слегка другое. И если вы просто установите пакет sing-box без "предварительных ласк" конфига ОС, оно не стартанет, ругаясь на ошибки.
Вот бы разработчики opnSense и pfSense создали пакет. Тогда бы интеграция была полная.
Такой вид софта без конфигов и не должен запускаться без предварительной настройки, т.к. часто его ставят в уже настроенную систему. И если б он запускался без предварительной настройки, то мог поломать работу системы.

Еще заметил, что sing-box в режиме auto_route при падении линка на шлюзе и последующем восстановлении не апдейтит состояния, то есть его нужно перезагружать, иначе он будет долбиться в пустоту. Наверное можно придумать какой-то скрипт и механизм отслеживания состояния шлюза чтоб оно запускало перезапуск, но я пока не настолько шарю в этом. Но как по мне в этом решении все же слишком много НО что бы использовать его стабильно. Может у кого-то есть опыт настройки и запуска голого sing-box?
я так понимаю эта солянка собрана вокруг этого пакета Vincent-Loeng

Quote from: Serg on Today at 10:50:20 AMВот бы разработчики opnSense и pfSense создали пакет. Тогда бы интеграция была полная.
не в разработчиках opnsense дело это особенности работы именно freebsd и нежелание разработчиков sing-box это править, а так в портах sing-box есть и доступен для установки, правда в UI его не будет.

Quote from: Erhesar on Today at 02:55:42 PMМожет у кого-то есть опыт настройки и запуска голого sing-box?
голый вы не запустите без доп прослойки для создания tun.. как создавать его здесь же и описано в первом сообщении, только вместо xray берете коробку. У меня именно так и работает.  Но я auto_rote не использую.

Апд. Хотя я неуверен, что именно вот тот модифицированный используется из вашей ссылки, подозреваю, что китайцы нашли способ обойти создание tun пакетом, и пихают его непосредственно в систему в ручную, я смотрю что на гите везде убрали использование дополнительного софта для работы с tun.