Как стать автором
Обновить

Комментарии 19

Прелестно, просто прелестно! Не расскажите только как может тот же 8.8.8.8 находится в США если RTT из Москвы до него 5-10 мс - можете сами посчитать что оказывается США от Москвы находится в 1500 км теоретического предела - и это без учета не прямой прокладки линий, задержки на оборудовании и меньшей скорости света в волокне. Может не стоит уже использовать geoip в век CDN и bgp anycast?

мне кажется 8.8.8.8 не очень удачный пример, на запросы в него давно отвечают провайдеры, а не cам 8.8.8.8. Такие сервисы надо заворачивать куда нужно и тогда пинг становится ~80 ms. ну и в целом надо понимать что geoip да еще на статичной базе на диске далека от 100% точности

Если бы bgp не было такого быть не может так как каждая. Область имеет владельца и ели что через Россию очень много транзита идёт

Ну я примерно представляю что такое bgp и протоколы маршрутизации, как и роутинг, но мысли все равно не понял :) какая разница как идёт трафик если составители базы знают (или утверждают что знают) что вот это конечный ip живёт в такой то стране ?

Иза количества пирингов Гугла между провайдерами как и cloudflare так время задержки сокрящяетя так работает протокол bgp

Порядок запуска в WSL2: Сработает в  Windows 11 version 22H2 и выше
1) в каталоге HOMEPATH (обычно это C:\Users\user_name\ )создаем или правим файл .wslconfig чтобы он содержал строку:

[wsl2]
networkingMode=mirrored

2) В Windows Firewall создаем два правила , одно для UDP 5514 , второе для TCP 3000 , 5555 , 9428

3) В запущенном WSL:

sudo passwd root
# вводим новый пароль для root
su -
ip a # - запоминаем IPv4 адрес для Mikrotik
apt install git docker docker-compose
git clone https://github.com/sergeygalkin/habr.git
cd habr/mikrotik-victorialogs-mapip
docker-compose up -d

Дальше по тексту.

PS Можно завернуть входящий трафик в WSL ещё несколькими способами, но этот самый простой, хотя и менее безопасный.

PS2 В таком варианте подключиться к WEB морде можно будет :
1) С соседнего компьютера по IP машинки с WSL2
и/или
2) С того же самого компьютера с браузера, установленного в WSL2:

apt install chromium
3) Запускаем браузер: Linux GUI App in WIndows 11 Start menu

думаю что без проблем, алгоритм примерно такой

  1. Настраивем на асусе отправку логов в victroia logs. Как это на той прошивке делать не знаю, в чистых линухах по идее будет как то так. Добавляем примерно такое правило логирования 'iptables -A FORWARD -m conntrack --ctstate NEW -j LOG --log-prefix "firewall-new: " --log-level 4', потом в rsyslog перенаправляем это в викторию. Я с прошивкой мерлина не сталкивался, поэтому точно не подскажу как аналогичное там натыкивать.

  2. Потом нам надо переделать переменную API_QUERY_COMMON, даже не всю ее а вот эту часть `!NAT !ICMP | extract ', proto <proto>, <src_ip>:<src_port>-><dst_ip>:<dst_port>, len' from _msg `

  3. Для этого идем в  http://127.0.0.1:9428/select/vmui  и начинаем строит запросы, добиваясь что бы src_ip и dst_ip прилетали в данных, кажется что для linux будет примерно так `extract ' SRC=<src_ip> DST=<dst_ip> ' from _msg` в результате запроса должно получиться как то так, при просмотре в json формате должны появится поля src-ip и dst-ip (порты могут и не появляться, они никак счас не используются)

  1. если все ок, добавляем в конец запроса суммирование '| stats by (dst-ip) count() dst-ip-count | sort (dst-ip-count) desc limit 1000', проверяем что все выглядит примерно так

  1. вставляем полученную строку в переменную API_QUERY_COMMON

  2. перезапускаем все через `docker compose build && docker compose up -d`

весьма сожалею что своим бесполезным опусом потратил ваши драгоценные три минуты. насчёт кучи времени вы немного заблуждаетесь, на это ушло часа 4

Попытался поднять в Portainer, вроде все создалось - и 3 контейнера и 2 тома, но в Графане нет ни дашборда, ни источника данных. Подскажите, что проверить сначала?

Она не их видит

logger=provisioning.dashboard t=2025-03-04T13:52:26.071489199Z level=error msg="can't read dashboard provisioning files from directory" path=/etc/grafana/provisioning/dashboards error="open /etc/grafana/provisioning/dashboards: no such file or directory"

разобрался, Portainer создает stack немного криво. docker compose делает все правильно.

так идешь на http://{{ сервер ip}}:9428/select/vmui и ищешь

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации