Настройка, программирование, распределённые вычисления
Модераторы: Olej, bellic, vikos
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 07 сен 2023, 11:51
В этом кратком руководстве показано, где в сетевом потоке Linux расположены некоторые из наиболее часто используемых и цитируемых параметров sysctl/network. Оно было во многом вдохновлено иллюстрированным руководством по сетевому стеку Linux и многими сообщениями Марека Майковски.
Ничего супер нового ... но
очень хорошая подборка по инструментам диагностирования (и управлению даже) сети
Иногда люди ищут культовые значения sysctl карго-культа, которые обеспечивают высокую пропускную способность и низкую задержку без каких-либо компромиссов и которые работают в любом случае. Это нереально, хотя мы можем сказать, что новые версии ядра по умолчанию очень хорошо настроены. На самом деле, вы можете ухудшить производительность, если испортите настройки по умолчанию.
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 07 сен 2023, 11:52
Дополнительные инструменты:
Код: Выделить всё
olej@R420:~$ aptitude search iputils
i iputils-arping - инструмент для отправки ICMP echo запросов на ARP-адрес
p iputils-clockdiff - Measure the time difference between networked computers
i iputils-ping - инструменты для проверки достижимости узлов в сети
i iputils-tracepath - инструменты для трассировки сетевого пути к удалённому узлу
Код: Выделить всё
olej@R420:~$ apt content iputils-arping
/.
/usr
/usr/bin
/usr/bin/arping
/usr/share
/usr/share/doc
/usr/share/doc/iputils-arping
/usr/share/doc/iputils-arping/changelog.Debian.gz
/usr/share/doc/iputils-arping/copyright
/usr/share/doc/iputils-arping/NEWS.Debian.gz
/usr/share/man
/usr/share/man/man8
/usr/share/man/man8/arping.8.gz
Код: Выделить всё
olej@R420:~$ apt content iputils-tracepath
/.
/usr
/usr/bin
/usr/bin/tracepath
/usr/share
/usr/share/doc
/usr/share/doc/iputils-tracepath
/usr/share/doc/iputils-tracepath/changelog.Debian.gz
/usr/share/doc/iputils-tracepath/copyright
/usr/share/doc/iputils-tracepath/NEWS.Debian.gz
/usr/share/man
/usr/share/man/man8
/usr/share/man/man8/tracepath.8.gz
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 07 сен 2023, 11:58
Olej писал(а): ↑07 сен 2023, 11:52
Дополнительные инструменты:
Код: Выделить всё
olej@R420:~$ arping --help
arping: неверный ключ — «-»
Usage:
arping [options] <destination>
Options:
-f quit on first reply
-q be quiet
-b keep on broadcasting, do not unicast
-D duplicate address detection mode
-U unsolicited ARP mode, update your neighbours
-A ARP answer mode, update your neighbours
-V print version and exit
-c <count> how many packets to send
-w <timeout> how long to wait for a reply
-i <interval> set interval between packets (default: 1 second)
-I <device> which ethernet device to use
-s <source> source ip address
<destination> dns name or ip address
For more details see arping(8).
Код: Выделить всё
olej@R420:~$ arping -c3 192.168.1.138
ARPING 192.168.1.138 from 192.168.1.14 eno1
Unicast reply from 192.168.1.138 [90:1B:0E:2B:FE:3A] 4.730ms
Unicast reply from 192.168.1.138 [90:1B:0E:2B:FE:3A] 3.909ms
Unicast reply from 192.168.1.138 [90:1B:0E:2B:FE:3A] 3.929ms
Sent 3 probes (1 broadcast(s))
Received 3 response(s)
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 07 сен 2023, 12:31
Olej писал(а): ↑07 сен 2023, 11:52
Дополнительные инструменты:
Код: Выделить всё
olej@R420:~$ host ya.ru
ya.ru has address 77.88.55.242
ya.ru has address 5.255.255.242
ya.ru has IPv6 address 2a02:6b8::2:242
ya.ru mail is handled by 10 mx.yandex.ru.
Это традиционный ICMP:
Код: Выделить всё
olej@R420:~$ traceroute 5.255.255.242
traceroute to 5.255.255.242 (5.255.255.242), 30 hops max, 60 byte packets
1 GPON (192.168.1.3) 3.462 ms 3.361 ms 3.368 ms
2 10.0.53.1 (10.0.53.1) 4.625 ms 4.633 ms 4.577 ms
3 172.16.1.254 (172.16.1.254) 4.626 ms 4.601 ms 4.593 ms
4 194-242-96-153.pitline.net (194.242.96.153) 4.573 ms 6.107 ms 4.513 ms
5 gw0.g50.kv.pitline.net (185.43.248.106) 12.061 ms 12.067 ms 12.029 ms
6 te0-7-0-5.208.agr21.kbp01.atlas.cogentco.com (149.6.190.205) 12.004 ms 15.344 ms 15.302 ms
7 be3852.rcr71.kbp01.atlas.cogentco.com (154.54.72.17) 13.461 ms be3854.rcr72.kbp01.atlas.cogentco.com (154.54.72.49) 13.189 ms 11.482 ms
8 be2672.ccr22.bts01.atlas.cogentco.com (154.54.72.130) 29.690 ms 28.106 ms 28.068 ms
9 be2988.ccr51.vie01.atlas.cogentco.com (154.54.59.86) 30.013 ms 28.080 ms 28.053 ms
10 be2974.ccr21.muc03.atlas.cogentco.com (154.54.58.5) 35.865 ms be3462.ccr22.muc03.atlas.cogentco.com (154.54.59.182) 35.840 ms be2974.ccr21.muc03.atlas.cogentco.com (154.54.58.5) 37.513 ms
11 be2960.ccr42.fra03.atlas.cogentco.com (154.54.36.253) 42.055 ms be2959.ccr41.fra03.atlas.cogentco.com (154.54.36.53) 43.745 ms 43.720 ms
12 be2845.rcr22.fra06.atlas.cogentco.com (154.54.56.190) 43.665 ms 61.678 ms be2846.rcr22.fra06.atlas.cogentco.com (154.54.37.30) 41.807 ms
13 149.11.21.114 (149.11.21.114) 41.797 ms 43.449 ms 40.256 ms
14 * * vla-32z1-ae2.yndx.net (93.158.172.19) 62.124 ms
15 * * *
16 * * *
17 * * *
18 * * *
19 * * *
20 * * *
21 * * *
22 * * *
23 * * *
24 * * *
25 * * *
26 * * *
27 * * *
28 * * *
29 * * *
30 * * *
Tracepath и Traceroute: В чем разница?
Обе команды создают карту сети и отображают возможные маршруты пакетов и транзитные задержки от источника к месту назначения.
...
Tracepath отслеживает путь к указанному пункту назначения с помощью UDP-пакетов.
Код: Выделить всё
olej@R420:~$ tracepath 5.255.255.242
1?: [LOCALHOST] pmtu 1500
1: GPON 3.540ms
1: GPON 3.339ms
2: 10.0.53.1 5.508ms
3: 172.16.1.254 5.274ms
4: 194-242-96-153.pitline.net 5.310ms
5: gw0.g50.kv.pitline.net 11.312ms
6: te0-7-0-5.208.agr21.kbp01.atlas.cogentco.com 13.009ms
7: be3852.rcr71.kbp01.atlas.cogentco.com 12.259ms
8: be2429.ccr21.bts01.atlas.cogentco.com 29.823ms
9: be3463.ccr52.vie01.atlas.cogentco.com 29.661ms
10: be2974.ccr21.muc03.atlas.cogentco.com 38.313ms
11: be2960.ccr42.fra03.atlas.cogentco.com 40.320ms
12: be2845.rcr22.fra06.atlas.cogentco.com 40.989ms
13: no reply
14: no reply
15: no reply
16: no reply
17: no reply
18: no reply
19: no reply
20: no reply
21: no reply
22: no reply
23: no reply
24: no reply
25: no reply
26: no reply
27: no reply
28: no reply
29: no reply
30: no reply
Too many hops: pmtu 1500
Resume: pmtu 1500
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 07 сен 2023, 12:40
Olej писал(а): ↑07 сен 2023, 12:31
Tracepath отслеживает путь к указанному пункту назначения с помощью UDP-пакетов.
Это локальная сеть:
Код: Выделить всё
olej@R420:~$ tracepath -6 21d:8a7c:aafa:f346:8115:14aa:9ca4:cd7f
1?: [LOCALHOST] 0.054ms pmtu 65536
1: R420 0.145ms reached
1: R420 0.111ms reached
Resume: pmtu 65536 hops 1 back 1
Код: Выделить всё
olej@R420:~$ tracepath -6 ::1
1?: [LOCALHOST] 0.056ms pmtu 65536
1: ip6-localhost 0.096ms reached
1: ip6-localhost 0.177ms reached
Resume: pmtu 65536 hops 1 back 1
А вот как это работает с Yggdrasil сетью IPv6:
Код: Выделить всё
olej@R420:~$ host ygg.linux-ru.lib
ygg.linux-ru.lib has IPv6 address 221:58c9:9a6:99be:f3d:c1ac:2b5b:9771
Код: Выделить всё
olej@R420:~$ tracepath -6 221:58c9:9a6:99be:f3d:c1ac:2b5b:9771
1?: [LOCALHOST] 0.049ms pmtu 53049
1: no reply
2: no reply
3: no reply
4: no reply
5: no reply
6: no reply
7: no reply
8: no reply
9: no reply
10: no reply
11: no reply
12: no reply
13: no reply
14: no reply
15: no reply
16: no reply
17: no reply
18: no reply
19: no reply
20: no reply
21: no reply
22: no reply
23: no reply
24: no reply
25: no reply
26: no reply
27: no reply
28: no reply
29: no reply
30: no reply
Too many hops: pmtu 53049
Resume: pmtu 53049
P.S. И, хотя Yggdrasil - это IPv6 over IPv4, но:
Код: Выделить всё
olej@R420:~$ tracepath -4 221:58c9:9a6:99be:f3d:c1ac:2b5b:9771
tracepath: 221:58c9:9a6:99be:f3d:c1ac:2b5b:9771: Семейство адресов не поддерживается для данного имени узла
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 07 сен 2023, 13:39
Olej писал(а): ↑07 сен 2023, 11:51
Ничего супер нового ... но
Network tools for testing and monitoring
- iperf3 - network throughput
...
- vegeta - HTTP load testing tool
- netdata - system for distributed real-time performance and health monitoring
...
- vegeta - HTTP load testing tool
...
...
- netdata - system for distributed real-time performance and health monitoring
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 21 сен 2023, 11:10
Из хороших новых (судя по версии) инструментов диагностики сети - mtr.
olej@R420:~$ man mtr
NAME
mtr - a network diagnostic tool
...
DESCRIPTION
mtr combines the functionality of the traceroute and ping programs in a single
network diagnostic tool.
...
О-о-о-о-очень полезное свойство
:
...
Код: Выделить всё
INTERACTIVE CONTROL
mtr can be controlled while it is running with the following keys:
?|h help
p pause (SPACE to resume)
d switching display mode
e toggle MPLS information on/off
n toggle DNS on/off
r reset all counters
o str set the columns to display, default str='LRS N BAWV'
j toggle latency(LS NABWV)/jitter(DR AGJMXI) stats
c <n> report cycle n, default n=infinite
i <n> set the ping interval to n seconds, default n=1
f <n> set the initial time-to-live(ttl), default n=1
m <n> set the max time-to-live, default n= # of hops
s <n> set the packet size to n or random(n<0)
b <c> set ping bit pattern to c(0..255) or random(c<0)
Q <t> set ping packet's TOS to t
u switch between ICMP ECHO and UDP datagrams
y switching IP info
z toggle ASN info on/off
q exit
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 21 сен 2023, 11:20
Olej писал(а): ↑21 сен 2023, 11:10
хороших
Это прямая статистика к форуму linux-ru.ru:
Код: Выделить всё
olej@R420:~$ mtr -c 300 -T4 linux-ru.ru -r
Start: 2023-09-21T10:47:25+0300
HOST: R420 Loss% Snt Last Avg Best Wrst StDev
1.|-- GPON 32.7% 300 7297. 721.8 2.9 7303. 2072.3
2.|-- 10.0.53.1 0.0% 300 3.8 5.8 3.7 18.6 1.7
3.|-- 172.16.1.254 0.0% 300 5.5 6.1 4.1 17.5 2.1
4.|-- 31-202-12-165-kh.maxnet.u 0.0% 300 5.4 8.0 4.6 42.7 4.6
5.|-- port-channel1.core3.kbp1. 15.0% 300 12.4 1401. 10.9 7306. 2153.9
6.|-- port-channel3.core2.kbp1. 10.7% 300 7189. 1522. 10.9 7312. 2160.6
7.|-- port-channel7.core2.waw1. 54.7% 300 7327. 2456. 24.3 7327. 2762.4
8.|-- port-channel2.core3.ber1. 0.3% 300 32.4 439.7 31.5 7253. 1186.5
port-channel10.core1.ams1.he.net
9.|-- port-channel1.core2.ams1. 20.0% 300 42.0 992.4 41.1 7403. 1789.7
port-channel10.core1.ams1.he.net
10.|-- port-channel1.core2.ams1. 13.3% 300 3064. 550.6 41.1 7307. 1338.4
80.249.213.103
11.|-- 80.249.213.103 0.0% 300 70.9 74.1 67.8 97.1 4.7
5.187.73.94
12.|-- 5.187.73.94 0.0% 300 78.5 96.7 75.5 121.0 18.6
178.210.33.139
13.|-- 178.210.33.139 16.3% 300 112.8 1655. 112.4 7429. 2668.1
comp131-10.2day.kz
14.|-- comp131-10.2day.kz 41.7% 300 7239. 3113. 121.5 7425. 2859.1
LAG11.GRT01.SNBAV.ALM
15.|-- VLAN1020.ALM-C02-ZTE.SNBA 24.0% 300 130.2 959.6 123.8 7407. 1940.3
LAG11.GRT01.SNBAV.ALM
16.|-- comp13-186.tnsplus.kz 0.0% 300 124.6 189.0 124.1 3168. 345.6
VLAN1020.ALM-C02-ZTE.SNBAV.ALM
17.|-- comp13-186.tnsplus.kz 0.0% 300 125.0 126.1 122.7 172.9 4.6
85.29.163.106
18.|-- 85.29.163.106 0.0% 300 125.2 136.5 122.4 297.9 25.9
195.93.153.4
19.|-- 1168949-cu51160.tw1.ru 0.0% 300 126.8 136.3 123.2 290.9 24.3
195.93.153.4
Видно сомнительные места, где теряется под 50% трафика...
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 21 сен 2023, 11:22
Olej писал(а): ↑21 сен 2023, 11:20
Это прямая статистика к форуму linux-ru.ru:
А можно - реверсная статистика: зайдя по SSH на linux-ru.ru, и оттуда к одному из активных публичных хостов РФ:
Код: Выделить всё
olej@277938:~$ mtr -c 100 -T4 rustv.live -r
Start: 2023-09-21T11:11:34+0300
HOST: 277938.local Loss% Snt Last Avg Best Wrst StDev
1.|-- 185.146.2.233 0.0% 100 10.6 17.0 0.8 134.5 27.5
2.|-- 195.93.153.1 0.0% 100 0.5 1.1 0.4 21.4 2.8
3.|-- 195.93.153.126 0.0% 100 1007. 11.1 0.4 1007. 100.7
4.|-- 45.66.25.17 0.0% 100 0.7 0.9 0.6 7.8 0.8
5.|-- 185.217.60.20 0.0% 100 37.3 37.5 36.7 49.3 1.9
6.|-- m9-r5.inet2.ru 0.0% 100 56.0 57.9 55.6 87.1 4.1
7.|-- de-cix-frankfurt.as13335. 20.0% 100 3123. 1440. 91.1 7363. 1969.0
8.|-- 172.71.248.3 0.0% 100 93.5 97.9 90.4 124.9 6.4
9.|-- 188.114.96.1 0.0% 100 96.4 95.6 90.7 107.5 3.5
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 21 сен 2023, 11:29
Olej писал(а): ↑21 сен 2023, 11:10
инструментов диагностики сети
Olej писал(а): ↑21 сен 2023, 11:22
реверсная статистика
Но его нужно найти и установить:
Код: Выделить всё
olej@277938:~$ mtr -c 100 -T4 rustv.live
-bash: mtr: команда не найдена
Код: Выделить всё
olej@R420:~$ apt contains mtr | grep mtr$
mtr-tiny: /usr/bin/mtr
mtr-tiny: /usr/share/bash-completion/completions/mtr
Код: Выделить всё
olej@R420:~$ aptitude search mtr-tiny
i mtr-tiny - полноэкранный traceroute на основе ncurses
Там где его нет устанавливаем:
Код: Выделить всё
olej@277938:~$ sudo apt install mtr-tiny
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Следующие НОВЫЕ пакеты будут установлены:
mtr-tiny
Обновлено 0 пакетов, установлено 1 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 64,4 kB архивов.
После данной операции объём занятого дискового пространства возрастёт на 156 kB.
Пол:1 http://mirror.timeweb.ru/debian buster/main amd64 mtr-tiny amd64 0.92-2 [64,4 kB]
Получено 64,4 kB за 0с (144 kB/s)
Выбор ранее не выбранного пакета mtr-tiny.
(Чтение базы данных … на данный момент установлено 48974 файла и каталога.)
Подготовка к распаковке …/mtr-tiny_0.92-2_amd64.deb …
Распаковывается mtr-tiny (0.92-2) …
Настраивается пакет mtr-tiny (0.92-2) …
Обрабатываются триггеры для man-db (2.8.5-2) …
Olej
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость