В рамках траблшутинга одного сервиса понадобилось измерить скорость интернет соединения по 2 протоколам: IPv4/IPv6. Решение достаточно типовое — на базе iperf.
Со одной из сторон запускаем утилиту в режиме сервера:
# iperf -s -t 3600 ------------------------------------------------------------ Server listening on TCP port 5001 TCP window size: 85.3 KByte (default) ------------------------------------------------------------ [ 4] local 10.8.206.7 port 5001 connected with 176.99.147.204 port 55264 [ ID] Interval Transfer Bandwidth [ 4] 0.0-30.3 sec 290 MBytes 80.3 Mbits/sec |
Ключи сервера:
-s, —server, запустить в режиме сервера
-U, —single_udp, работать в однопоточном режиме UDP
-D, —daemon, запустить сервер как демон
-p, —port n, задаёт порт к которому конектится или на котором вешать сервер (по умолчанию 5001)
Если на сервере установлен файрвол, то нужно добавить указанный в настройках или порт по умолчанию (5001) в исключения.
На другой стороне производим тестирование:
# iperf -c 51.15.52.188 -t 30 -i 10 ------------------------------------------------------------ Client connecting to 51.15.52.188, TCP port 5001 TCP window size: 85.0 KByte (default) ------------------------------------------------------------ [ 3] local 192.168.1.7 port 55264 connected with 51.15.52.188 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.0 sec 113 MBytes 94.8 Mbits/sec [ 3] 10.0-20.0 sec 94.5 MBytes 79.3 Mbits/sec [ 3] 20.0-30.0 sec 82.1 MBytes 68.9 Mbits/sec [ 3] 0.0-30.0 sec 290 MBytes 81.0 Mbits/sec |
Ключи клиента:
-c, —client , запустить в режиме клиента, при подключении к
-d, —dualtest, двунаправленный тест одновременно
-t, —time n, время передачи в секундах (по умолчанию 10 секунд)
-i, —interval n, пауза секунд между периодическими отчётами
Тоже самое для IPv6:
# iperf -V -s -t 3600 ------------------------------------------------------------ Server listening on TCP port 5001 TCP window size: 85.3 KByte (default) ------------------------------------------------------------ [ 4] local 2001:bc8:4700:2300::2d:e07 port 5001 connected with 2002:b063:93cc:1:20c:29ff:fe04:823b port 43374 |
Для данного протокола и на клиенте и на сервере добавляем ключ:
-V, —IPv6Version, Использовать IPv6