Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.05.25;
Скачать: [xml.tar.bz2];

Вниз

2 модема на одном компьютере   Найти похожие ветки 

 
kami   (2008-04-14 13:46) [0]

День добрый.
кто пробовал использовать 2 модема (диалап) на одном компьютере(и у кого это получилось) - поделитесь опытом. Дело в том, что в Windows XP pro и Vista home prem. рабочим оказывается только последний из подключенных - через него идет весь поток информации, он пингуется "снаружи" и т.д... Первый из подключенных висит мертвым грузом (а при отключении второго - начинает функционировать).
Поиском по интернету нашел только похожие вопросы (без ответов, только с вопросами - "а зачем это нужно" и кучу ссылок на софтмодемы+упоминание вскользь о том, что подобное возможно только на серверах).
Обойти эту задачу не получится - вся конструкция будет размещена на мобильном объекте, трафик в один модем "не умещается"...

Буду благодарен любой информации.


 
Anatoly Podgoretsky ©   (2008-04-14 13:48) [1]

> kami  (14.04.2008 13:46:00)  [0]

А провайдер поддерживает эту технологию?


 
Reindeer Moss Eater ©   (2008-04-14 13:52) [2]

Дело не в модеме, а в "использовать шлюз по умолчанию" у подключения.
последний установивший соединение ставит свой шлюз и весь исходящий идет чере него.


 
kami   (2008-04-14 13:53) [3]

Пардон, Анатолий, какую? Использование 2 модемов на 1 машине? Честно - не знаю, буду уточнять. Хотя думалось, что провайдер тут ни при чем, а дело в самой Windows - разбиение информации по сетевым интерфейсам программно отработано и с локальными адресами (т.е. 192.168.х.х) работает отлично.


 
kami   (2008-04-14 13:55) [4]

> Reindeer Moss Eater ©   (14.04.08 13:52) [2]
> Дело не в модеме, а в "использовать шлюз по умолчанию" у
> подключения.
> последний установивший соединение ставит свой шлюз и весь
> исходящий идет чере него.

А есть возможность это исправить? Наш сисадмин тоже предположил это, но так доказать не захотел, соответственно его слова пропустили мимо.


 
Anatoly Podgoretsky ©   (2008-04-14 13:59) [5]

> kami  (14.04.2008 13:53:03)  [3]

Это дело регулируется с друх сторон, со стороны провайдера и с твоей стороны. Называется Load Balancing
Для поддержки требуются драйвера, в начале 90 годов делал подобное, но это было на Линукс, хотя там было и решение для Виндоус, но теперь уже ничего не помню.
Если же тебя интересует простое разделение по интерфейсам, то ты должен иметь две сети, на каждую из которых должен быть прописан маршрут. Передача идет по адресам сетей и обслуживается автоматически.

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


 
kami   (2008-04-14 14:12) [6]

Anatoly Podgoretsky ©   (14.04.08 13:59) [5]
> Если же тебя интересует простое разделение по интерфейсам,
> то ты должен иметь две сети, на каждую из которых должен
> быть прописан маршрут. Передача идет по адресам сетей и
> обслуживается автоматически.

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


> обмен идет через шлюз по умолчанию, который динамически
> меняется.

То есть, обойти это каким-либо образом не получится? Ведь для диалап-соединений (из доступных/разрешенных по ТЗ ОпСос-ов) всё назначается динамически...


 
Рамиль ©   (2008-04-14 14:12) [7]


> Наш сисадмин тоже предположил это, но так доказать не захотел,

Странно, чего там доказывать? И так все ясно, что дело в маршрутах.


 
kami   (2008-04-14 14:15) [8]


> Странно, чего там доказывать? И так все ясно, что дело в
> маршрутах.

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


 
Anatoly Podgoretsky ©   (2008-04-14 14:16) [9]

> kami  (14.04.2008 13:55:04)  [4]

Нельзя, это принципы маршрутизации, ну сменишь ты один на другой, это шило на мыло.
А вот разделение по сетям обеспечит паралельный трафик, плюс третий на шлюз по умолчанию, если он не будет равен одному из модемных.
Математика в маршрутизации очень простая, участвую только сеть и маска - логические операции AND, над адресом и маской и сравнение с сетью.
Если подсеть входит в другую сеть, то используется подсеть с максимальной маской.


 
kami   (2008-04-14 14:22) [10]

> Anatoly Podgoretsky ©   (14.04.08 14:16) [9]
Поясните, пожалуйста, не разбирающемуся в азах маршрутизации и всего остального (или ткните ссылкой), как сделать это "разделение по сетям"


 
Reindeer Moss Eater ©   (2008-04-14 14:33) [11]

route add сеть/хост маска шлюз


 
Anatoly Podgoretsky ©   (2008-04-14 15:01) [12]


>
> То есть, обойти это каким-либо образом не получится? Ведь
> для диалап-соединений (из доступных/разрешенных по ТЗ ОпСос-
> ов) всё назначается динамически...

Динамически, но с определенных сетей, а сети как правило статические, после установки интерфейса надо прописать новые маршруты, при условии, что сети разные, то что модемное соединение точка-точка этому не мешает, но лезть надо на очень низкий уровень.


 
Anatoly Podgoretsky ©   (2008-04-14 15:25) [13]


> Поясните, пожалуйста, не разбирающемуся в азах маршрутизации
> и всего остального (или ткните ссылкой), как сделать это
> "разделение по сетям"

RME успел ответить, добавлю только route /?
Если есть возможность это задавать после поднятия интерфейса вручную или бат файлом, то считай, что проблема решена.

Команду "route add сеть/хост маска шлюз" надо выдавать дважды, для каждого из модемов. И возможно скорректироать шлюз по умолчанию, если остальной трафик должен идти по другому маршруту.
В Линуксе я бы это просто сделал, точнее у меня так и сделано было, после поднятия интерфейса в скрипте прописывался особый маршрут.
В Виндоус есть механизм netsh но я его не изучал, с помощью netsh можно делать почти, что угодно с интерфейсами. Если бы адреса у модемов были бы постоянные, то можно было бы один раз прописать маршруты.
Если не охота лезть в изучение этих сложных вещей, то можно просто распарсить вывод команды route и добавить маршруты, можно руками. Вся сложность состоит в определение интерфейсов. Ну и придется немного помучиться.


 
kami   (2008-04-14 17:45) [14]

Reindeer Moss Eater ©   (14.04.08 14:33) [11]
Anatoly Podgoretsky ©   (14.04.08 15:25) [13]

Спасибо, пойду мучить модемы. Принцип понятен, вывод route распарсить проблемы не составит, остальное повешу на нашего "спеца" по сетям и иже с ними.


 
evvcom ©   (2008-04-15 11:07) [15]


> Вся сложность состоит в определение интерфейсов.

Только что был в гостях у Розыча, там есть пример: http://rouse.drkb.ru/files/netifenum.zip


 
DVM ©   (2008-04-15 11:25) [16]

самое удобное средство в Windows netsh.exe. Позволяет делать даже то, чего нет в GUI.



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2008.05.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.008 c
2-1209758552
KiLLiR
2008-05-03 00:02
2008.05.25
Цвет текста в Edit е со свойством Enabled=False


6-1187246495
Elen
2007-08-16 10:41
2008.05.25
Рассылка сообщения всем хостам


2-1209038366
worldmen
2008-04-24 15:59
2008.05.25
Как показать Hint любого объекта на StatusBar?


2-1209892032
filin2323
2008-05-04 13:07
2008.05.25
скрытие формы


15-1207719476
Игорь М.
2008-04-09 09:37
2008.05.25
Ассемблер





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский