Текущий архив: 2006.04.02;
Скачать: CL | DM;
ВнизМожно ли прослушать порт, если на нем уже висит другая программа Найти похожие ветки
← →
DelphiN! © (2006-03-03 12:26) [0]Очень нужно прослушать и получить данные с порта, на котором уже висит другая программа. При этом моя программа естесно не должна мешать первой. Как такое возможно?
← →
Курдль © (2006-03-03 12:32) [1]Очень простоц вопрос: "протокол какой?"
← →
DelphiN! © (2006-03-03 12:33) [2]TCP/IP
← →
Курдль © (2006-03-03 12:36) [3]Нельзя. Хотя тогда надо понять утверждение "висит другая программа". Что это значит?
1. программа для своих целей использует указанный порт.
2. программа установила коннект по этому порту с другой программой.
← →
DelphiN! © (2006-03-03 12:38) [4]Первая программа, это прокси сервер, которые получает запросы по данному порту от клиентов, и сответственно по нему же шлет им ответ, моя программа должна лишь получать запросы от клиентов и обрабатывать их(для ведения отчетности)
← →
Курдль © (2006-03-03 12:43) [5]
> и сответственно по нему же шлет им ответ
Вовсе не соответственно! Обычно в таких случаях всем подключающимся известен TCP-прослушиватель прокси. По запросу, пришедшему на него от клиента, сервер открывает новый порт и предоставляет его для связи клиенту, а прослушиватель так и остается в режиме прослушивания и готовности к новому коннекту.
← →
DelphiN! © (2006-03-03 12:52) [6]
> [5] Курдль © (03.03.06 12:43)
Не совсем понял как клиенту может быть известен прослущиватель?
И как реализовать чтобы сервер открывал новый порт, чтобы отсылать по нему информацию, да и принимать сервер должен данные по тому же порту, что и прослушиватель.
← →
Курдль © (2006-03-03 13:06) [7]
> Не совсем понял как клиенту может быть известен прослущиватель?
Читайте первоисточники. Если Вам говорят, что MS SQL Server связывается с клиентом по порту 3625 (не точно), то это и есть порт прослушивателя.
← →
DelphiN! © (2006-03-03 13:15) [8]Всмысле данные сначало поступают на порт прослушки, а потом программа прослушки пересылает их на другой порт конечному адресату?
← →
Курдль © (2006-03-03 13:17) [9]
> Всмысле данные сначало поступают на порт прослушки
Не данные, а запрос на коннект. Данные ждут, пока коннект не установится :)
← →
DelphiN! © (2006-03-03 13:26) [10]А как перенаправить запрос на коннект на другой порт, скажем в том же самом TServerSocket-e?
А прокся ответ куда скинет? В прокси сервере скажем Юзергейт указыватся 1 порт для работы с клиентами, а 2 указать нельзя(исходящий\входящий). Получается и ответ перенаправлять нужно?
← →
Курдль © (2006-03-03 13:28) [11]Думаю, что едва ли нам в разумное время удастся закончить подобный диалог. Без изучения литературы по розеткам никак не обойтись :(
← →
DelphiN! © (2006-03-03 13:35) [12]Не посоветуете что почитать, желательно чтобы с реальными примерами, да и поконкретней было, просто очень скоро нужно сделать ...
← →
Курдль © (2006-03-03 13:42) [13]Так навскидочку литературу не назову. Я использовал чистый MSDN. Но ясности это добавило уйму. Еще следует поискать литературу по WinSock2.
Кстати, первым моим шагом был топик на Delphimaster, типа "как по-быстренькому организовать работу с сокетами". В результате пришлось таки изучать первоисточники. Дело хоть и не простое, но крайне интересное.
← →
DelphiN! © (2006-03-03 13:47) [14]Спасибо, буду копать ...
← →
Piter © (2006-03-03 13:50) [15]Плохой вариант.
Какой прокси используется? Практически все прокси могут делать логи. Вот логи и надо обрабатывать, а не искать извращенные способы.
← →
Ученик чародея © (2006-03-03 13:52) [16]сниффер?
← →
DelphiN! © (2006-03-03 14:12) [17]
> [15] Piter © (03.03.06 13:50)
Просто нужно данные обрабатывать при каждом получении нового запроса(для быстрого реагирования, при содержании в логах определеной информации). А перерывать лог при каждом запросе на соединение не реально.
> [16] Ученик чародея © (03.03.06 13:52)
Уже думал об этом, только раньше с этим не сталкивался. Слышал о библиотеке WinPCap, но только слышал, не более ..
← →
DelphiN! © (2006-03-03 14:24) [18]
> [15] Piter © (03.03.06 13:50)
Да и в логи прокси серверов вводятся только запрашиваемые адреса, а содержимое HTML объектов не записывается ...
← →
KSergey © (2006-03-03 14:57) [19]Книжка:
Э.Джонс, Д.Оланд
Программирование в сетях Microsoft Windows.
Издательство "Питер"
Все от и до (практически)
← →
umbra © (2006-03-03 15:23) [20]DelphiN! ©
к тому же на любом прокси возможно распределять доступ к внешней сети в зависимости от имени пользователя, его IP-адреса, МАС-адреса, УРЛ, к которому идет запрос и т.д. Вы пытаетесь сдублировать работу прокси сервера.
← →
Lamer@fools.ua © (2006-03-03 16:01) [21]>>DelphiN! © (03.03.06 12:33) [2]
>TCP/IP
Это не протокол, а стек протоколов. Причём разного уровня: IP — сетевого, а TCP — транспортного.
← →
tesseract © (2006-03-04 13:16) [22]IP - служит только для однозначного определения адреса, TCP/UDP уже для передачи данных.
← →
Verg © (2006-03-04 13:21) [23]см. SOCK_RAW и SIO_RCVALL ( Winsock2 и т.д. ), winpcap http://www.winpcap.org/
← →
Piter © (2006-03-04 18:09) [24]tesseract © (04.03.06 13:16) [22]
IP - служит только для однозначного определения адреса, TCP/UDP уже для передачи данных
гы, надо же такой бред с таким умным видом говорить :)))
← →
tesseract © (2006-03-04 19:43) [25]
> гы, надо же такой бред с таким умным видом говорить :)))
Дарова. Есть другое мнение ?
← →
Piter © (2006-03-04 20:28) [26]tesseract © (04.03.06 19:43) [25]
Дарова. Есть другое мнение ?
Привет. Да, есть :)))
Как ты вообще такую глупость можешь говорить, если для передачи своих пакетов TCP все равно использует IP протокол?
Или ты очень криво выражаешься.
← →
DelphiN! © (2006-03-06 07:22) [27]А что скажите о книге
Йон Снейдер
Эффективное программирование TCP/IP
?
← →
tesseract © (2006-03-06 11:08) [28]
> Как ты вообще такую глупость можешь говорить, если для передачи
> своих пакетов TCP все равно использует IP протокол?
IP используется для адресации. Конечно можно написать свой транспортный протокол вроде TCP или UDP. А можно и по ARP данные передавать, но нужно ли это?
← →
umbra © (2006-03-06 11:28) [29]2 Piter © (04.03.06 20:28) [26]
наоборот, для передачи данных IP протокол использует TCP
← →
tesseract © (2006-03-06 14:21) [30]
> наоборот, для передачи данных IP протокол использует TCP
Неа питер правее. TCP/UPD пакеты дополняются IP-заголовком. Но для конктретной передачи данных, уже используются TCP/UDP.
← →
Piter © (2006-03-06 14:30) [31]tesseract © (06.03.06 11:08) [28]
IP используется для адресации
Используется, и что? Понятное дело, что в протоколе должно быть обозначено такое понятие как адрес отправителя и получателя, иначе как тогда пакеты будут ходить.
Но непосредственно передаются в ИНТЕРНЕТЕ именно IP-пакеты. Маршрутизаторы работают с IP-пакетами, а что там внутри завернуто - TCP, UDP или еще что - в большинстве случаев им все равно.
umbra © (06.03.06 11:28) [29]
наоборот, для передачи данных IP протокол использует TCP
← →
Piter © (2006-03-06 14:32) [32]umbra © (06.03.06 11:28) [29]
наоборот, для передачи данных IP протокол использует TCP
это вообще шедевр :)))
umbra, а вот мне интересно - с какой целью пишутся такие сообщения? Я очень сомневаюсь, что ты где-то прочитал то, что сказа. Значит, сам придумал.
А если придумал сам - почему с такой уверенностью преподносишь? Типа если прав - то прав, а если неправ - то собеседник в возмущении "Да как ты такое можешь говорить, ты не прав..." - и все тебе подробно расскажет, как оно на САМОМ деле?
← →
tesseract © (2006-03-06 14:41) [33]
> Но непосредственно передаются в ИНТЕРНЕТЕ именно IP-пакеты.
>
А в Интранете, что не IP ? :-)
← →
Piter © (2006-03-06 15:39) [34]tesseract © (06.03.06 14:41) [33]
А в Интранете, что не IP ? :-)
в интранете тоже могут быть применены интернет-технологии. И что?
← →
tesseract © (2006-03-06 16:40) [35]
> в интранете тоже могут быть применены интернет-технологии.
> И что?
Могут ;-)))))))) Интранет это когда ты между собой локалки через интренет объединяешь.
ЗЫ: Всё таки лучше приложиться глазами к "TCP/IP практическое руководство".
← →
Piter © (2006-03-06 17:55) [36]tesseract © (06.03.06 16:40) [35]
Интранет это когда ты между собой локалки через интренет объединяешь
я не понимаю, ты теперь решил применить клевую тактику. Подловить меня где-нибудь, и таким образом доказать, что ты не сказал чушь?
Логика хорошая.
Проблема в том, что доказывать мне тебе ничего не надо. Ты сказал, я поправил.
Если ты хочешь думать, что вся цедь IP протокола - это ввести понятие IP-адреса - то ты волен так думать, сколько угодно.
Также как и umbra волен думать, что IP при передаче использует TCP.
← →
umbra © (2006-03-06 19:27) [37]2 Piter © (06.03.06 17:55) [36]
> что IP при передаче использует TCP.
интересно, а что же он использует? IP нужен для определения концов соединения. Это с таким же успехом могут быть MAC адреса. Но для передачи данных используется TCP. И в стеке протоколов IP указан как более абстрактный, чем TCP.
P.S. Я всегда стараюсь высказать свое мнение, существующее на момент разговора.
← →
umbra © (2006-03-06 19:32) [38]2 Piter ©
прошу прощения, я был не совсем прав
← →
Piter © (2006-03-06 20:46) [39]umbra © (06.03.06 19:32) [38]
прошу прощения, я был не совсем прав
гы... Как тонко :)
Я бы сказал, что ты был "совсем не прав" :)
← →
tesseract © (2006-03-06 22:29) [40]
> И в стеке протоколов IP указан как более абстрактный, чем
> TCP.
Не только TCP является транспортным протоколом, но и UPD. Ftp например использует UDP. Я про это с начала так и говорил.
> я не понимаю, ты теперь решил применить клевую тактику.
> Подловить меня где-нибудь, и таким образом доказать, что
> ты не сказал чушь?
Я чуши не говорил. И ловить ни кого ни на чём не собирался. По стандарту IP нужен именно для того, чтобы уходили к кому надо. Ты когда письмо бабушке в школе писал на конверет адрес почтовый указывал? Только не говори, что ты там в адресе приветы бабушке писал, тебя маршрутизатор в виде почтальонши не пропустил бы. Так вот конверт-IP, а само письмо в конверте - TCP/UDP :-)
Страницы: 1 2 вся ветка
Текущий архив: 2006.04.02;
Скачать: CL | DM;
Память: 0.55 MB
Время: 0.073 c