Jump to content

bgp маршрутизация и проблема с доступом к некоторым сайтам


Recommended Posts

Posted

День добрый!

 

Нужна помощь в решении вопроса с маршрутизацией.

 

Ситуация:

Есть проблемы с доступом к некоторым сайтам. Например,

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 префикса меняет ситуацию и все начинает работать?

 

Очень хочется разобраться в этих вопросах, ощущение неясности в данной теме

немного сводит с ума :)

 

Спасибо.

Posted

Не МТС апстрим случайно?

нет

 

Анонсировать по /25 - это вообще плохо. Безотносительно к вашей ситуации.

я ни слова не сказал про /25. Мы анонсируем /24 и /23

Posted
Было предположение, что виновата ассиметрия, т.е. пока анонсируется /23 префикс в оба аплинка,

нет гарантий, что трафик на 80 порт сайта, отправляемый через первый аплинк с первой половины адресов

сети вернется в этот же аплинк, хотя наличие меньшего /24 префикса по идее должно это гарантировать.

 

Почему нет, кто-то перед этими хостингами режет ваши /24 и они видят только /23, и возможно действительно траф

приезжает на второй аплинк. Они у вас что, независимо по частям маршрутизируются?

 

Я бы для начала нашёл у хостеров LG и посмотрел в обратном направлении трассу.

Posted
Было предположение, что виновата ассиметрия, т.е. пока анонсируется /23 префикс в оба аплинка,

нет гарантий, что трафик на 80 порт сайта, отправляемый через первый аплинк с первой половины адресов

сети вернется в этот же аплинк, хотя наличие меньшего /24 префикса по идее должно это гарантировать.

 

Почему нет, кто-то перед этими хостингами режет ваши /24 и они видят только /23, и возможно действительно траф

приезжает на второй аплинк. Они у вас что, независимо по частям маршрутизируются?

 

Я бы для начала нашёл у хостеров LG и посмотрел в обратном направлении трассу.

 

Так чего же я не вижу трафик на втором аплинке? Я специально делал тесты. Ответы не приходят ни на один из аплинков. А с обычными сайтами работает как угодно; делаю запрос в первый аплинк с первой половины

адресов ответы придут в него, сделаю запрос в перый аплник со второй части адресов - придут на второй аплинк. Т.е. с ассиметрией все работает.

 

А каналы приходят на разные маршрутизаторы, которые между собой связаны.

 

Вопрос в том, что происходит такого с трафиком и где, что он вообще не доходит обратно? И почему при этом работает icmp до этих сайтов?

Posted
Вопрос в том, что происходит такого с трафиком и где

Если нарезать сети на /24 и отдавать дополнительно агрегат, нужно быть готовым к проблемам.

Кто-то может фильтрануть эти /24 а кто-то у него под боком, в результате, получит интересную комбинацию спецификов и агрегатов.

 

Сделайте трассу от хостеров в свою сторону для прояснения ситуации.

Posted (edited)

 

Через одного аплинка они пингуются, трассируются, но по 80 порту недоступны.

При этом они прекрасно работают через нашего второго аплинка.

tcpdump показывает, что уходят пакеты syn, а в ответ тишина. Ответы не приходят

ни на один из аплинков.

 

Маршрутизация здесь не при чем, используйте mss fix для понижения MSS|MTU.

Edited by vlad11
Posted
Вопрос в том, что происходит такого с трафиком и где

Если нарезать сети на /24 и отдавать дополнительно агрегат, нужно быть готовым к проблемам.

Кто-то может фильтрануть эти /24 а кто-то у него под боком, в результате, получит интересную комбинацию спецификов и агрегатов.

 

Сделайте трассу от хостеров в свою сторону для прояснения ситуации.

А на что смотреть в трассе?

 

 

Через одного аплинка они пингуются, трассируются, но по 80 порту недоступны.

При этом они прекрасно работают через нашего второго аплинка.

tcpdump показывает, что уходят пакеты syn, а в ответ тишина. Ответы не приходят

ни на один из аплинков.

 

Маршрутизация здесь не при чем, используйте mss fix для понижения MSS|MTU.

Хотелось бы верить, что все так просто. Но mss fix было первым, о чем подумал и попробовал. Не помогает, да и симптомы у него другие.

А вот разные анонсы проблему убирают.

Posted

А.... у вас же РАБОТАЕТ, просто tcp не лезет.

Но это не MTU, т.к. мелкий synack обязан возвращаться. Его же нет.

 

Так может это прикол от того самого вашего первого аплинка, который что-то мудрит с DPI к примеру?

 

Только 80ый порт? А так, там есть ssh.

telnet filonov.pro 22

Posted

А.... у вас же РАБОТАЕТ, просто tcp не лезет.

Но это не MTU, т.к. мелкий synack обязан возвращаться. Его же нет.

 

Так может это прикол от того самого вашего первого аплинка, который что-то мудрит с DPI к примеру?

 

С первым аплинком я сегодня целый день общался. Пока ничего.

Про dpi у них тоже мысли были. Но они ничего не фильтруют.

 

Только 80ый порт? А так, там есть ssh.

telnet filonov.pro 22

С ssh тоже самое.

 

Провел еще кучу тестов.

Выяснил следующее: неважно через какой канал будет уходит трафик (пробовал оба аплинка),

если это трафик с адресов второй сети, то он согласно анонсам, приходит через второго аплинка, и это работает всегда со всеми сайтами.

 

А вот если это трафик с адресов первой сети, и существует /23 анонс во второй аплинк, куда-бы не я отправлял трафик, ответов я не вижу.

Posted
А вот если это трафик с адресов первой сети, и существует /23 анонс во второй аплинк, куда-бы не я отправлял трафик, ответов я не вижу.

При этом ICMP ходит беспрепятственно?

Posted
А вот если это трафик с адресов первой сети, и существует /23 анонс во второй аплинк, куда-бы не я отправлял трафик, ответов я не вижу.

При этом ICMP ходит беспрепятственно?

да.

Posted

Вот задача ж.

Мне всё же кажется, что это какой-то DPI, или съёмник/инжектор TCP пакетов от него,

у которого крышу сносит из-за спецификов, которые он видит оттуда, откуда не ожидает.

 

Если отдать просто, одну /23, в оба апстрма вместе, а потом в каждый по очереди, то всё работает во всех этих вариантах?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...