Re: программный IP redirect ? существуют ли методы
От: madprogrammer. Россия  
Дата: 15.12.03 08:47
Оценка:
Здравствуйте, fryky, Вы писали:

F>Вопрос немного не по программированию, но все же...

F>Ребят, как можно сделать так, что бы все пакеты, идущие на опр ИП перенаправлялись на другой ИП ?
F>т.е. это нужно только внутри одного компьютера, а не для всей сети........програмно.

F>Т.е. вообще нужно на компе все что идет на ИП:ПОРТ перенаправить на LOCALHOST:[мой порт]


F>может есть какое нибудь ПО или настройки типа hosts для доменов ?


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

  • Вам необходимо переключить сетевую карту в promiscuous mode и смотреть IP-адреса приходящих пакетов.
    При совпадении соотв. нужно изменить IP и MAC на адрес вашей машины и передать пакет вверх по стеку протоколов.

  • Никакими способами вам не удастся (если только у вас не 2 компьютера) предотвратить получение правильного пакета для того "опр IP" той машиной.

  • Прослушать сетевой трафик вы с самом простом случае можете только в своем сегменте сети.

    В том случае, если вы собираетесь реализовать программный IP-редирект на обеих машинах, то:

  • Все пакеты, уходящие с той машины на "опр IP" подвергаются программному изменению — IP адрес и MAC
    (не всегда) в них заменяется адресом вашей машины-приемника.

  • На машине-приемнике данный пакет будет рассмтриваться как пакет, изначально предназначенный этой машине.

  • В этом случае пакеты для "опр IP" будут получены вашей машиной-приемником и никогда не будут получены самой машиной с "опр. IP".

    P. S. Данное рассуждение чисто теоретическое, на практике не применялось. Соответственно для приведелния его в действие необходимы определенные поправки.
    P. P. S. По-моему нет необходимости самостоятельно реализовывать программный IP-редирект, т.к. такая функция присутствует уже в некоторых программах, если не в самой ОС.
  •  
    Подождите ...
    Wait...
    Пока на собственное сообщение не было ответов, его можно удалить.