Re[10]: Контексты обработчиков TCPIP.SYS, NDIS.SYS, ...
От: sergei_132 http://sergbox.blogspot.com
Дата: 26.03.07 13:52
Оценка:
Здравствуйте, sergei_132, Вы писали:

_>Здравствуйте, Аноним, Вы писали:


_>>>на уровне TDI (LocalAddr==0)&&(LocalPort!=0)


А>>Чо паникуешь? Local Address == 0 на уровне TDI — это нормально. Точнее не 0, а 0.0.0.0 или ещё может быть 127.0.0.1.



_>да не паникую, я не знаю че делать...


_>ну и как с этим бороться?


_>допустим у меня 2 сетевые карты: 10.0.0.1 и 10.0.0.2


_>и процессы биндят 2 одинаковых порта port=123 на обеих картах


_>тогда получается на уровне TDI не различить их 0.0.0.0:123 ???


а вообще я пытаюсь определить pid на уровне NDIS, для этого у фильтра TDI смотрю информацию...
получается только для уникальных (не нулевых) адресов определять...

как же тогда эти фаерволы узнают, если 2 сетевые карты ? как-то же это решено
Re[11]: Контексты обработчиков TCPIP.SYS, NDIS.SYS, ...
От: Аноним  
Дата: 26.03.07 14:08
Оценка:
_>как же тогда эти фаерволы узнают, если 2 сетевые карты ? как-то же это решено

Да йопты, фаеры всё узнают на верху, на TDI уровне. Они узнают локальный адрес:порт и удалённый адрес:порт, на этом же уровне смотрят процесс и добавляют в свой внутренний список. Далее на NDIS уровне смотрят в своём супир-пупир списке какой процесс соответствует этой паре адрес:порт. Вот так происходит связывание адресов с процессами. Я так понял тебе именно это нужно?
Re[12]: Контексты обработчиков TCPIP.SYS, NDIS.SYS, ...
От: sergei_132 http://sergbox.blogspot.com
Дата: 26.03.07 14:36
Оценка:
Здравствуйте, Аноним, Вы писали:

_>>как же тогда эти фаерволы узнают, если 2 сетевые карты ? как-то же это решено


А>Да йопты, фаеры всё узнают на верху, на TDI уровне. Они узнают локальный адрес:порт и удалённый адрес:порт, на этом же уровне смотрят процесс и добавляют в свой внутренний список. Далее на NDIS уровне смотрят в своём супир-пупир списке какой процесс соответствует этой паре адрес:порт. Вот так происходит связывание адресов с процессами. Я так понял тебе именно это нужно?


это я уже давно понял

я говорю в чем проблема: если у меня 2 сетевые карты

то 0.0.0.0 какой карте соответствует на уровне TDI ???
Re[13]: Контексты обработчиков TCPIP.SYS, NDIS.SYS, ...
От: Аноним  
Дата: 26.03.07 14:42
Оценка:
_>то 0.0.0.0 какой карте соответствует на уровне TDI ???

Вот это не скажу, но мне кажеться это определяется на уровне NDIS, а не TDI. Попробуй помучить DDK Documentation на тему "что происходит с коннектом далее, после того, как он проходит уровень tcpip.sys".
Re[14]: Контексты обработчиков TCPIP.SYS, NDIS.SYS, ...
От: sergei_132 http://sergbox.blogspot.com
Дата: 26.03.07 14:50
Оценка:
Здравствуйте, Аноним, Вы писали:

_>>то 0.0.0.0 какой карте соответствует на уровне TDI ???


А>Вот это не скажу, но мне кажеться это определяется на уровне NDIS, а не TDI. Попробуй помучить DDK Documentation на тему "что происходит с коннектом далее, после того, как он проходит уровень tcpip.sys".



Блин, дошло кажется!!!

если у нас есть удаленный адрес, то мы можем в таблицу маршрутизации посмотреть, какому интерфейсу это соответствует.

и тогда просто заменить LocalAddr==0.0.0.0 на IpAddr из таблицы маршрутизации

правильно?
Re[15]: Контексты обработчиков TCPIP.SYS, NDIS.SYS, ...
От: Аноним  
Дата: 26.03.07 15:03
Оценка:
_>если у нас есть удаленный адрес, то мы можем в таблицу маршрутизации посмотреть, какому интерфейсу это соответствует.
_>и тогда просто заменить LocalAddr==0.0.0.0 на IpAddr из таблицы маршрутизации

Ну да, наверно можно и так. Но не уверен. Попробуй.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.