Коннман переключиться обратно в предпочтительную сеть, когда снова в сети
Я хотел бы использовать ConnMan во встроенной системе. Кажется, что он обеспечивает большинство функций, которые я ищу, включая управление 3G и VPN.
Но после некоторого исследования кажется, что в этом, возможно, есть один упущенный момент. Допустим, у меня есть следующие настройки:
- Ethernet-соединение как предпочтительное соединение
- Соединение 3/4G как резервное / аварийное соединение
Мой Ethernet всегда включен, и dhcp-сервер правильно предоставляет IP, кабель все еще подключен, и питание на линии все еще есть, но иногда подключение к Интернету теряется. Так что в этом случае я переключусь на свое соединение 3G. Но затем как можно скорее, когда подключение снова будет подключено через Ethernet, я хочу вернуться к нему по соображениям производительности и стоимости.
Это поддерживается по умолчанию, или есть способ настроить его таким образом?
Я нашел этот пост, который, кажется, говорит, что он не был поддержан в то время, так как нет периодической проверки (февраль 2013). А также из документации:
Autoconnecting
Избранные (сохраненные) сети с включенным автоподключением учитываются при автоподключении сервисов. Эти сервисы помечены '*' и 'A' в connmanctl, соответственно. По умолчанию ConnMan автоматически подключает их в том порядке, в котором они указаны в списке служб, пока один из них не подключится. После этого используется служба автоматического подключения, и ConnMan не будет выбирать новую, пока сеть не выйдет за пределы допустимого диапазона. Когда служба выходит за пределы диапазона или отключается со стороны сетевой инфраструктуры, автоматическое подключение перезапускается и выбирается другая любимая служба автоматического подключения.
Не стесняйтесь спрашивать больше информации, если это неясно.
1 ответ
Это может быть полезным для других, поэтому я опубликую здесь ответ на свой вопрос.
Нет постоянной проверки подключения. Это делается только в начале для каждой доступной ссылки или когда ссылка меняет состояние.
Поэтому описанный мной вариант использования не поддерживается по умолчанию.
Это может быть сделано внешне, если демон проверяет это и публикует сообщения в DBUS, или это может быть реализовано непосредственно в connman. Но этот последний вариант, возможно, не самый лучший, так как он не уверен, что он может быть принят в основной строке (не все хотят этого внутри).
Мы выберем решение для внешнего демона и сообщения DBus.