1

Я не загружаю ничего противозаконного с Vuze (клиент bittorrent) и не нуждаюсь в том, чтобы использовать мой VPN (который настроен на моем частном VPS, используя OpenVPN на сервере и клиенте). Как заставить vuze не использовать мой VPN? У меня только 500 ГБ пропускной способности от моего хоста в месяц.

2 ответа2

1

Я предполагаю, что вы используете Linux, где это можно сделать. Вам нужно будет:

  1. Создайте новый виртуальный интерфейс Ethernet (VIF);
  2. настройка маршрутизации на основе политик;
  3. Загрузите небольшое приложение, которое заставляет vuze привязываться к определенному IP-адресу.

Для простоты предположим, что вы находитесь в локальной сети 192.168.1.0/24, ваш маршрутизатор - 192.168.1.1, и вам нужен новый адрес 192.168.1.247.

Вы можете продолжить так:

  # ip link add link eth0 name eth0.1 type vlan id 1
  # ip addr add 192.168.1.247/24 dev eth0.1
  # ip link set dev eth0.1 up

Это создает виртуальный интерфейс с именем eth0.1 с IP-адресом (192.168.1.247), который вы должны выбрать среди тех, которые разрешены вашей локальной сетью, и подходящую маску.

Теперь мы настроили политику маршрутизации: давайте создадим еще одну таблицу маршрутизации,

  # echo 200 NAME >> /etc/iproute2/rt_tables

где вы захотите выбрать имя, значимое для вас, а не NAME. Затем мы настраиваем его маршрутизацию,

  # ip route add 192.168.1.0/24 dev eth0.1 src 192.168.1.247 table NAME

Затем мы добавляем шлюз по умолчанию,

  # ip route add default via 192.168.1.1 table <NAME>

Осторожно, здесь 192.168.1.1 - это адрес вашего роутера, когда вы не подключены к VPN. Наконец, мы вводим правило:

 # ip rule add from 192.168.1.247 table NAME

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

Теперь вы скачиваете программу bind.c с этого сайта, компилируете и устанавливаете ее следующим образом:

 # gcc -nostartfiles -fpic -shared bind.c -o bind.so -ldl -D_GNU_SOURCE
 # strip bind.so
 # cp -i bind.so /usr/lib/

и теперь мы готовы: эта команда

 # BIND_ADDR="192.168.1.247" LD_PRELOAD=/usr/lib/bind.so vuze

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

0

Есть старый инструмент ForceBindIP для Windows, который, вероятно, может делать то, что вам нужно.

По этому адресу он еще жив: http://old.r1ch.net/stuff/forcebindip/

Это оболочка консольного приложения, которая выполняет некоторые хитрости в сети, чтобы гарантировать, что процесс может использовать только трафик от одного интерфейса.

Обычно вы хотите использовать это, чтобы заставить ваш торрент-клиент (или что-то еще) строго использовать вашу VPN и останавливать весь трафик, если VPN не работает. Я не понимаю, почему вы не можете сделать обратное - привязать ваше приложение к основному сетевому адаптеру (вместо адаптера VPN). Тогда весь трафик должен проходить через ваше не-VPN-соединение.

Запустите команду примерно так:

forcebindip.exe 1.2.3.4 "C:\Program Files\Vuze\Azureus.exe"

Где 1.2.3.4 - ваш IPv4-адрес в вашей сети. Вы можете найти это, набрав ipconfig /all из командной строки. Или, если вы ненадолго отключите свой VPN, просто введите "my ip" в Google, и он сообщит вам вверху.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .