URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 84931
[ Назад ]

Исходное сообщение
"Настройка маршрутизации Windows XP"

Отправлено Gudik , 16-Апр-09 13:43 
Доброго времени суток.
Ситуация такая.
Имеется два подключения к интернету: 1-локальная сеть, 2-Модемная связь(3G).
На машине установлена програмка Scype.
Необходимо сделать так, что бы Scype подключался только через Модемное подключение, а через сетевое подключение работало все остальное.
Подскажите пожалуйста, какими средствами это реализовать?
IP адресс, который выделяется Модемному подключению динамический.

Содержание

Сообщения в этом обсуждении
"Настройка маршрутизации Windows XP"
Отправлено tiv , 16-Апр-09 14:54 
если в сети провайдера модемной связи есть прокси для своих клиентов, то укажите его в настройках своей программы Skype или Scype

"Настройка маршрутизации Windows XP"
Отправлено Gudik , 16-Апр-09 15:29 
>если в сети провайдера модемной связи есть прокси для своих клиентов, то
>укажите его в настройках своей программы Skype или Scype

В сети провайдера модемной связи нет прокси сервера... Провайдер МТС...


"Настройка маршрутизации Windows XP"
Отправлено swm , 17-Апр-09 16:09 
1. Установить модемное соединение, посмотреть какой шлюз добавился и ручками дописать маршрут на сервер Скайп через этот шлюз.

2. Если прокатит - написать программку/скрипт которая будет сама находить шлюз, добавлять нужный маршрут и запускать Скайп. В *никсах это без проблем сделает шеловский скрипт. В Винде - VB скрипт или Java скрипт поможет ...


"Настройка маршрутизации Windows XP"
Отправлено tiv , 17-Апр-09 17:22 
>1. Установить модемное соединение, посмотреть какой шлюз добавился и ручками дописать маршрут
>на сервер Скайп через этот шлюз.

знать бы еще этот сервер скайпа
Пути скайпа неисповедимы
>
>2. Если прокатит - написать программку/скрипт которая будет сама находить шлюз, добавлять
>нужный маршрут и запускать Скайп. В *никсах это без проблем сделает
>шеловский скрипт. В Винде - VB скрипт или Java скрипт поможет
>...


"Настройка маршрутизации Windows XP"
Отправлено strike1984 , 18-Апр-09 17:50 
>Доброго времени суток.
>Ситуация такая.
>Имеется два подключения к интернету: 1-локальная сеть, 2-Модемная связь(3G).
>На машине установлена програмка Scype.
>Необходимо сделать так, что бы Scype подключался только через Модемное подключение, а
>через сетевое подключение работало все остальное.
>Подскажите пожалуйста, какими средствами это реализовать?
>IP адресс, который выделяется Модемному подключению динамический.

Примерно по аналогичной задаче сделал так:
1. удаляем маршрут по умолчанию для твоего модемного подключения
route delete 0.0.0.0 mask 0.0.0.0 x.x.x.x(gw=ip полученный)-p
2. если для твоего подключения по локальной сети нет маршрута по умолчанию, то добавляем его.
route add 0.0.0.0 mask 0.0.0.0 x.x.x.x metric 20(ip сетевухи или шлюза локалки)-p
по-моему чем больше сетевух, тем может быть больше метрика.
3. добавляем маршрут до сервера scype, тут можно добавить несколько маршрутов для каждого сервера, или жестко задать в системе 1 сервер.
route add x.x.x.x(ip scype) mask x.x.x.x(маска scype) x.x.x.x(шлюз=ip модемного соединения) metric 19(метрика должна быть меньше, чем в default) -p

cmd в руки, что непонятно - гугли!
У меня подозрение, что твоя scype=skype.


"Настройка маршрутизации Windows XP"
Отправлено swm , 20-Апр-09 22:10 
>[оверквотинг удален]
>route add 0.0.0.0 mask 0.0.0.0 x.x.x.x metric 20(ip сетевухи или шлюза локалки)-p
>
>по-моему чем больше сетевух, тем может быть больше метрика.
>3. добавляем маршрут до сервера scype, тут можно добавить несколько маршрутов для
>каждого сервера, или жестко задать в системе 1 сервер.
>route add x.x.x.x(ip scype) mask x.x.x.x(маска scype) x.x.x.x(шлюз=ip модемного соединения) metric 19(метрика
>должна быть меньше, чем в default) -p
>
>cmd в руки, что непонятно - гугли!
>У меня подозрение, что твоя scype=skype.

Это то же о чем я и говорил...
ЗЫ Метрика не зависит от кол-ва NIC. Она указывает приоритетность маршрута (расчитывается от пропускной способности и "длинны" маршрута). В данном случае ею вообще можно не заморачиваться. Нужно, чтобы шлюзом по умолчанию был шлюз ethernet-провайдера, а через шлюз модемного провайдера нужно добавить маршрут к серверу приложения. Сервер Skype вычислить просто - поставь файервол и посмотри в его логах... Ну или снифер какой-нибудь...


"Настройка маршрутизации Windows XP"
Отправлено tiv , 21-Апр-09 10:25 
>Сервер Skype вычислить просто - поставь файервол и посмотри в его
>логах... Ну или снифер какой-нибудь...

Вы сами пробовали это делать?


"Настройка маршрутизации Windows XP"
Отправлено swm , 21-Апр-09 12:05 
>Вы сами пробовали это делать?

Да, вчера, собсно, перед тем как постити сюда проверил на фаерволе. WinXP + Outpost. В журнале Outpost-а вижу сервер на который коннестится Skype. Проблема только с поиском пользователей скайпа - в этом случае поиск идет по различным серверам... Если не пользоваться поиском постоянно, должно работать.

Со снифером не делал, но тоже проблем не вижу... Или я чего-то не понял?


"Настройка маршрутизации Windows XP"
Отправлено tiv , 21-Апр-09 14:49 
>>Вы сами пробовали это делать?
>
>Да, вчера, собсно, перед тем как постити сюда проверил на фаерволе. WinXP
>+ Outpost. В журнале Outpost-а вижу сервер на который коннестится Skype.
>Проблема только с поиском пользователей скайпа - в этом случае поиск
>идет по различным серверам... Если не пользоваться поиском постоянно, должно работать.
>
>
>Со снифером не делал, но тоже проблем не вижу... Или я чего-то
>не понял?

я тоже не пробовал делать :),
но по идее пользователь только сможет залогинится и все, потомучто у скайп не клиент-серверная архитектура, а P2P
в результате все равно трафик пойдет через дефолтный шлюз


"Настройка маршрутизации Windows XP"
Отправлено swm , 21-Апр-09 16:16 
>я тоже не пробовал делать :),
>но по идее пользователь только сможет залогинится и все, потомучто у скайп
>не клиент-серверная архитектура, а P2P
>в результате все равно трафик пойдет через дефолтный шлюз

А-а-а, вот куда клоните! :). Ну, честно, да - в рабочем режиме не тестировал, сегодня может попробую.

Но! раз Skype умеет через прокси работать, кто мешает выбрать какой-нибудь прокси-сервер, указать его в настройках скайпа, а на прокси-сервер моршрутизироваться так, как я описал?


"Настройка маршрутизации Windows XP"
Отправлено tiv , 22-Апр-09 10:03 
>Но! раз Skype умеет через прокси работать, кто мешает выбрать какой-нибудь прокси-сервер,
>указать его в настройках скайпа, а на прокси-сервер моршрутизироваться так, как
>я описал?

полностью с вами согласен



"Настройка маршрутизации Windows XP"
Отправлено Gudik , 23-Апр-09 09:39 
Еще вопросик...
как можно програмно определить IP адресс интерфейса?
Есть модемное подключение. После подключения выделяется каждый раз новый IP адресс.
Как его можно опрделить с помощью командной строки, скажем, для того, что бы потом добавть маршрут?
Для наглядности...надо сделать примерно такой батник:
get ip etc0 into n
route add....
ну что то на одобие этого...я не говорю, что должно быть именно так...


"Настройка маршрутизации Windows XP"
Отправлено swm , 23-Апр-09 14:07 
Я мог уже и забыть что-то :) но мне кажется в Win этого в батнике не сделать... :(

Самый простой вариант - на VB/J-скрипт-е сделать. ИМХО, конечно.
Примеры можно с самой винде найти. Или по инету отыскать.

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


"Настройка маршрутизации Windows XP"
Отправлено swm , 24-Апр-09 13:13 
Вот что вчера получилось :)

VB-скрипт для изменения таблицы маршрутизации (файл change_route.vbs):
' -------------------- START VB-script ----------------------------------
' SWM Route change

strComputer = "."
cDeleteRoute = ""
cAddRoute = ""
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

' Выбираем данные о IP (тут вместо 02:00:4C:4F:4F:50 нужно указать реальный MAC модема)
Set IPConfigSet = objWMIService.ExecQuery _
    ("Select * from Win32_NetworkAdapterConfiguration Where MACAddress='02:00:4C:4F:4F:50'")

' Формируем строки для route add
For Each IPConfig in IPConfigSet
    If Not IsNull(IPConfig.IPAddress) Then
        For i=LBound(IPConfig.IPAddress) to UBound(IPConfig.IPAddress)
            cDeleteRoute = "route delete 0.0.0.0 mask 0.0.0.0 " + IPConfig.IPAddress(i)
            ' Тут вместо 93.158.134.3 нужно указать реальный IP-адрес проки-сервера
            cAddRoute = "route add 93.158.134.3 mask 255.255.255.255 " + IPConfig.IPAddress(i)
        Next
    End If
Next

' Изменяем таблицу маршрутизации
Set WshShell = WScript.CreateObject("WScript.Shell")

WScript.Echo cDeleteRoute
WshShell.Run (cDeleteRoute)
' -------------------- END VB-script ----------------------------------

VB-скрипт для просмотра списка доступных адаптеров и их IP и MAC (файл nic_list.vbs):
' -------------------- START VB-script ----------------------------------
' SWM IP Adapters List

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set IPConfigSet = objWMIService.ExecQuery _
    ("Select * from Win32_NetworkAdapterConfiguration Where IPEnabled=TRUE")

For Each IPConfig in IPConfigSet
    If Not IsNull(IPConfig.IPAddress) Then
        For i=LBound(IPConfig.IPAddress) to UBound(IPConfig.IPAddress)
            WScript.Echo IPConfig.IPAddress(i) + " - " + IPConfig.Caption(i) + " - " + IPConfig.MACAddress(i)
        Next
    End If
Next
' -------------------- END VB-script ----------------------------------

Топорно, без проверки ошибок, проверки наличия маршрутов и т.п. Но у меня дома работает, правда с АДСЛ-модемом и обычным модемом :)