четверг, 16 апреля 2026 г.

Памятка по RFC протокола Диаметра

 


Памятка по RFC проткола Диаметра

DIAMETER — сеансовый протокол, созданный, отчасти, для преодоления некоторых ограничений протокола RADIUS. 
Обеспечивает взаимодействие между клиентами в целях аутентификации, авторизации и учёта 
различных сервисов (AAA, англ. authentication, authorization, accounting). 
Является основным протоколом архитектуры IMS.

    Diameter Base Protocol
    RFC 3589 - Diameter Command Codes for Third Generation Partnership Project (3GPP) Release 5
    RFC 4004 - Diameter Mobile IPv4 Application
    RFC 4005 - Diameter Network Access Server Application
    RFC 4006 - Diameter Credit-control Application
    RFC 4072 - Diameter Extensible Authentication Protocol (EAP) Application
    
Архитектура. 
Diameter основан на peer-to-peer (P2P)-модели, 
где каждый узел может выступать как в роли клиента, так и в роли сервер

Транспортные протоколы. 
В отличие от RADIUS, который использует UDP, 
Diameter передаёт данные через TCP или SCTP, 
обеспечивая надёжную доставку и минимизируя потери данных

Структура сообщения. 
Пакет Diameter состоит из заголовка и переменного количества пар «атрибут — значение» 
(AVP — Attribute-Value-Pairs). AVP инкапсулируют протокольно-специфичные данные, 
а также информацию об аутентификации, авторизации или учёте.

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

Безопасность. 
Хотя Diameter не включает шифрование в базовом виде, 
его можно защитить с помощью системы безопасности транспортного уровня (IPSec или TLS)

Diameter используется в различных сетевых функциях, например:

    Policy and Charging Rules Function (PCRF);
    Home Subscriber Server (HSS);
    Online Charging System (OCS).

среда, 15 апреля 2026 г.

Asterisk AMI скрипт по мониторингу для ZABBIX

 




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

#!/usr/bin/php -q
<?php
set_time_limit(100);
ob_implicit_flush(false);           // Turn off output buffering
error_reporting(E_ALL ^ E_NOTICE);
date_default_timezone_set("Europe/Moscow");
include_once('phpagi-asmanager.php');

define('USER', 'zabbix');
define('PASSWD', 'Pass123');

/*
In file  /etc/asterisk/manager.conf

[zabbix]
secret=Pass123
deny=0.0.0.0/0.0.0.0
permit=127.0.0.0/255.255.255.0
allowmultiplelogin=yes
;displayconnects=yes
read = all,system,call,log,verbose,command,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate,message
write = all,system,call,log,verbose,command,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate,message
writetimeout=5000
*/



function dump_events($event_code, $data, $server, $port) {

    switch($event_code){
        case 'successfulauth':
          // Ignore
          break;
        case 'devicestatechange':
          // Ignore
          break;
        case 'challengesent':

          // Ignore
          break;

        default:
          on_display($event_code, $data);
    }
}

function on_display($event_code, $data) {
    $time_now = date('H:i:s');
    print($time_now." Received event:\n".$event_code."\nData:\n");
    print_r($data);
    print("\n");
    return 0;
}


//------------------------------------------------------------------------------

$asm=new AGI_AsteriskManager();
if($asm->connect('127.0.0.1:5038', USER, PASSWD)) {
    $Ar_Req=$asm->send_request('Events',
        array('Eventmask'=>'ON')                  // All Events on
        );
    var_dump($Ar_Req);

    $asm->add_event_handler('*', 'dump_events');  // Event handler
    $asm->wait_response();                        // Wait Events
    $asm->disconnect();
}
else{
    print("Manager not connected\n");
}
exit;

вторник, 14 апреля 2026 г.

magnet-ссылка: что это и зачем?

 


 Magnet-ссылка (magnet: URI) — это гиперссылка, которая идентифицирует файл не по его расположению или имени, 
а по содержанию — по хеш-коду содержимого файла

xt (eXact Topic) — URN, содержащий хеш файла. 
Например, в сетях BitTorrent xt=urn:btih:<info-hash>, 
где <info-hash> — хэш метаданных торрента

dn (Display Name) — имя файла

xl (eXact Length) — размер файла в байтах

tr (TRacker) — URL трекера для клиентов BitTorrent

Ссылка подтверждает, что существует файл, 
который соответствует данному адресу, независимо от места его хранения. 
Для этого из файла по определённому алгоритму генерируется хеш-сумма, 
которая не содержит какой-либо информации о файле, а служит только для его идентификации

В отличии от torrent файлов, magnet является ссылкой которая указывает на содержимое файла (хеш)
Она и не содержит информацию ни о вас или трекере, в ней нет записей о месте где он был скачан/создан

Работает по принципу DHT
DHT (англ. distributed hash table — «распределённая хеш-таблица») — это класс децентрализованных распределённых систем поисковой службы, 
работающей подобно хеш-таблице. Как структура данных, хеш-таблица может представлять собой ассоциативный массив, 
содержащий пары (ключ-значение).

О ней расскажу в другой раз

Добавить в Firefox очень просто 
После нажатия на магнет ссылку появится окно с предложением выбрать программу для открытия данной ссылки. 
Выбираете просто свой торрент клиент

Это решение появилось на заре попыток блокировок торрентов в европе, да-да, не только РКН это любит
В Америке и Европе пытались и пытаются бороться с распространением контента

А по итогу очень интересный инструмент, который был популярен и в локальных сетях

Всем благ

 

 

 

 

 

 

 

 

 

 

 

 

понедельник, 13 апреля 2026 г.

История связи: мня опредили и мотивировали одновременно

 




     За свою рабочую карьеру, а это пости 20 лет уже, я переучивался раза 3-4,
хотя специализацию не менял
    Первый раз, это прям со студенческой скамьи, все чему учили устароло и
пошел в цифровую и IP-связь, уже шел астериск, передача данных, все в скайпе и тд - это был 2007
В который никто и никогда не вернется :)
    А вот прям переучиваться и жестко пришлось в 15-ом, когда сократили и был кризис и в стране,
и в отрасли. Вот тогда ушел TDM и пришла передача данных, сетевые технологии CCNA и многое другое
Потом докатилось окончательно в 16ом - тогда наступила эта VoIP, полноценный SIP, софтсвич и вот это все
стильное модное. Голос уже перешел в медиа, проводная связь уходит в прошлое
    А сейчас все идет переход дальше, можно сказать WebRTC - теперь все вместе и голос по SIP и видео, и
данные, текст, контент - все это идет одним транспортом, и снова переучиваешься
    Смотря на свои записи, что все пытаюсь по немногу переносить в Интернет, начал писать книгу одним
развитии и истории, как менялся телеком на моих глазах. Думал надо оно нет, как вот сразу попалась книга на глаза про
историю связи, которую здесь и прикладываю на память
    Значит это кому-то надо, значит это не зря

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

воскресенье, 12 апреля 2026 г.

EBITDA - вот эбитда, так эбитда полнейшая

 


 

 

    EBITDA (Earnings before interest, taxes, depreciation and amortization) — это прибыль компании до вычета амортизационных затрат, уплаты процентов по долгам и выплаты прямых налогов. Часто EBITDA называют показателем «грязной прибыли». Измеряют его в деньгах (рубли, доллары, евро).

     Думал такое от меня далеко, а сейчас все чаще и чаще слышу, обсуждается и косвено да, уже касается и меня

   По сути EBIDTA показывает, какую сумму компания может выплатить в качестве дивидендов — то, что как раз важно инвесторам — или пустить на погашение кредитов. 

 

Классические формулы:

  • EBITDA = чистая прибыль + налоги + процентные расходы + износ и амортизация
  • EBITDA = операционная прибыль + износ и амортизация

По сути это вот следующая формула расчёта: 

 

EBITDA = выручка – (прямые затраты + косвенные затраты) – (расходы на оплату труда + социальные налоги, взносы и сборы) – операционные налоги (за исключением НДС и налога на прибыль) + прочие доходы – прочие расходы

 

Повышайте компитенции, чтобы Ваша личная EBITDA только росла

 

 

 

 

 

 

 

суббота, 11 апреля 2026 г.

emupedia.net: ностальгия твоего детства во плоти

 

   Поделюсь сайтом с редро программами, ну конечно в основном играми. Даже пустил скупую мужскую слезу))

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

     Есть нюансы, каждый раз проигрывается все заново так что сидеть и неделями проходить Дьябло первый или Анрыл не выйдет, но удовлетворить ломку по легендарным играм в самый раз

    Для меня в старых играх спрятано нечто большее, чем просто память о том, когда я был вечно молодым, вечно пьяным) При мне была эпоха, когда игры рождались в жесткой ограниченности в ресурсах, а это, как я считаю, и есть залог шедевра. Тогда нельзя было запросить 100500 Гб памяти и терабайты места на хардах, поэтому шли на различные ухищрения, приходилось продумывать каждый ход, вывозить сюжетом. Мультиплеера не было поголовно, а созвониться с соседом - высший пилотаж, чаще с компами ходили или шли в клуб, но это не нынешние игры

    Поэтому если захотите сравнить два разных мира, современный киберпанк и ламповый ЭВМный, то прошу Вас сюда :-) 

  


 



пятница, 10 апреля 2026 г.

Linux headers: обновление ядра ручками

 


 

 Linux headers — так называют заголовочные файлы ядра Linux. Это файлы на языке программирования C, которые определяют интерфейс между ядром Linux и библиотеками и программами пользовательского пространства. 

Использование

Заголовочные файлы нужны для компиляции кода, который взаимодействует с ядром
  • Для сборки драйвера устройства или другого загружаемого модуля, который подключается к ядру.
  • Для компиляции программ, которые в некоторых случаях работают с ядром не через glibc, например, утилит, работающих с ядром не через Glibc.

 Это была история, а это памятка по обновлению в ручном режиме: 

   apt install linux-headers-5.10.0-22-amd64
   apt install linux-headers
   dpkg -l | grep -i linux
   apt-get update linux-image
   apt-get update
   apt-get upgrade
   apt-get upgrade linux-image-amd64
   apt-get install linux-image-amd64 

Памятка по RFC протокола Диаметра

  Памятка по RFC проткола Диаметра DIAMETER — сеансовый протокол, созданный, отчасти, для преодоления некоторых ограничений протокола RADIUS...