Как получить IP адрес шлюза на клиенте?

supertutor
Дата: 27.03.2010 17:46:14
Ребята, подсказка нужна. Веб-сайт работает в корпоративной сети большой конторы. Необходимо при нажатии на Button1 получать в переменную или TextBox1 IP адрес шлюза рабочей станции, на которой нажали кнопку Button1, т.е. шлюз клиента?
TextBox1.Text =Page.Request.UserHostAddress.ToString() - вот этой строкой я получаю IP адрес рабочей станции, а как бы получить побольше параметров сети? Да. Проект пишется на VB.
Буду всем очень признателен!!!!
n_string
Дата: 27.03.2010 19:46:02
В Request -е поищи, там полно параметров. MSDN в помощь.
supertutor
Дата: 28.03.2010 10:48:42
n_string
В Request -е поищи, там полно параметров. MSDN в помощь.

Request я прочесал прежде чем написать. Там параметров действительно много возвращается, но апишника шлюза - нет. :(
MSDN - тоже курю постоянно, что-то пока безуспешно.
iConst
Дата: 28.03.2010 12:33:41
Логично, что веб сервер не интересуется протоколами нижнего уровня. Ему не интересна топология сети клиента.
Сам такого никогда не делал, но как себе это представляю:
Если сервер свой и стоит в своей внутренней сети - то есть варианты:
1) Сервер и ВСЕ клиенты находятся в одной подсети
2) Существует НЕСКОЛЬКО ПОДСЕТЕЙ и сервер стоит вне их

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

Ваша тема - роутинг, скорее всего, со своей реализацией.

Вот, имхотак... :)

P.S. А, вот любопытно - зачем это нужно?
iConst
Дата: 28.03.2010 12:37:28
Аддон: цепочка маршрута от клиента к серверу может включать несколько шлюзов - нужны все?
Перевернув мир - оглянись, может перевернулся ты сам?!
=Lucky=
Дата: 29.03.2010 13:00:55
supertutor
Ребята, подсказка нужна. Веб-сайт работает в корпоративной сети большой конторы. Необходимо при нажатии на Button1 получать в переменную или TextBox1 IP адрес шлюза рабочей станции, на которой нажали кнопку Button1, т.е. шлюз клиента?
TextBox1.Text =Page.Request.UserHostAddress.ToString() - вот этой строкой я получаю IP адрес рабочей станции, а как бы получить побольше параметров сети? Да. Проект пишется на VB.
Буду всем очень признателен!!!!

Самый простой вариант - отключить у клиента исключения на прокси при вызове вашего приложения:-)...

1.Если идёт запрос на сервак внутри вашей сети с включенным исключением proxy, то передаётся IP адрес клиента и прокси(шлюз) никак не фигурирует.
2.Когда исключения нет, то вся работа идёт через прокси(шлюз) и в этом случае вы не узнаете IP пользователя..у вас будет только адрес прокси.

В подсети может быть несколько шлюзов.Зачем Вам это?