Вынудите приложение использовать определенный сетевой интерфейс

Я использую несколько сетевых интерфейсов (LAN и Беспроводная связь), и я заметил, что существует способ изменить порядок предпочтенных интерфейсов. Как я могу использовать проводную сеть, чтобы сделать работу, проверить электронную почту, и так далее (надежно), и использовать беспроводной VLAN для доступа к другому материалу (иначе заблокированный портами и иногда websense)?

48
задан 02.05.2009, 21:42

3 ответа

Прием корректирует таблицы маршрутизации (который не зависит от целевого порта или исходного приложения, но действительно зависит от узла назначения). Это предполагает, что Вы находитесь на Linux или OS X (поскольку теги показывают).

Скажите, что Ваш шлюз по умолчанию 1.2.3.4, и у Вас есть vpn, который может направить трафик в 6.7.8.9. Если Вы хотите, чтобы Ваш почтовый трафик направил более чем 6.7.8.9, просто сделайте

sudo route add mail.myserver.com 6.7.8.9

Некоторые версии маршрута могли бы потребовать "gw" ключевого слова между адресом и затем скачкообразно двинуться. Если Вы хотите сделать целый сетевой маршрут по тому следующему транзитному участку, просто добавьте сетевую маску в нотации CIDR для места назначения, как

sudo route add 192.168.0.0/24 6.7.8.9

Если Вы хотите просмотреть существующую таблицу маршрутизации, использовать

netstat -nrl
or
ip route list

Если Вы будете в Windows, то "сетевой маршрут" получит Вас большая часть пути там, но синтаксис полностью отличается.

22
ответ дан 07.12.2019, 08:32

Необходимо будет, вероятно, использовать функции управления IO низкого уровня (ioctl). В особенности:

ioctl( socket, SIOCGIFADDR, ... ); // Get network interface address

и

ioctl( socket, SIOCSIFADDR, ... ); // Set network interface address

Дополнительную информацию см. в этой странице справочника.

1
ответ дан 07.12.2019, 08:32

Проблема состоит в том, что Вы собираетесь иметь несколько шлюзов к своему сетевому соединению, и этим немного трудно управлять...

Некоторый сервер или связанный с сетью Unix и инструменты Linux обычно имеют флаг, названный "интерфейсом", где можно сказать, как какой интерфейс Вы хотите использовать, в tcpdump, например:

tcpdump -i eth0

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

Я могу сказать Вам прием для этого так или иначе... Моя обычная фиксация для контакта, с которым проблемы использует прокси и только имеет один шлюз. Почти любое программное обеспечение, которое использует Интернет это дни, имеет опции для конфигурирования прокси, таким образом, можно сделать это на любом из этого пути:

1. - Установка прокси на "незащищенном" (я означают, где политики не осуществляются), часть Вашей сети и указание на Ваше программное обеспечение к тому прокси.

2. - Установка сервера SSH на другом "незащищенном" месте, скажем, Ваш дом или выделенный сервер, который Вы имеете в Интернете и открытии соединения через специальную функцию, которую SSH имеет, который создает прокси-сервер носков:

ssh -D 1234 user@host

Это создало бы на Вашем компьютере прокси-сервер носков на порте "1234", который соединится с Вашим "хостом", с помощью "пользователя", и перейдет к Интернету посредством соединения, которое имеет "хост"... Затем на Вашем локальном программном обеспечении только необходимо открыть инструменты конфигурирования прокси и указать на localhost:1234.

Хорошие приемы для предотвращения корпоративных интернет-политик :P

:D

1
ответ дан 07.12.2019, 08:32

Теги

Похожие вопросы