![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 0 Всего: 11 |
Если у меня сетевая карта имеет несколько IP адресов, то как мне выбрать, через какой из них осуществляется WebRequest?
|
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 18 Всего: 67 |
Dims, как сетевая карта в один момент времени может иметь несколько IP адресов????
-------------------- СУВ, Partizan. |
|||
|
||||
Dobermann |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 992 Регистрация: 7.1.2008 Репутация: 1 Всего: 0 |
||||
|
||||
Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 0 Всего: 11 |
Вы можете зайти в настройки своей сети (под Windows) и убедиться, что много IP адресов на одной карте -- это штатная функция. Адреса должны быть статические. Кажется, это называется multihomed. Linux, естественно, тоже позволяет присваивать одной карте несколько адресов.
Так вот, если УЖЕ настроено несколько IP адресов на одной карте, то как выбрать из программы, через какой из настроенных адресов происходит обращение? |
|||
|
||||
rooks |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 90 Регистрация: 28.9.2008 Где: Минск Репутация: нет Всего: 9 |
Есть такой класс
![]() |
||||
|
|||||
avvo |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 60 Регистрация: 11.9.2007 Репутация: 1 Всего: 4 |
Socket socket = new Socket();
socket.bind(new InetSocketAddress("1.1.1.1",12345)); socket.connect(new InetSocketAddress("2.2.2.2", 12345)); главное, чтобы от 1.1.1.1 (локальный клиент) существовал путь до 2.2.2.2 (удаленный сервер), включая локальную роутинговую таблицу. |
|||
|
||||
PashaPash |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1233 Регистрация: 3.1.2008 Репутация: 13 Всего: 49 |
Dims, судя по рефлектору - никак. HttpWebRequest не вызывает bind перед connect.
|
|||
|
||||
nmn |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 593 Регистрация: 26.11.2005 Репутация: 1 Всего: 1 |
выбор интерфейса то бишь исходящего ip определяется по таблице маршрутизации, в windows "route print" чтобы посмотреть таблицу
|
|||
|
||||
PashaPash |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1233 Регистрация: 3.1.2008 Репутация: 13 Всего: 49 |
nmn, ага, а на один интерфейс может быть назначено несколько IP-адресов из одной подсети. И для выбора конкретного клиентского адреса/порта нужно вручную указать его вызовом Socket.Bind. Никакие route print тут не помогут.
|
|||
|
||||
Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 0 Всего: 11 |
Хорошо, ну а как, хотя бы, выбрать исходящий порт?
И если опять никак, то какой порт выбирается автоматически? Каждый раз новый на новый реквест? Или иногда старый? |
|||
|
||||
PashaPash |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1233 Регистрация: 3.1.2008 Репутация: 13 Всего: 49 |
Dims, никак, выбирается по принципу "available port number between 1024 and 5000."
|
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |