Anton
Это просто реализации кипалайва
я просто демонстрировал как в кучу можно смешать людей, коней, мух и котлет
Сергей
Для получения служебной информации как раз и придумали протокол передачи служебной информации. Но в интернете предпочитают молчать и шафроваться
iҚØN🐾🐾
Ага ты еще скажи что rfc это стандарт
И нужно следовать MUST и SHOULD !!!
Anton
Ага ты еще скажи что rfc это стандарт
это черновик и часто ими и руководствуются
И нужно следовать MUST и SHOULD !!!
Так вон в википедии написано же что ICMP является неотъемлемой частью TCP. Я тут аж прихуел
Да? Ну и почему оно тогда работает без него?
Anton
в широком смысле как тцп/ип -- наш интернет
iҚØN🐾🐾
Да? Ну и почему оно тогда работает без него?
Может работать, а как ты собирашься получать состояние соединения?
Сергей
Да? Ну и почему оно тогда работает без него?
Это мутанты у них свои стандарты
iҚØN🐾🐾
Это в udp ты можешь сделать sendto() и наплевать на то, дошло или нет
Сергей
И? А для чего мне в tcp icmp?
Для обмена служебной информацией =)
iҚØN🐾🐾
Чтобы получать фидбек соединения
Для обмена служебной информацией =)
Зачем мне ей обмениваться?
Anton
какой фидбек?
Чтобы получать фидбек соединения
Если получил ACK - все ок. Если не получил втечении таймаута - его нет
Сергей
Зачем мне ей обмениваться?
Что бы на основании нее строить логику работы
Anton
там же тцп сам всё умеет
какой фидбек?
Ну типа жив ли хост, прослушивает ли такой порт
Что бы на основании нее строить логику работы
Прекрасно без него все работает
iҚØN🐾🐾
Правильно, если был бы icmp и порт закрыт - получил бы destination port unreachable и не было бы таймаута
iҚØN🐾🐾
Ну если возможно
Правильно, если был бы icmp и порт закрыт - получил бы destination port unreachable и не было бы таймаута
Ну понятно. И ? Че мне это дает кроме как лишней паузы в пару секунд?
SSR
А может кто-нибудь посоветовать книгу, чтобы с вами потом на одном языке говорить?
iҚØN🐾🐾
А так полинтернета наверное бы просто тупило)
iҚØN🐾🐾
Ну понятно. И ? Че мне это дает кроме как лишней паузы в пару секунд?
Пара секунд на тупеж может сыграть злую шутку
А так полинтернета наверное бы просто тупило)
Ну сервера чаще отвечают, пограничные маршрутизаторы чаще отвечают. А клиент то с хуяли обязан отвечать на icmp
iҚØN🐾🐾
Не, погоди. Отвечать на icmp - это чистый icmp
iҚØN🐾🐾
А мы говорим в контексте tcp
Понятно что скажем без icmp destination origin unreachable ты бы висел долго. Но опять же как он является неотъемлемым
iҚØN🐾🐾
Общепринятые условия
А бля! Вспомнил в какой ситуации без icmp можно обосраться!
Это код 4 "fragmentation required"
Сергей
Ну сервера чаще отвечают, пограничные маршрутизаторы чаще отвечают. А клиент то с хуяли обязан отвечать на icmp
Потому что он реализует протокол IP. клиент сервер это уже другой протокол TCP UDP....
iҚØN🐾🐾
Это код 4 "fragmentation required"
Да там куча других приколов, когда он нужен)
Evgen
А может кто-нибудь посоветовать книгу, чтобы с вами потом на одном языке говорить?
Tcp/IP для погромистов... Чего-то в таком духе. Или тысипи протокол для чайников в линуксе
iҚØN🐾🐾
Ну или флаги DF, когда фрагментированные
iҚØN🐾🐾
Я с этим тоже долго имелся в одном месте)
Да там куча других приколов, когда он нужен)
Ладно мы вышли уже за рамки контекста вопроса. Давайте вернеся к базовому вопросу когда человек собрался определять мертвую tcp сессию с помощью icmp. Как он собирается это делать я так и не понял
iҚØN🐾🐾
Честно говоря, я тоже не понимаю, как это поможет.
Николай
Чет я не понял. Срач-то про что. Я когда -то давно ажно под виндой поднимал клиент-сервер с нуля для обмена данными. Протокол - TCP. Механизм детектирования у меня был свой . ICMP у меня не было.
iҚØN🐾🐾
Определить порт открыт или нет - можно. Только и всего.
Определить порт открыт или нет - можно. Только и всего.
Это можно сделать и без icmp. Тебе tcpm RST пакет пришлет просто
А если там машина молчит как рыба, то icmp она тебе тоже не отправит
icmp может быть еще хорош для отправки удп пакетов, тут icmp может помочь узнать что udp порт недоступен. Но опять же чаще оно закрыто чем открыто
iҚØN🐾🐾
Это можно сделать и без icmp. Тебе tcpm RST пакет пришлет просто
При условии, что та сторона не будет обрезать icmp (как ты говоришь, "зачем это нужно"?)
При условии, что та сторона не будет обрезать icmp (как ты говоришь, "зачем это нужно"?)
Так я и сказал. Если она и ресет не ответит, то и icmp не пришлет
Если молчать то по полной)
iҚØN🐾🐾
Ага
А я кстати прозевал тот самый момент в каком году это все началось когда файрволы стали по дефолту молчунами?
iҚØN🐾🐾
Поди когда Майкрософт задедосили icmp ;)
Поди когда Майкрософт задедосили icmp ;)
Ой а помнишь 95-ой был icmp нюка?
iҚØN🐾🐾
Да помню конечно, там в синий экран падало)
Там драйвер дох от специально сформированного пакета или тупо большого не помню уже
iҚØN🐾🐾
Да и 98я и даже 2000я падала
Сергей
на 95й вообще небыло tcp/ip и появилось только с 5м сервис паком
Да и 98я и даже 2000я падала
Двух тонник вряд-ли. Он на нт ядре же. А вот 95/98/линолиум вполне
Сергей
на 95й был только x- подключение
Он был еще и до винды95 в lan manager
В 95-ом надо было просто найти в настройки и добавить его вручную
Сергей
для этого вроде нужен был сторонний драйвер от производителя железа
Причем тут tcp стек и железо?
У тебя че-то все перемешалось сегодня
icmp с вебом. tcp стек с драйвером от вендора
Драйвер нужен для NDIS стека. Или как оно раньше в 95-ом называлось. А вот айпи стек уже работает поверх него.
Сергей
_ Ну и как итог по вопросу - "как узнать о разрыве подключения через интернет?" Никак если маршрутизаторы молчуны. Придется принимать решение на основе косвенных данных (долгое молчание). Если работает icmp то информация а потере подключения должно приходить автоматически.
Anton
Ты бот что ли?
Поделись лучше контактом поставщика. Я тоже такую штуку хочу
Сергей
Это талант данный природой
Сергей