В системе имеется несколько wan-интерфейсов (до десятка). При чём некоторые могут быть не подключены. Существует поднятый обратный ssh, который автоматически поднимается при разрыве.
Так же есть шанс, что в любой момент wan-соединение может быт отсоединено.
На данный момент я тестирую скорость следующим образом (python+bash)
(
Read more... )
Comments 18
Это какая-то внутренняя магия, которую ты здесь не описал или это нужно для тестирования скорости?
Если второе, то не делай так.
Есть много вариантов.
То, что ты называешь скоростью, называется иначе. Потому что скорость интерфейса - это та скорость, которая выставлена для его работы ( 10/100/1000/10000 ).
Итак, если я правильно понял, то тебе нужно измерить текущую загрузку сетевого интерфейса.
Давай сделаем это топором и двумя скриптами:
#!/bin/bash
cat /proc/net/dev | grep наш_интерфейс | awk что-там-надо > /tmp/наш_интерфейс_раз
и второй:
#!/bin/bash
oldThroughput=$( cat /tmp/наш_интерфейс_раз )
currThroughput=$( cat /proc/net/dev | grep наш_интерфейс | awk что-там-надо )
...здесь магия вычисления...
Вариант иного топора примерно такой же, только используем ( ... )
Reply
Смотри, скорости передачи данных корректно измеряются, сюда можно не лезть. Списки сетевых карточек я получаю и тут проблем нет.
Проблема в маршрутизации, тут я лихо плаваю и нифига не понимаю. Вот представь, у нас воткнуто n-модемов. У них абсолютно одинаковый ip-адрес, и назначает из DHCP одинаковый адрес каждому интерфейсу (тут моё изнасилование мозга). Итого у нас n интерфейсов с ip-адресом 192.168.8.100 . При чём есть шанс, что на модеме, например, кончились деньги.
Есть функция тестирования скорости, она работает и мы её не трогаем. Задача:
1. На живом интерфейсе оставить "вечный" ssh. Если он отвалился, перевесить на другой.
2. Запускать спидтест на конкретном интерфейсе (он гоняет трафик тудым-сюдым с удалённым сервером и измеряет скорости и пинги).
Поскольку я не знал как разрешить проблему одинаковых ip, маршрутизации всего этого добра, то тупо гасил интерфейсы и поднимал.
Reply
https://serverfault.com/questions/705919/the-same-ip-on-multiple-interfaces?answertab=votes#tab-top
Reply
Reply
Reply
Слишком много вопросов.
Например:
1) Почему у всех модемов один адрес?
2) ссш соединение идет вроде как через впн? А впн через модем что-ли? Или чего оно рвется? Ты вообще все интерфейсы тушишь или только ван?
3) зачем тебе переменная ЦМД? Главное ж есть и без ЦМД вызов %))) Сори, не в качестве наезда, просто глаза режет %)))
Reply
2. Забудь про vpn. Либо ssh либо vpn. Я тушу все интерфейсы по очереди, и тестирую скорость через каждый в отдельности. Покуда идёт тест ssh должно восстановиться, но не успевает.
3. Потому что я ещё логирую использованные команды. В данном примере опущено.
Reply
2) Еще раз: там что других интерфейсов кроме модемов нет? Даже локальной сети нет? Если локальная сеть есть - зачем ты ее отключаешь?
Reply
2. Считай что нет. Я отключаю только интерфейсы модема.
Reply
Leave a comment