На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Страницы: (2) 1 [2]  все  ( Перейти к последнему сообщению )  
> Странности соединения
    Цитата Fester @
    В твоем списке одинаковая картина для 10.10.1.46, 127.0.0.1 и 192.168.56.1

    Что интерфейсы разные - не заметил, что ли?
      Цитата Akina @
      Что интерфейсы разные - не заметил, что ли?

      Заметил. Дописал потом ;)

      Я так понимаю, что если разные интерфейсы, то надо вносить изменения в таблицу маршрутизации?
        Цитата Oleg2004 @
        скорее всего я бы посчитал такое поведение особенностью стека TCP/IP

        Допустим, мы (у Димы на компе - он показал таблицу рутинга) попробуем от имени 127.0.0.1 общаться с 10.10.1.46. Стек получает команду на операцию. В узел назначения он находит маршрут - через 10.10.1.46. Этот адрес шлюза не находится в одной подсети с 127.0.0.1. Пересылка пакета невозможна.
        Теперь наоборот - попробуем от имени 10.10.1.46 общаться с 127.0.0.1. Стек получает команду на операцию. Узел назначения он определяет как локальный, для которого запрещена маршрутизация (емнип по стандарту любой маршрутизатор обязан такой пакет дропнуть либо отбить), такой узел не может работать с внешними адресами. Пересылка пакета невозможна.
        Я бы скорее обратную картину посчитал расширением поведения стека, а наблюдаемое - нормой.

        Добавлено
        Цитата Fester @
        если разные интерфейсы, то надо вносить изменения в таблицу маршрутизации?

        Попытка вмешаться в таблицу маршрутизации для локалхоста или использование его в качестве интерфейса для внешнего адреса скорее всего погрузит стек в нирвану... если ОС вообще не откажется выполнять запрошенную операцию, что даже более вероятно.
          Цитата Akina @
          Пересылка пакета невозможна.

          Я такого объяснения не принимаю.
          А может и не понимаю :D
          Еще раз повторю:
          Цитата
          Но ведь SYN от клиента приходит к серверу и наоборот от сервера приходит RST.

          Итак, пересылка TCP-сегментов ОСУЩЕСТВЛЯЕТСЯ.
          Их - два. Туда - SYN и обратно - RST.
          Убедите меня в обратном.
          Если маршрут до сервера невозможно проложить, ошибка была бы из разряда Host Unreachable
          И никакого RST клиент не получил бы ваще.
          Сообщение отредактировано: Oleg2004 -
            Цитата Akina @
            насчёт "для проверки",- вызывает определённые сомнения.

            Кстати да, не только для этого :)
            Как раз для вариантов клиент-сервер на 1 ПК и используется, Fester
              Цитата Oleg2004 @
              Если маршрут до сервера невозможно проложить, ошибка была бы из разряда Host Unreachable

              Это ошибка, специфичная для ICMP. И я убеждён, что если бы пробовался не TCP-коннект, а тупо пинг, то было бы получено либо Unreachable, либо вообще General Failure.
                Да, наверно вы правы что это специфично, но не для ICMP, а для ошибки маршрутизации в реальной сети. ICMP просто протокол для передачи подобных сообщений.
                Наверно поэтому такой ошибки и не может быть в пределах одного хоста.
                Однако признайте тот факт, что сервер все таки получает SYN клиента.
                А значит маршрутизация внутри хоста тут совсем не причем...
                Как то вы все явно не реагируете на этот очевидный факт :wall:
                Сообщение отредактировано: Oleg2004 -
                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                0 пользователей:


                Рейтинг@Mail.ru
                [ Script execution time: 0,0323 ]   [ 15 queries used ]   [ Generated: 28.03.24, 09:11 GMT ]