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

У меня установлен VPN с USAIP (usaip.eu) для получения IP в США, хотя я физически подключен к Интернету в Европе.

Теперь я хочу направлять только конкретные запросы через этот VPN (вы уже догадались, Хулу). Поскольку IP-адреса Hulu меняются довольно часто, я хотел бы указать, что через VPN маршрутизируется только трафик, инициированный некоторыми приложениями (например, firefox.exe). Может ли программный брандмауэр сделать это (и если да, какой из них вы порекомендуете?) Или каков наилучший способ сделать это?

4 ответа

Решение

И вам действительно нужно было бы направлять DNS-запросы, так как это первый раунд маршрутизации Akamai.

Намного проще просто использовать SSH в качестве прокси-сервера socks:

ssh -D 1080 <host>

Затем скажите вашему браузеру, что на 127.0.0.1:1080 есть прокси SOCKS, и все работает.

Даже для приложений, которые напрямую не поддерживают SOCKS, существуют оболочки типа tsocks.

На самом деле, эта надстройка / инструкции с FoxyProxy, а также список прокси-серверов по всему миру, вероятно, является лучшим вариантом.

IP-адреса Hulu принадлежат Akamai, поэтому вам нужно будет проложить маршруты ко всем подсетям Akamai, чтобы пройти через этот VPN. Однако это заставило бы все, от Akamai, пройти через VPN. Если вы в порядке с этим, то пойти на это. Начните с 96.17.0.0, так как это подсеть, к которой подключена веб-ферма Hulu.

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

Да, вы можете маршрутизировать в зависимости от типа трафика (порт, IP, протокол). Это очень легко, если вы знакомы с Linux и политикой маршрутизации в Linux. Вы должны в основном сделать две вещи. (1) Пометить или пометить свой трафик, используя IPTABLES, и (2) маршрут политики на основе этого флажка или пометить, используя набор инструментов Linux IPROUTE2, в большинстве дистрибутивов Linux.

Вы можете пометить трафик на основе ряда подсетей, таких как IP-адреса HULU, или пометить на основе порта или диапазона портов. Я не знаю много о HULU, кроме того, что он в принципе. Если вы можете пометить трафик в зависимости от порта (портов) или IP-подсети, то вы можете легко настроить его, используя Linux в качестве маршрутизатора.

Теперь может быть проще маркировать трафик на основе порта источника, а не порта назначения, если порты назначения слишком сильно различаются. Я считаю, что HULU - это клиент, который можно установить (последний раз, когда я играл с HULU, это было 1-2 года назад). Если в клиенте HULU вы можете указать исходный порт, предположительно, чтобы настроить брандмауэр NAT или HTTP PROXY для пропуска этого трафика, то вы в деле!

http://www.policyrouting.org/PolicyRoutingBook/ONLINE/CH08.web.html

Другие вопросы по тегам