Я предполагаю, что вы используете Linux, где это можно сделать. Вам нужно будет:
- Создайте новый виртуальный интерфейс Ethernet (VIF);
- настройка маршрутизации на основе политик;
- скачать небольшое приложение, которое сил 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
где вы хотите выбрать имя, значимое для вы вместо имени. Затем мы настраиваем его маршрутизацию,
# 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.