kisa Posted October 11, 2013 Posted October 11, 2013 День добрый! Нужна помощь в решении вопроса с маршрутизацией. Ситуация: Есть проблемы с доступом к некоторым сайтам. Например, filonov.pro motorama.it cardosystems.com feathersui.com apps.weareteamo.com jqueryui.com, jquery.com requirejs.org Через одного аплинка они пингуются, трассируются, но по 80 порту недоступны. При этом они прекрасно работают через нашего второго аплинка. tcpdump показывает, что уходят пакеты syn, а в ответ тишина. Ответы не приходят ни на один из аплинков. Маршрутизация устроена следующим образом: наш блок блок PI адресов /23 разбит на два блока /24. Первому аплинку мы анонсируем всю сеть 64.0/23 и первую половину 64.0/24, второму аплинку мы анонсируем вторую половину сети 65.0/24 и снова всю сеть 64.0/23. В первую очередь такая схема используется, чтобы контролировать распределение входящего трафика, т.к. полностью отсутствует ассиметрия, в какой аплинк мы отправили трафик, туда он и должен вернутся. Т.е. контролируя распределение исходящего трафика, мы контролируем распределение входящего. Вторая задача надежность, выход из строя любого аплинка не приводит к простою, все идет через оставшегося. Для всех 3 префиксов роут объекты созданы. На данный момент смог выяснить только следующее. Если не анонсировать /23 второму аплинку, через которого все работает, проблема уходит, т.е. на первом аплинке вышеперечисленные сайты начинаю открываться номально. Было предположение, что виновата ассиметрия, т.е. пока анонсируется /23 префикс в оба аплинка, нет гарантий, что трафик на 80 порт сайта, отправляемый через первый аплинк с первой половины адресов сети вернется в этот же аплинк, хотя наличие меньшего /24 префикса по идее должно это гарантировать. Для этого случая провел несколько дополнительных тестов. Не удаляя /23 префикс, отправлял запрос на 80 порт на www.ru с адресов 65.0/24 НО через первый аплинк, т.е. специально устраивая ассиметрию, и ответы возвращались как и положено через другой аплинк, т.е. все работало отлично. Почему же это работает с большинством сайтов, но не с вышеперечисленными? Почему удаление /23 префикса меняет ситуацию и все начинает работать? Очень хочется разобраться в этих вопросах, ощущение неясности в данной теме немного сводит с ума :) Спасибо. Вставить ник Quote
ipaddr.ru Posted October 11, 2013 Posted October 11, 2013 Анонсировать по /25 - это вообще плохо. Безотносительно к вашей ситуации. Вставить ник Quote
kisa Posted October 11, 2013 Author Posted October 11, 2013 Не МТС апстрим случайно? нет Анонсировать по /25 - это вообще плохо. Безотносительно к вашей ситуации. я ни слова не сказал про /25. Мы анонсируем /24 и /23 Вставить ник Quote
disappointed Posted October 11, 2013 Posted October 11, 2013 Было предположение, что виновата ассиметрия, т.е. пока анонсируется /23 префикс в оба аплинка,нет гарантий, что трафик на 80 порт сайта, отправляемый через первый аплинк с первой половины адресов сети вернется в этот же аплинк, хотя наличие меньшего /24 префикса по идее должно это гарантировать. Почему нет, кто-то перед этими хостингами режет ваши /24 и они видят только /23, и возможно действительно траф приезжает на второй аплинк. Они у вас что, независимо по частям маршрутизируются? Я бы для начала нашёл у хостеров LG и посмотрел в обратном направлении трассу. Вставить ник Quote
kisa Posted October 13, 2013 Author Posted October 13, 2013 Было предположение, что виновата ассиметрия, т.е. пока анонсируется /23 префикс в оба аплинка,нет гарантий, что трафик на 80 порт сайта, отправляемый через первый аплинк с первой половины адресов сети вернется в этот же аплинк, хотя наличие меньшего /24 префикса по идее должно это гарантировать. Почему нет, кто-то перед этими хостингами режет ваши /24 и они видят только /23, и возможно действительно траф приезжает на второй аплинк. Они у вас что, независимо по частям маршрутизируются? Я бы для начала нашёл у хостеров LG и посмотрел в обратном направлении трассу. Так чего же я не вижу трафик на втором аплинке? Я специально делал тесты. Ответы не приходят ни на один из аплинков. А с обычными сайтами работает как угодно; делаю запрос в первый аплинк с первой половины адресов ответы придут в него, сделаю запрос в перый аплник со второй части адресов - придут на второй аплинк. Т.е. с ассиметрией все работает. А каналы приходят на разные маршрутизаторы, которые между собой связаны. Вопрос в том, что происходит такого с трафиком и где, что он вообще не доходит обратно? И почему при этом работает icmp до этих сайтов? Вставить ник Quote
disappointed Posted October 13, 2013 Posted October 13, 2013 Вопрос в том, что происходит такого с трафиком и где Если нарезать сети на /24 и отдавать дополнительно агрегат, нужно быть готовым к проблемам. Кто-то может фильтрануть эти /24 а кто-то у него под боком, в результате, получит интересную комбинацию спецификов и агрегатов. Сделайте трассу от хостеров в свою сторону для прояснения ситуации. Вставить ник Quote
vlad11 Posted October 13, 2013 Posted October 13, 2013 (edited) Через одного аплинка они пингуются, трассируются, но по 80 порту недоступны. При этом они прекрасно работают через нашего второго аплинка. tcpdump показывает, что уходят пакеты syn, а в ответ тишина. Ответы не приходят ни на один из аплинков. Маршрутизация здесь не при чем, используйте mss fix для понижения MSS|MTU. Edited October 13, 2013 by vlad11 Вставить ник Quote
kisa Posted October 13, 2013 Author Posted October 13, 2013 Вопрос в том, что происходит такого с трафиком и где Если нарезать сети на /24 и отдавать дополнительно агрегат, нужно быть готовым к проблемам. Кто-то может фильтрануть эти /24 а кто-то у него под боком, в результате, получит интересную комбинацию спецификов и агрегатов. Сделайте трассу от хостеров в свою сторону для прояснения ситуации. А на что смотреть в трассе? Через одного аплинка они пингуются, трассируются, но по 80 порту недоступны. При этом они прекрасно работают через нашего второго аплинка. tcpdump показывает, что уходят пакеты syn, а в ответ тишина. Ответы не приходят ни на один из аплинков. Маршрутизация здесь не при чем, используйте mss fix для понижения MSS|MTU. Хотелось бы верить, что все так просто. Но mss fix было первым, о чем подумал и попробовал. Не помогает, да и симптомы у него другие. А вот разные анонсы проблему убирают. Вставить ник Quote
disappointed Posted October 14, 2013 Posted October 14, 2013 А.... у вас же РАБОТАЕТ, просто tcp не лезет. Но это не MTU, т.к. мелкий synack обязан возвращаться. Его же нет. Так может это прикол от того самого вашего первого аплинка, который что-то мудрит с DPI к примеру? Только 80ый порт? А так, там есть ssh. telnet filonov.pro 22 Вставить ник Quote
kisa Posted October 14, 2013 Author Posted October 14, 2013 А.... у вас же РАБОТАЕТ, просто tcp не лезет. Но это не MTU, т.к. мелкий synack обязан возвращаться. Его же нет. Так может это прикол от того самого вашего первого аплинка, который что-то мудрит с DPI к примеру? С первым аплинком я сегодня целый день общался. Пока ничего. Про dpi у них тоже мысли были. Но они ничего не фильтруют. Только 80ый порт? А так, там есть ssh. telnet filonov.pro 22 С ssh тоже самое. Провел еще кучу тестов. Выяснил следующее: неважно через какой канал будет уходит трафик (пробовал оба аплинка), если это трафик с адресов второй сети, то он согласно анонсам, приходит через второго аплинка, и это работает всегда со всеми сайтами. А вот если это трафик с адресов первой сети, и существует /23 анонс во второй аплинк, куда-бы не я отправлял трафик, ответов я не вижу. Вставить ник Quote
disappointed Posted October 14, 2013 Posted October 14, 2013 А вот если это трафик с адресов первой сети, и существует /23 анонс во второй аплинк, куда-бы не я отправлял трафик, ответов я не вижу. При этом ICMP ходит беспрепятственно? Вставить ник Quote
kisa Posted October 14, 2013 Author Posted October 14, 2013 А вот если это трафик с адресов первой сети, и существует /23 анонс во второй аплинк, куда-бы не я отправлял трафик, ответов я не вижу. При этом ICMP ходит беспрепятственно? да. Вставить ник Quote
disappointed Posted October 14, 2013 Posted October 14, 2013 Вот задача ж. Мне всё же кажется, что это какой-то DPI, или съёмник/инжектор TCP пакетов от него, у которого крышу сносит из-за спецификов, которые он видит оттуда, откуда не ожидает. Если отдать просто, одну /23, в оба апстрма вместе, а потом в каждый по очереди, то всё работает во всех этих вариантах? Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.