Intereting Posts
Двойные мониторы, разрешение разрешения DVI-I-VGA-конвертера Получить идентификатор и установленное местоположение USB Блокирует ли блок таймера systemd следующий запуск, если процесс еще не завершен? CentOS: Как заставить pip установить Django с последним Python 3.5 С помощью пользователей NIS, как узнать, какие пользователи в настоящее время вошли в систему? Как я могу сжать файлы с именем вывода, таким же, как родительская папка? Mounted.cifs с опцией ro, пользователь все еще способен коснуться запретить привязку при входе в систему, если она установлена В чем преимущество сетевой установки? Выполнение функции bash из командной строки извлечение даты «2017-01-26» (в гггг-мм-дд) из таких файлов, как «abcd.log.2017_01_26_23_30.0» Дата установки Ubuntu Debian VNC (Remote Desktop) разрешает только первое подключение, затем отключается Как восстановить правильное владение в контейнерах nspawn после обновления? Хотите, чтобы rsync перечислял скопированные / удаленные файлы

Добавление задержки в сетевой интерфейс при загрузке

В настоящее время я работаю над проектом Raspberry Pi, запуском Ubuntu Mate 32 бит, RPi будет в море и подключается к Интернету через маршрутизатор 4G. Через VPN-сеть он отправляет данные на другой компьютер на земле, на которой запущен HMI. Также соединение VNC выполняется через VPN-соединение.

При загрузке он автоматически подключается к VPN-серверу.

Моя проблема (я думаю), что когда питание подается на систему, а RPi и роутер загружаются одновременно, RPi сначала загружается и пытается подключиться через сетевой интерфейс, но не может этого сделать, поскольку маршрутизатор еще не загружен вверх.

RPi постоянно пытается подключиться, пока маршрутизатор, наконец, не запустится. Однако этот процесс делает что-то для VPN-соединения, и я не могу получать данные из RPi в сети VPN, хотя обе машины подключены к сети VPN.

Если я перезагружу RPi и подключаюсь к маршрутизатору, он работает нормально, и я могу получать данные.

В качестве решения я хочу добавить 30-секундную задержку к сетевому интерфейсу, пытающемуся подключиться, давая маршрутизатору время для правильной загрузки.

Как я могу это сделать? Или у кого-нибудь есть лучшее предложение о том, как решить эту проблему?

В вашем системном сервисе вы можете настроить запуск VPN после подключения. Решением является изменение директивы After по файлу блока. Например, служба sshd находится в этом файле /etc/systemd/system/multi-user.target.wants/sshd.service и служба After Force после запуска после сети:

 [Unit] Description=OpenSSH Daemon Wants=sshdgenkeys.service After=network.target [Service] ExecStart=/usr/bin/sshd -D ExecReload=/bin/kill -HUP $MAINPID KillMode=process Restart=always [Install] WantedBy=multi-user.target того, как [Unit] Description=OpenSSH Daemon Wants=sshdgenkeys.service After=network.target [Service] ExecStart=/usr/bin/sshd -D ExecReload=/bin/kill -HUP $MAINPID KillMode=process Restart=always [Install] WantedBy=multi-user.target 

Таким образом, вам нужно изменить After for VPN service, например vpn.service