• Как проводится мониторинг Базовых Станций сети 4G LTE если нет контроллера?

    @yaror
    10 лет в мобильном телекоме
    По SNMP происходит )
    У каждой eNodeB есть свой O&M-адрес.

    А ломится туда, сводит всё в одну кучу и складывает в базу данных система управления от производителя:
    - у Эриксон - OSS
    - у Huawei - E2000/N2000
    Ответ написан
    Комментировать
  • Как средствами 1 Juniper EX2200 сделать маршрутизацию VLAN от провайдера?

    @yaror
    10 лет в мобильном телекоме
    Эх, как схемы не хватает...
    Надо прокинуть несколько VLAN как-бы-транком через L2-сегмент стороннего провайдера?

    Может быть, Q-in-Q подойдёт? Двойное теггирование?

    Как настраивается, посмотреть можно здесь:
    https://www.juniper.net/documentation/en_US/junos/...
    Ответ написан
  • Смогу ли я работать с juniper после Cisco?

    @yaror
    10 лет в мобильном телекоме
    Да.
    Логика работы та же, чего-то принципиально нового тут не придумать.
    Протоколы те же.
    Плюс, внезапно захочется придушить того, кто придумал синтаксис цисковых настроек.
    Ответ написан
    2 комментария
  • Можно ли создавать черви на php 7?

    @yaror
    10 лет в мобильном телекоме
    img-fotki.yandex.ru/get/6700/35340376.f9/0_facfe_4...

    Извините, не удержался )
    Ответ написан
    Комментировать
  • Какое устройство с поддержкой BGP поставить на границу сети?

    @yaror
    10 лет в мобильном телекоме
    Не, ну это точно не сюда.
    Надо сесть и составить ТЗ, в котором будут:
    1. Примерная схема сети (пусть даже на уровне пять квадратов: два провайдера, сам маршрутизатор, руководство, отдел продаж)
    2. Примерная нагрузка в Мбит/с и тысячах пакетов в секунду (посмотрите, сколько ваша сеть создаёт сейчас и возьмите запас раза в 4, а то и в 10)
    3. Если есть возможность, посмотрите на существующем маршрутизаторе количество количество tcp-соединений, и тоже возьмите запас
    4. Количество BGP-префиксов (пообщайтесь с провайдерами, надо ли Вам BGP Full View?)
    5. Со всем этим приходите к двум-трём местным официальным продавцам/интеграторам за спецификацией и коммерческим предложением. Через них же лучше и брать, ибо цена относительно официально объявленной производителем GPL-цены может упасть в разы.

    Не забудьте потребовать, чтобы в спецификации была указана максимально достижимая аппаратная производительность и ёмкость, она обычно описывается для трёх разных случаев: small packets, large packets и IMIX (распределение, примерно соответствующее усреднёному абонентскому трафику).

    Кстати, я бы к Juniper тоже посоветовал присмотреться.
    Ответ написан
    Комментировать
  • Как защититься от опасного роутера?

    @yaror
    10 лет в мобильном телекоме
    Windows голым задом в интернет?
    Он же и ip-маршрутизатор, а брандмауэр (он межсетевой экран, он же файрволл), он же security gateway?
    Мсье знает толк...

    Тогда так:
    1. Какие меры безопасности можно предпринять чтобы не допустить кражи конфиденциальной информации?
    1.1. Завести отдельное устройство для организации стыка с Интернетом. Пусть даже просто сервер с юниксом (OpenWRT/pfSense/m0n0wall), но отдельное.
    1.2. Разделить сеть на непересекающиеся функциональные сегменты:
    - управление оборудованием
    - лица, зашедшие через удалённый доступ
    - основные отделы организации
    - руководство
    - общие ресурсы
    1.3. Уточнить у руководства, кто, откуда и куда должен попадать. Любой иной доступ должен быть закрыт.

    2. Можно ли настроить роутер так, чтобы красть информацию/шпионить за всеми, кто подключается к этому роутеру?
    Любое устройство, через которое проходит трафик, технически способно этот трафик проанализировать, записать - да что угодно с ним сделать: и украсть, и нашпионить.
    Ответ написан
    Комментировать
  • Как провайдер знает, когда я использую torrent?

    @yaror
    10 лет в мобильном телекоме
    1. Детекция торрентов
    Для этого операторы связи, как правило, используют одно из решений DPI (Deep Packet Inspection) - железку, которая способна залезть в уровень L7 модели OSI и понять, что же это такое.

    Нешифрованные протоколы (HTTP, FTP), и DPI видит и разбирает без проблем.
    В случае же торрентов и некоторых стриминг-сервисов приходится использовать эвристику: косвенные признаки, худо-бедно свойственные детектируемому сервису.
    Кроме обычных протокола (TCP/UDP), ip-адресов и номеров портов в ход идут:
    - типичные последовательности байтов
    - численные и временные характеристики трафика (в духе "сначала три пакета по 70 байт, потом пауза 100-350 мс, потом передача со скоростью 100-200 кбит/с")

    2. HTTPS
    В уровне TLS, начиная с версии 1.1, в последнее время используемого в HTTPS для шифрования, существует расширение SNI (Server Name Indication), в полях которого в открытом виде передаётся доменное имя сайта.
    Собственно, там имя сайта оператор подсмотреть и может, хотя полного URL и содержимого страниц, не имея закрытого ключа сайта, он так и не узнает.
    Ответ написан
    Комментировать
  • Как платные контент-провайдеры получают номер телефона на своих сайтах через 3g,4g?

    @yaror
    10 лет в мобильном телекоме
    Из технических проблем здесь только "как непойми кому сказать, какой телефонный номер у того, кто зашёл на эту страничку".

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

    После этого, начинает работать операторский DPI.
    Как правило, в DPI реализован набор Application Level Gateway (ALG) для наиболее популярных протоколов: HTTP, FTP, DNS. Если по-русски, то ALG - это прозрачный прокси.
    Какой телефонный номер у абонента, DPI знает: если DPI встроен в GGSP/PGW (это типа BRAS, но с мобильной спецификой), то знает изначально, а если это отдельная коробка, то получает связку ip-адрес -> телефонный номер, например, по тому же RADIUS. Или же, если DPI включен в разрыв между SGSN и GGSN/SGW и PGW (бывает и такое), подглядывает абонентский номер из полей GTP-C.

    В общем, DPI абонентский телефонный номер каким-то образом узнал.
    А дальше он его попросту добавляет в виде отдельного HTTP-заголовка в HTTP-запросы к целевой страничке.
    Да, в качестве защиты от Злобного хакера где-то посередине, иногда телефонный номер шифруется, дабы никто, кроме владельца странички, разобрать его не мог.

    Закрыть такую возможность можно одним способом: сделать абонентский трафик для оператора связи нечитаемым.
    Это:
    - отказ от HTTP и переход на HTTPS, либо
    - работа исключительно через VPN
    Ответ написан
    3 комментария
  • Как писать удаленно в БД? TCP/FTP?

    @yaror
    10 лет в мобильном телекоме
    Я бы:
    1. Парсил прямо на машине, принимающей поток с COM-порта
    2. Сливал в БД прямо с этой же машины, через SQL: "insert into туда-то values такие-то". В случае вылезшего exception (нет связности с БД, БД упала и т.д.), распарсенные значения можно было бы залоггировать локально
    Ответ написан
    Комментировать
  • Как отправлять сообщения по MAP-протоколу?

    @yaror
    10 лет в мобильном телекоме
    Вот он, этот злобный человек, гадящий в SS7 )

    Нет, а если серьёзно...
    Ну, во-первых, я бы посмотрел в сторону Any-Time-Interrogation
    При помощи Update Location абонента вообще выбьешь из сети.
    Нет, если стоит задача сделать Man-In-The-Middle для перехвата звонков и сообщений, то направление верное, но тогда придётся писать свою реализацию MSC, а, судя по вопросу, здесь есть проблемы )

    Во-вторых...
    jSS7 - это ведь библиотека. Нет, там есть, конечно, примеры использования - но они только примеры.
    Надо писать нормальное приложение на джаве с внешним API - хоть REST, хоть SOAP, что удобнее.
    Готового из коробки бесплатного решения конкретной задачи в природе, понятно, нет.

    Кстати, там ещё предстоит выбивать из специалиста по MSS/STP параметры подключения: ip-адреса, PC, GT - то ещё развлечение )
    Ответ написан
    1 комментарий
  • Посредством чего блокирует сайт мой провайдер?

    @yaror
    10 лет в мобильном телекоме
    Поскольку резолвинг DNS происходит корректно, промышленно готовых вариантов остаётся три:

    1. Провайдерский DPI: наверняка он уже есть у всех провайдеров в том или ином виде.
    Логически DPI обычно включается в разрыв линка между ядром и NAT.
    Физически зачастую тоже.
    Кроме обычных шейпинга и подсчёта трафика per-subscriber, там реализован набор ALG (Application Layer Gateway), которые представляют из себя, фактически, прозрачные прокси для типичных протоколов: HTTP, FTP, DNS и т.д.
    Как правило, ALG умеют не только реагировать на определённые значения полей, но и вмешиваться в процесс передачи данных.
    Количество ALG зависит от навороченности DPI; в Procera даже World of Warcraft есть )
    Ну а уж подмена HTTP-страницы - пожалуй, самая используемая функция HTTP ALG.

    2. Наколенное решение раз:
    Описано у none7
    Завести у себя в сети сервер с ip-адресами, совпадающими с Ip-адресами Вконтакта (ну, или NAT'ить все запросы к нему на сервер-заглушку, что примерно то же самое) - вполне себе решение, если надо заблокировать сервис целиком, а не отдельные страницы на нём.
    Но если вдруг ваши политики наберутся дурости у наших, и список блокируемых ресурсов начнёт расти, провайдеры взвоют этот вариант поддерживать )

    3. Наколенное решение два:
    На самом деле, в России есть свой список блокируемых ресурсов (т.н. список Роскомнадзора) с сотнями тысяч URL.

    Выяснилось, что таким количеством записей множество провайдерских DPI попросту давится, поэтому эта задача зачастую решается следующим образом: заводятся отдельные серверы, подключаемые непосредственно к провайдерским BR (Border router'ам).

    Задачи серверов:
    - заглотить список блокируемых ресурсов, выдрать оттуда имена доменов и разрезолвить их в ip-адреса; адресов получается несколько десятков тысяч
    - полученные адреса через OSPF или BGP сливаются в BR. BR - он большой, спокойно держит BGP Full View, поэтому 10-20-50k лишних префиксов для него - капля в море

    Получается, что весь трафик в сторону ip-адресов, на которых находится хотя бы одна заблокированная страница, теперь льётся на эти серверы.
    Казалось бы, фиг какой сервер всё это переварит, но их можно плодить десятками: срабатывает ECMP/Load Balancing на уровне маршрутизации, и трафик размазывается между серверами примерно поровну.

    На самих серверах Linux, а в Linux - squid в transparent mode и iptables )
    Соответственно:
    - tcp port 80 силами iptables отправляется в сквид, где каждый запрошенный абонентом URL ищется в списке блокированных ресурсов
    - в tcp port 443 проверяется SNI чтобы понять, пропускать трафик дальше, или резать к такой-то матери
    - весь остальной трафик (и пинги, угу) пропускается насквозь без изменения
    Ответ написан
    1 комментарий
  • Juniper SRX 100 не видит порты?

    @yaror
    10 лет в мобильном телекоме
    Круто! А в конфиге всё-всё нормально?
    Предлагаю подцепиться COM-портом и посмотреть:
    > show system commit - вдруг кто-то таки что-то менял? Можно будет посмотреть, что и когда.
    > show interface terse - состояние интерфейсов
    > show configuration interface - настройки интерфейсов
    > show log messages - вдруг что-то интересное есть
    Ответ написан
    Комментировать
  • Как получить данные из бд?

    @yaror
    10 лет в мобильном телекоме
    Может быть, вывести вот это:

    o.datetime_order >= $date_start
    AND o.datetime_order <= $date_end

    из-под join'а в where?

    Например, так:

    SELECT w.name_worker,
    w.surname_worker,
    w.midname_worker,
    w.id_worker,
    SUM(number) numb
    FROM workers w
    LEFT JOIN exhours e ON (w.id_worker = e.id_worker)
    LEFT JOIN orders o ON (e.id_order = o.id_order)
    where
    o.datetime_order >= $date_start
    AND o.datetime_order <= $date_end
    GROUP BY w.id_worker

    Потому что сейчас получается так:
    1. Будут выведены все записи таблицы Workers
    2. К ним будут прицеплены _все_ записи таблицы exhours по полю id_worker
    3. Также будут прицеплены записи таблицы orders, _для которых поле datetime_order попадает в указаную вилку_
    Однако, поле number-то хранится в таблице exhours!

    Как вариант, можно было бы сделать так:

    SELECT w.name_worker,
    w.surname_worker,
    w.midname_worker,
    w.id_worker,
    SUM(h.number) numb
    FROM
    workers w
    left join
    (select e.id_worker, e.number from
    exhours e inner join orders o on e.id_order = o.id_order
    where o.datetime_order >= $date_start
    AND o.datetime_order <= $date_end) h
    on w.id_worker = h.id_worker
    GROUP BY w.id_worker
    Ответ написан
    1 комментарий
  • Как правильно агрегировать коммутаторы?

    @yaror
    10 лет в мобильном телекоме
    Предлагаю посмотреть:
    1. Как настроена балансировка?
    2. Как замерялась скорость?

    Эти вопросы связаны, на самом деле: для того, чтобы понять, в какой порт LAG засунуть Ethernet-кадр, коммутатор вычисляет хэш-функцию от выбранных при настройке полей кадра и берёт остаток от деления хэша на количество линков в LAG.

    По умолчанию, как правило, хэш считается от Source MAC + Destination MAC.
    Также, обычно можно руками включить использование для вычисления хэша:
    - Source ip/Destination ip
    - Source port/Destination port

    На практике же это означает, что:
    1. Чем больше _разных_ MAC/ip-адресов проходит через LAG, там равномернее распределяется трафик
    2. А вот установленное TCP-соединение не "размажется" по линкам и при, например, загрузке файла по FTP скорость всё равно упрётся в скорость одного-единственного линка, будь их там хоть все восемь
    Ответ написан
    Комментировать
  • Чем отличается CIDR от автономной системы?

    @yaror
    10 лет в мобильном телекоме
    CIDR - это один из способов записи диапазонов ip-адресов, не более того.
    Просто способ написать, что "ip-адреса компьютеров бухгалтерии лежат в диапазоне 172.16.0.0-172.16.255.255": 172.16.0.0/16

    Если уж подходить к понятию автономной системы абстрактно, то автономная система - это ip-транспортная инфраструктура некоторого состоящего из множества отделов и, соответственно, ip-подсетей предприятия целиком либо, как минимум, изолированного филиала, поскольку:
    - там свой отдельный план выделения ip-адресов
    - там свой отдельный администратор сети

    Для того, чтобы различать принадлежность ip-адресов на уровне организаций, в некоторых протоколах маршрутизации, например, BGP, принято каждому предприятию выделять свой идентификатор - т.н. ASN, Autonomous System Number.

    Надо понимать, что ASN - это чисто BGP-шный термин.
    Если организация подключена к Интернет через единственный стык единственного провайдера, то необходимости в BGP у неё нет.
    Соответственно, получается, что автономная система формально у неё всё равно есть (как совокупность используемых в организации ip-сетей и механизмов управления ими), просто номер ASN ей не присвоен.

    В реальной жизни, как правило, понятие автономной системы фигурирует не в описании сетевой инфраструктуры организации, а в правилах обмена трафиком между двумя различными организациями:
    - параметры физического и ip-стыков двух автономных систем
    - какие принадлежащие каждой АС ip-подсети должны быть доступны партнёру по стыку
    Ответ написан
    3 комментария
  • Чем SIM-карта с поддержкой 4G LTE отличается от обычной?

    @yaror
    10 лет в мобильном телекоме
    Алгоритмы шифрования сильнее.
    Ключи шифрования длиннее.
    Это минимально необходимый набор.

    Это если без VoLTE )
    Ответ написан
    Комментировать
  • Самый быстрый веб-сервер php для windows?

    @yaror
    10 лет в мобильном телекоме
    А вот интересно, в порядке бреда.

    Все помнят, что в Windows 10 Microsoft засунул Ubuntu Linux, и его можно установить штатными средствами прямо через панель управления?
    Как поведут себя веб-приложения во встроенной в Windows убунте?
    А разработку, наверное, можно продолжать в привычных и удобных IDE под Windows.
    Ответ написан
    Комментировать
  • Что случится, если при TCP-соединении у отправителей совпадут порт и IP?

    @yaror
    10 лет в мобильном телекоме
    Если совпадут все пять значений (src ip, src port, dst ip, dst port, protocol), то пакеты, относящиеся к двум разным соединениям, перепутаются, перемешаются, и сам чёрт ногу сломит в том, что получится.

    Но!
    Инициатор соединения (либо NAT) Src port выбирает не просто случайный, а так, чтобы пятёрка полей (src ip, src port, dst ip, dst port, protocol) в таблице соединений не повторилась.
    Вот и всё!

    Действительно, как инициатор соединения, так и NAT могут переиспользовать пару (src ip, src port) для других соединений. В NAT это называется Endpoint Independent Mapping и служит для экономии адресного пула. Вдобавок, и ряд сервисов (та же ICQ) ведёт себя странно, видя несколько соединений с разными (src ip, src port), но под одной учётной записью.

    Но, поскольку как минимум одно значение из тройки (dst ip, dst port, protocol) уникальное, относящиеся к разным соединениям пакеты не перемешиваются.
    Ответ написан
    1 комментарий
  • TCP. Можно ли ужимать ReceiveTimeout со стороны сервера до миллисекунд?

    @yaror
    10 лет в мобильном телекоме
    Согласен с res2001 .
    Данные, для которых критична оперативность доставки, следует отправлять по UDP.
    Или, если настолько критично поддержание сессии и нет желания реализовывать сессии самостоятельно, то по SCTP.

    Выкручивание же таймаутов TCP до околонулевых значений приведёт, наоборот, к тому, что при малейшем возмущении на пути прохождения трафика начнутся постоянные ретрансмиты, и передача данных встанет вообще.
    Не предназначен TCP для оперативной, в реальном времени, передачи данных! Его задача - гарантированно доставить данные хоть когда-нибудь.
    Ответ написан
    Комментировать
  • Как можно собирать трафик (traffic sniffer) с удаленных linux серверов?

    @yaror
    10 лет в мобильном телекоме
    Насчёт rpcapd...
    Точно ли при использовании rpcapd дамп не снять с нескольких источников?

    В man tshark есть такое:
    -i | -
    Set the name of the network interface or pipe to use for live packet capture.
    ...
    This option can occur multiple times. When capturing from multiple interfaces, the capture file will be saved in pcap-ng format.


    Что, если попробовать сделать так?
    tshark -i rpcap://host1/eth0 -i rpcap://host2/eth0 -f "какой-то фильтр"
    Ответ написан