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

Вниз

Win98 и XP   Найти похожие ветки 

 
Сергей Ю.   (2004-04-08 21:44) [0]

Одна и таже прога по разному работает в 98 и ХР, в ХР комманда
ioctlsocket(RS, SIO_RCVALL , flag) нормально проходит и ошибок невыдает, а в 98 выдает ошибку с кодом 10022. В WinSock2 я описание такой ошибки ненашел :(. Вчем проблема, что не так? Проверял-ли ктонибудь код сниффера от Verg-а на 98ой винде?
Кстати в 2000 тоже все ок. все чудненько работает.


 
Verg ©   (2004-04-08 21:57) [1]

Алле, на барже! .... :))

SIO_RCVALL
Enables a socket to receive all IP packets on the network. The socket handle passed to the WSAIoctl function must be of AF_INET address family, SOCK_RAW socket type, and IPPROTO_IP protocol. The socket also must be bound to an explicit local interface, which means that you cannot bind to INADDR_ANY.
Once the socket is bound and the ioctl set, calls to the WSARecv or recv functions return IP datagrams passing through the given interface. Note that you must supply a sufficiently large buffer. Setting this ioctl requires Administrator privilege on the local computer. SIO_RCVALL is available in Windows 2000 and later versions of Windows.


 
panov ©   (2004-04-08 21:57) [2]

WSAEINVAL
(10022)
Invalid argument.
Some invalid argument was supplied (for example, specifying an invalid level to the setsockopt function). In some instances, it also refers to the current state of the socket—for instance, calling accept on a socket that is not listening.


 
Сергей Ю.   (2004-04-09 08:10) [3]

Блин ЖО...А ПОЛНАЯ, спасибо за разочарование, а как тогда мне это все в 98-ой -то организовать? Очень надо. Это все - это код сниффера Verga.


 
Verg ©   (2004-04-09 08:28) [4]


> Сергей Ю.   (09.04.04 08:10) [3]


Блин, там был НЕ снифер, а только демонстрационник SOCK_RAW в режиме SIO_RCVALL.
Кстати, ты все еще пытаешься отловить TCP поток по локалке, одновременно распечатывая его в окне консоли?
Прикинь, сетка 100 мегабит в секунду... Системные драйвера TCP и NBT "качают" файл. MTU у Ethernet - 1500 байт. Значит, файл летит по сетке со скротью ~8000 пакетов в секунду (восемь тысяч пакетов в секунду - вдумайся)...
А тут твое user-mode приложение, с обыкновенным приоритетом пытается НА КАЖДЫЙ пакет подготовить и вывести строчку в консольное окно.... :)

Чтобы сделать что-то подобное сниферу под любую из WIN платформ, придется разбираться с WinPCAP-ом.

http://winpcap.polito.it/
http://www.misalpina.com/ghost3k


 
Сергей Ю.   (2004-04-09 10:21) [5]

Спасибо за ссылки. Мне надо отловить входящий траффик приходящий по выделенке со скоростью 4-8 мегабит в секунду. Это тоже нереально "тем сниффером", да? Т.е. я так понимаю что ловлю только обрывки, а остальное пролетает мимо меня? И как-же всетаки заставить работать в 98-ой ioctlsocket(...)?


 
Verg ©   (2004-04-09 10:26) [6]


> И как-же всетаки заставить работать в 98-ой ioctlsocket(...)?


Никак.


> Это тоже нереально "тем сниффером", да?


Тем-нереально. Убери из него вывод на экран всякой чепухи, работу со строками и проч. Заведи отдельный поток, задери ему приоритет по самое "небалуйся" и границы "реальности" у него несколько расширятся :)))


 
Сергей Ю.   (2004-04-09 11:33) [7]

Но мне ОЧЕНЬ НАДО смотреть входящий траффик именно под 98-ой :(
Вывод на экран я убрал, работу со строками тоже, единственное что я делаю так это складываю длины пакетов и изменяю на форме два лабеля. А можно поподробнее насчет потока, приоритета и границ "реальности" :)


 
Verg ©   (2004-04-09 11:49) [8]


> А можно поподробнее насчет потока, приоритета и границ "реальности"
> :)


Читайте Рихтера, MSDN и форум "WinAPI"


> Но мне ОЧЕНЬ НАДО смотреть входящий траффик именно под 98-ой
> :(


Не капризничай :)), я же тебе сказал - WinPCAP.


 
Verg ©   (2004-04-09 11:56) [9]

Работу со строками убрал, говоришь...


> изменяю на форме два лабеля.


Вот про это ты сразу же забудь - это еще похлеще будет, чем просто работа со строкам.

Пойми, цена вопроса: единицы миллисекунд....


 
Сергей Ю.   (2004-04-09 14:59) [10]

Я бы с удовольствием почитал, но это надо было уже вчера сделать :(


 
Nike   (2004-04-09 21:21) [11]

а я ваще только учусь!



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

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

Наверх





Память: 0.47 MB
Время: 0.033 c
7-1083140461
Pul
2004-04-28 12:21
2004.05.30
Как программно установить в биосе время включения компьютера


6-1081684143
iraizor
2004-04-11 15:49
2004.05.30
Чат в Интернете на сокетах


14-1083780989
val_5
2004-05-05 22:16
2004.05.30
Как побороть EOutOfMemory ?


6-1081330444
pohil
2004-04-07 13:34
2004.05.30
Чат на Indy


4-1082117282
Сергей_И
2004-04-16 16:08
2004.05.30
Запись текста в интернет форму





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский