TUN
Создает интерфейс TUN. Трафик, направленный на этот интерфейс, будет обрабатываться Xray. В настоящее время поддерживаются только Windows, Linux, Android.
InboundConfigurationObject
{
"name": "xray0",
"MTU": 1500,
"UserLevel": 0
}2
3
4
5
name: string Имя создаваемого TUN интерфейса. По умолчанию"xray0".
MTU: number Значение MTU интерфейса. По умолчанию1500.
userLevel: number Уровень пользователя. Соединения будут использовать локальные политики, соответствующую этому уровню пользователя.
Значение userLevel соответствует значению level в policy. Если не указано, по умолчанию равно 0.
Советы по использованию
В настоящее время Xray не изменяет системную таблицу маршрутизации автоматически. Необходимо вручную настроить маршрутизацию для направления трафика на созданный интерфейс TUN, иначе он останется просто интерфейсом.
Если вы хотите проксировать только один или несколько процессов, будет очень полезна маршрутизация по имени процесса в системе маршрутизации Xray.
WARNING
Остерегайтесь возможных проблем с петлями трафика (traffic loops). После настройки маршрутизации запросы, отправляемые Xray, могут быть направлены обратно в Xray, создавая петлю! Используйте interface в sockopt для привязки к реальному физическому сетевому интерфейсу, чтобы избежать этой проблемы. Команды ipconfig (Windows) и ip a (Linux) помогут найти имя нужного вам интерфейса. Или используйте sendThrough для исходящих соединений. Он доступен непосредственно в OutboundObject и не имеет такой глубокой вложенности, как sockOpt.interface. Здесь необходимо использовать IP-адрес сетевой карты, например 192.168.1.2 (как видите, его недостатком является отсутствие автоматической поддержки dual-stack, пожалуйста, выбирайте в соответствии с фактически используемым IP для исходящего трафика).