Форум ОНУ

Гость


Автор Тема: Delphi i Builder  (Прочитано 48683 раз)

student

  • Гость
Delphi i Builder
« Ответ #26 : 10 Май 2006, 13:14:26 »
Я пользовался двумя прогами: одна вроде драйвера (устанавливаешь и нифига не видешь) а другая (вроде WinDump, но может я ошибаюсь, посмотрю, потом точно скажу) использует первую и выводит на экран инфу типа: дата время от кого размер кому протокол. (что-то вроде этого).

Gavrix

  • Гость
Delphi i Builder
« Ответ #25 : 10 Май 2006, 12:54:21 »
Цитировать
А где это выставляется? или это не на всех сетевых есть?

хорошо, а как ты ловил пакеты? для этого существуют специалные программы - снифферы. они сами поставят твою сетевую в нужный режим, это если в винде. в никсах все делается утилитой ifconfig. по ней читай маны.

student

  • Гость
Delphi i Builder
« Ответ #24 : 10 Май 2006, 12:50:31 »
Цитата: "Gavrix"
ты не пробовал тавить сетевушку сначала в promisc режим?

А где это выставляется? или это не на всех сетевых есть?

Andrew Kosovich

  • Гость
Delphi i Builder
« Ответ #23 : 10 Май 2006, 12:44:11 »
2Eugene :
ХМ, давай, говори источник, откуда технология (особенно интересно, что она не совпадает в разных ОС при том, что всеравно - сокеты Беркли). Мой источник - Книга Д. Камера сети TCP/IP том 1.

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

224.0.0.1 - Все компьютеры в данной подсети.

И действительно пингуется, ты сам видел - ответы приходят от разных машин.

Удачи.

Gavrix

  • Гость
Delphi i Builder
« Ответ #22 : 10 Май 2006, 12:41:50 »
а я вот в отделе колмпьютерной техники ловил пакеты предназначенные для подсети на французком бульваре!!!
ты не пробовал тавить сетевушку сначала в promisc режим? попробуй)) тогда увидишь много интересного :evil:
а по поводу свитчей - ничего они не фильтруют, то есть фильруют конечно, но совсем не то.
свитч - это DTE устройство, в то время как HUB - нет. HUB это многопортовый повторитель.
свитч просто принисает все паекты и генерирует новые, но немножео измененные (по крайней мере поле TTL). фильтрацией адресов свитчи НА ЗАНИМАЮТСЯ!

Eugene

  • Гость
Delphi i Builder
« Ответ #21 : 10 Май 2006, 12:35:37 »
1 - По технологии на запрос  224.0.0.1 - машина должна получить первый пришедший к ней ответ и от остальных послать нафиккк

2 - у нас в универе ещё куча умных свичей а не фигни всякой - большинство из них бродкаст не пропустит

student

  • Гость
Delphi i Builder
« Ответ #20 : 10 Май 2006, 12:31:06 »
на ping 224.0.0.1 в Win98 ответ приходит, а вот в ХР - нет :!: (в нашей университетской сети, машины стоят рядом и подключены к одному и тому же свичу)
 Gavrix
Речь идет не о BNC сетях, а о сетях построенных на витой паре !
Если в сети стоят не HUB-ы, а SWITCH-и, то пакеты фильтруются еще до сетевой карты прямо в свиче (учи теорию и сверяй с практикой) :!: По крайней мере я ни разу не ловил на своей сетевой карте пакеты, не предназначенные моей машине !

И вообще - мы отклонились от темы. Если есть желание и дальше обсуждать особенности работы локальных сетей, то давайте перенесем это в отдельный топик (предложение для админа)!

Gavrix

  • Гость
Delphi i Builder
« Ответ #19 : 10 Май 2006, 12:05:49 »
у тебя дружок с сетевыми технологями совсем плохо...
на пинги широковещательные вообьще ниодна машина в твоей подсети не ответит....я в этом уверен ровно на столько процентов, на сколько сколько уверен в том, что у вас там винды ХРеновые))) они на на такое не отвечают
а вот броадкаст по другим протоколам пойдут, и отвечать на них будут ВСЕ машины, потому что пакеты, даже адресованные напрямую, приходит кор ВСЕМ машинам в сети. тут понятия "первый" или "последний" нет. просто ВСЕМ м все! просто адлресованные конкретному хосту пакеты отфилтьтровываются еще сетевой картой:)

Andrew Kosovich

  • Гость
Delphi i Builder
« Ответ #18 : 10 Май 2006, 11:01:06 »
Eugene
Ага, как и предполагалось, в винде все не как у людей: действительно, в винде (как минимум при использовании стандартного рing приходит ответ от первой попавшейся машины!).
Вот во FreeBSD, например, получилось так:

$ ping 224.0.0.1
PING 224.0.0.1 (224.0.0.1): 56 data bytes
не надо в следующий раз печатать айпишники машин из 13 подсети пожалуйста - прибъю
сорри  :oops: главное - ты видел - работает! (кто поумнее - попинговать всеравно сможет, такшо ничего книминального я не сделал)

Eugene

  • Гость
Delphi i Builder
« Ответ #17 : 10 Май 2006, 09:54:15 »
нет ) Первая попавшаяся )

Andrew Kosovich

  • Гость
Delphi i Builder
« Ответ #16 : 08 Май 2006, 12:57:01 »
Все!

student

  • Гость
Delphi i Builder
« Ответ #15 : 08 Май 2006, 12:30:19 »
А кто отвечает на этот пинг ?
(моя машина, все сразу или первая попавшаяся ?)

Andrew Kosovich

  • Гость
Delphi i Builder
« Ответ #14 : 05 Май 2006, 18:16:03 »
Еще один многоадресатный адрес: 224.0.0.1 - он обозначает все компьютеры в данной подсети. Можешь попробовать его попинговать  :D

student

  • Гость
Delphi i Builder
« Ответ #13 : 05 Май 2006, 17:19:56 »
Цитата: "Eugene"
Я могу сказать что когда мы начинали использовать бродкаст внутри нашей сети то сообщение приходило к одному компу из 20 )


Внутри нашей сети все нормально работает, все компьютеры исправно получают сообщения и никто не жалуется!

Цитата: "Eugene"
1 И по твоей отправке 255.255.255.255
оно должно было прийти ко всем компам в МИРЕ


Это не "моя отправка" и мне не надо, чтобы "все компы в мире" получали эти сообщения. Все претензии по этому поводу предъявляйте автору программы. Вот отрывок из файла помощи в программе:
Программа Chatter разработана на языке программирования Microsoft Visual C++ v6.0. Напрямую используется Win32 API. Поддерживаются сетевые протоколы IPX и UDP (порт 7000). Сетевой обмен осуществляется с помощью широковещательных дэйтаграмм (datagrams). Программа работоспособна в сетях с низким качеством связи. Протестирована в нескольких локальных сетях Microsoft Network на более чем 20 компьютерах разных конфигураций.
E-mail: winchatter@mail.ru
Автор: Дмитрий Андрейчук


Может я немного запутал картину, но сейчас попробую исправится:
Есть сеть (на витой паре) внутри общежития (несколько свичей и еще больше компьютеров). В каждую из комнат подходит не более одного провода для подключения компьютера! Так как сеть подключена к интернету (через аппаратный роутер), а в некоторых комнатах стоит по два компьютера, то на одном из компьютеров ставится две сетевые карты (никакие роуты прописывать не надо, просто стоит галочка в настройке сетевой карты: "Разрешить другим пользователям использовать это подключение к интернету").
Чат нужен исключительно в рамках здания (через маршрутизатор эти пакеты не идут, если не настроить его соответствующим образом, но это - лишнее). Чат между двумя компьютерами в рамках одной комнаты -  :? (сами понимаете).
Пограмму я просто скачал с нета, поставил и она мне понравилась. Потом я решил, что в ней не хватает смайликов, а так как я лучше всего разбираюсь в делфи, то и решил писать программу на делфях.
Для начала я естественно иследовал работу программы: каким образом идет обмен данными. С этой задачей я справился. Потом я написал рабочую модель, иммитирующую работу этой программы, вот тут-то и всплыли на поверхность все недостатки этой программы:
-можно читать чужие сообщения.
-можно отправлять сообщения якобы с другого компьютера (даже с компьютера, имя которого вообще не может существовать, учитывая ограничения на используемые символы).
-можно добавлять в окно чата имена несуществующих компьютеров и при этом получать сообщения, направленные им.
Все, что меня интересует, так это два вопроса, написанные в самом начале топика и ничего более!

В конце концов уважающий себя програмист должен уметь написать программу на любом языке программирования, который он знает, а не только на том, который ему больше нравится. (будет время, займусь изучением других языков, а пока - Делфи). Ведь истинные знания даются только в сравнении!

Eugene

  • Гость
Delphi i Builder
« Ответ #12 : 05 Май 2006, 09:40:52 »
Я могу сказать что когда мы начинали использовать бродкаст внутри нашей сети то сообщение приходило к одному компу из 20 )

1 И по твоей отправке 255.255.255.255
оно должно было прийти ко всем компам в МИРЕ

2 Ни один из Наших маршрутизаторов в сети на данный момент бродкаст не пропусти (один есть но не скажу какой и где) поэтому физически такие сообщения будут ходить между виндовыми машинами на уровне только одного свича (и то не всеми машинами)

3- Со второй сетевой нужно внутри винды роуты попрописывать

4 - Ну её эту Дэлюфю - в жизни её не юзал )