Показаны сообщения с ярлыком Сисадмину. Показать все сообщения
Показаны сообщения с ярлыком Сисадмину. Показать все сообщения

Интерпретатор C++

Иногда, когда пишешь на C (С++), бывают такие ситуации, что скорость разработки гораздо важнее скорости выполнения программы. В таком случае вместо постоянной компиляции и линковки выгоднее использовать интерпретатор С (С++). Язык С традиционно считается компилируемым, но, тем не менее, интерпретатор для него существует. И даже не один, встречайте:

Схема соединения автономных систем

BGP route views Проект Route Views изначально разрабатывался как утилита, позволяющая в реальном времени получать информацию о системе маршрутизации (BGP) с точки зрения различных автономных систем (AS). BGPlay,- это приложение, написанное на Java, отображающее анимированные графы маршрутизации для определённых префиксов в определённое время. Графическое отображение позволяет легко понять, каким образом обновления BGP влияют на маршрутизацию определённых префиксов.

UTF в Python

Чтобы использовать юникод в исходных кодах python, например в комментариях или значениях констант, нужно уведомить интерпретатор Python о том, что в коде присутствуют символы не из набора ASCII. Для этого нужно вставить в первой или второй строке комментарий специального вида:

# -*- coding: utf-8 -*-

Синтаксис комментария впервые введён в редакторе Emacs для установки локальных для файла переменных. Emacs поддерживает множество различных переменных, но в python поддерживается только 'coding'. Обрамляющие символы -*- показывают, что комментарий является специальной настройкой. Внутри комментария устанавливается имя переменной coding и значение, разделённое двоеточием

Серии рекомендаций ITU-T

Правильному IT-шнику надо учить матчасть. Помимо IETF, известной специалистам по множеству документов RFC существует Международный Институт Электросвязи (International Telecommunication Union). ITU является ведущим учреждением Организации Объединенных Наций в области информационно-коммуникационных технологий. Роль МСЭ, как всемирного координационного центра для органов государственного управления и частного сектора, состоит в том, чтобы помогать миру общаться, и осуществляется в виде деятельности трех основных секторов: радиосвязи, стандартизации и развития. Деятельность МСЭ по разработке стандартов (Сектор стандартизации электросвязи ITU-T) является самым известным и самым давним видом его деятельности.

Мониторинг запросов к DNS-серверу

Для быстрого мониторинга запросов к DNS_серверу можно воспользоваться простым скриптом
tcpdump -n -i fxp0 -c 20 dst port 53
где fxp0 - интерфейс, на котором снимается трафик, 20,- количество пакетов для перехвата.
Необходимые опции можно узнать в man tcpdump. Там-же можно узнать о формате вывода запросов DNS:

If a query contains an answer, nameserver, or authorative section, ancount,
nscount, or arcount are printed as [na], [nn], or [nau], where 'n' is the
appropriate count.


Это позволяет показать только нужные записи, например запросы клиентов в два столбца: "IP-адрес клиента" и "запрошенный адрес", исключая запросы PTR:

tcpdump -n -i fxp0 -c 20 dst port 53 | grep -v '1au' | grep -v ".in-addr.arpa." | awk '{ print $3,$8};'

Поисковый трафик

одна четвертьПросматривая статистику посещений нескольких сайтов с различной посещаемостью (от 30 до 3000 хитов в день) в GoogleAnalytics, заметил одну закономерную закономерность:
доля трафика с поисковых систем Яндекс и Гугл всегда находится в примерном соотношении 1/4. Для сайтов в зоне .ru,- доля Яндекса в 4 раза больше, чем доля Гугла, а в зонах, отличных от .ru (например на spam.sended2.me),- соответственно наоборот. Конечно, небольшие отклонения есть (в зависимости от сайта, наличия локализованных страниц),- но закономерность всё-таки прослеживается.

Яйца Питона

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

$ python -m this


UPD: в Python3 тоже работает 

Протокол Mail.Ru Agent

Mail.Ru открыл описание протокола Mail.Ru Agent для сторонних разработчиков. Для доступа к описанию протокола нужно принять Соглашение об использовании Протокола, после чего откроется страница с описанием MMP.

Перенос\копирование правил для сообщений в Thunderbird

thunderbird logo Понадобилось перенести правила в Thunderbird из одного аккаунта в другой. Специальной кнопки для копирования\перемещения правил между почтовыми аккаунтами не нашёл, полез разбираться:

В базе знаний Thunderbird нашлось, что настройки фильтров хранятся для каждого аккаунта отдельно в файле с именем msgFilterRules.dat. В файле сначала указывается версия и настройки записи результатов фильтрации в лог:

DHCP сервер для Windows

Понадобилось протестировать некоторый функционал в DHCP. К сожалению, под руками есть только ноутбук с Windows XP и тестируемое устройство,- а встроенный в XP DHCP сервер (aka Общий доступ к интернет),- вообще никак не настраивается. Расхваливаемый по всему рунету DHCP Turbo от Weird Solutions оказался редкостным убожеством,- сразу после установки даже не может запустить сервер без всяких видимых причин. Попытка запустить сервис руками через консоль управления,- стабильно заканчивается ошибкой: Неправильный дескриптор. Пришлось искать альтернативы. Альтернативой оказался великолепный опенсорсный DualServer:


DHCP Server DNS Server Open Source Freeware. Works as DHCP or DNS Server or both. Using both services adds DHCP allotted hosts automatically to DNS Server. Support Relay Agent, PXEBOOT, BOOTP, Zone Trasfer, DHCP Range Filters


Инсталлятор весит 400 Кб, по умолчанию устанавливается как сервис, GUI отсутствует, настраивается путём редактирования конфигурационного файла, может запускаться как консольная программ для тестирования. Поддерживает практически любые опции DHCP и имеет веб-интерфейс для просмотра выданных(DHCP active leases) и свободных(free dynamic leases) адресов.

Однозначно must have на флешке типа "переносной набор сисадмина"

Другой пользователь уже логин

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

Другой пользователь уже логин
Пожалуйста повторенная попытка более последняя


а при выходе:


Вы уходите уже
Использовать это снова, пожалуйста перелогин


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

E1 RJ45 Pin-outs

Понадобилось по работе тут подключить E1 на разъём RJ-45. Быстро найти распиновку (да ещё и на русском) не удалось,- выкладываю, чтобы не забылось: На джеке контакты считаются по порядку слева направо, держа разъём контактными площадками к себе, кабель подводится снизу (как на рисунке). В табличном виде:
pinназначение
1Rx RING
2Rx TIP
3-
4Tx RING
5Tx TIP
6-
7-
8-
Подключенное устройство принимает (Rx) на 1-2 контактах (оранжевая пара). Передача (Tx) ведётся по паре на 4-5 контакте (синяя пара), Остальные контакты не используются. Понятия TIP и RING здесь условные, обычно современное оборудование умеет определять полярность на парах и корректно использовать. Но, на всякий случай,- почитайте документацию (или проконсультируйтесь с технической поддержкой) перед подключением.

утилиты GNU для Windows

GnuWin32 Почему-то в русском интернете мало используется весьма полезный пакет для Windows под названием GnuWin32. Проект GnuWin32 предоставляет набор популярных unix утилит, портированных на платформу Win32. Все утилиты предоставляются с лицензией GNU (или с аналогичными лицензиями open source) . Эти программы собраны с использованием стандартных 32-битных библиотек MS-Windows, таким образом они не зависят от каких-либо сторонних библиотек совместимости, например CygWin или Msys.

Сайты и книги

Алгоритмы телекоммуникационных сетей. В 3 частях. Часть 2. Протоколы и алгоритмы маршрутизации в Internet | Ю. А. Семенов
В поисках добротного описания SIP на русском нашёл сайт автора неплохой книги по протоколам интернет. Автор,- Семенов Юрий Алексеевич, зам. зав. кафедры "Телекоммуникационные сети и системы" МФТИ. На сайте http://book.itep.ru/ представлены материалы курсов, бумажная версия выпущена в виде трёхтомника Алгоритмы телекоммуникационных сетей. Мне показалось неплохо, а народ в отзывах почему-то ругает.

Google DNS

trinity-nmapscreen-hd-cropscale-418x250 Google объявил о запуске общедоступного кеширующего сервера DNS. Теперь, вместо выданных провайдером каких-нибудь 10.2.2.2, для настройки конечных устройств можно использовать гугловские сервера 8.8.4.4 и 8.8.8.8. На хабрахабре уже разгорелась дисскуссия на тему DNS от Google.

SIGTRAN на Perl

В ЖЖ пользователя [info]mtve обнаружилась полезная вещица: реализация стека SIGTRAN на Perl. На всякий случай локальная копия SigTran.pl, оригинал по ссылке или из оригинального поста в жж

Дебаг PHP (в errorlog apache)

phpИногда возникает задача по-быстрому поправить что-то в PHP скриптах на сервере прямо из консоли. Если всё удаётся с первой попытки,- честь и хвала, а если нет? Часто бывает так, что страница просто перестаёт открываться, или на месте ожидаемого блока с текстом или картинки ничего нет. В этом случае поможет стандартная функция php error_log():

error_log('текстовое сообщение'); # записать в apache error.log

Не забудьте после отладки удалить (или закомментировать) все отладочные сообщения
Используя error_log можно быстро "на коленке" отладить небольшие изменения. А для больших проектов надо использовать что-то посерьёзнее, чем консоль, например Geany IDE

Сжатие заголовков SIP

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

SIP в ActiveDirectory

Микрософт не чужд набирающего обороты направления VoIP: Office Communication Server (OCS) использует SIP и некоторые дополнительные параметры в ActiveDirectory для хранения настроек.

Geany - IDE для Linux

geany_main В поисках нормальной среды разработки для PHP под Linux обнаружил в стандартной поставке Ubuntu программу Geany. Оказалось достаточно удобно и для PHP и для постоянно используемого Python'а. Причём, работает и в Linux и в Windows (правда, требует GTK). По функционалу,- ничего лишнего и всё есть. Есть вкладки для консоли, стандартный Output, подсветка кода для множества языков и т.д. Есть и мелкие неприятности, но, в целом,- очень качественная IDE, рекомендую.