Сценарий, чтобы определить, активирован ли интерфейс TAP, созданный службой

В моей системе есть служба SoftEther VPN, которая создает собственный интерфейс TAP при запуске и удаляет ее, когда она останавливается. Но даже с DHCP, работающим в VPN, TAP не настраивает свой собственный IP-адрес, когда он появляется, или статический IP-адрес, сконфигурированный в файле ifcfg специфичном для него. Тем не менее, он настраивает IP-адрес DHCP, если я делаю dhclient или запускаю ifupifcfg present).

Мой вопрос в том, как я могу контролировать скрипты, если интерфейс запущен, и запускать либо dhclient либо ifup , в зависимости от того, что мне нужно?

    2 Solutions collect form web for “Сценарий, чтобы определить, активирован ли интерфейс TAP, созданный службой”

    Как и в Centos7, я разрешил его с помощью sysmtemd-networkd. Это прослушивание всех сетевых устройств, которые вы указываете на / etc / systemd / network /

    Например, 20-static-tap_clients.network выглядит так:

     [Match] Name=tap_clients [Network] Address=192.168.103.1/24 

    Изменение tap_clients с вашим именем интерфейса адаптера и изменение IP-адреса для tap_clients IP-адреса.

    Вы должны отключить службу NetworkManager и включить systemd-networkd. Что же касается softether, я также создал файлы единиц и поместил их в / usr / lib / systemd / system

    softether-vpnserver.service

     [Unit] Description=SoftEther VPN Server After=network.target auditd.service ConditionPathExists=!/opt/vpnserver/do_not_run [Service] Type=forking EnvironmentFile=-/opt/vpnserver ExecStart=/opt/vpnserver/vpnserver start ExecStop=/opt/vpnserver/vpnserver stop KillMode=process Restart=on-failure [Install] WantedBy=multi-user.target Alias=softether-vpnserver.service 

    softether-vpnbridge.service

     [Unit] Description=SoftEther VPN Bridge After=network.target auditd.service ConditionPathExists=!/opt/vpnbridge/do_not_run [Service] Type=forking ExecStart=/opt/vpnbridge/vpnbridge start ExecStop=/opt/vpnbridge/vpnbridge stop KillMode=process Restart=on-failure [Install] WantedBy=multi-user.target Alias=softether-vpnserver.service 

    и softether-vpnclient.service

     [Unit] Description=SoftEther VPN Client After=network.target auditd.service ConditionPathExists=!/opt/vpnclient/do_not_run [Service] Type=forking EnvironmentFile=-/opt/vpnclient ExecStart=/opt/vpnclient/vpnclient start ExecStop=/opt/vpnclient/vpnclient stop KillMode=process Restart=on-failure [Install] WantedBy=multi-user.target Alias=softether-vpnclient.service 

    Вы можете наблюдать за интерфейсом в цикле while следующим образом:

     #!/bin/sh trap exit 1 2 15 while true; do if [ "$(ip l | fgrep IFACE: | wc -l)" -gt 0 ]; then # run dhclient/ifup for your IFACE here break fi sleep 1 done 

    Но я надеюсь, что SoftEther VPN может настроить интерфейс TAP, должна быть опция для скрипта, который пользователь пишет, или параметры, которые управляют конфигурацией интерфейса TAP где-нибудь, в файлах конфигурации или gui программы.

    Interesting Posts

    Как изменить конкретный столбец с помощью sed или awk на основе определенного шаблона

    Как определить, какие файлы были созданы приложением?

    Как следовать (a la «tail -f») двоичный файл с самого начала?

    Как я могу быстро проверить, сколько столбцов у моего терминала?

    Как открыть новую вкладку в текущем окне терминала gnome?

    Что поддерживает иерархия в cgroup?

    Как я могу определить, заблокирован ли экран xscreensaver?

    Проблемы с гибернацией на ноутбуке / ПК во время использования высокой ОЗУ

    Почему `env var = value` разрешает произвольное имя в var?

    Как направить вывод журнала определенных единиц в определенный файл?

    Установленная доля NFS. Может создавать папки в браузере файлов, но mkdir не работает через терминал

    Как изменить размер md-устройства во FreeBSD?

    Как найти команды / файлы в моем PATH через вкладку с помощью подстановочных знаков?

    Дымящий список только вниз

    Как отправлять SMS-сообщения с мобильного телефона или маршрутизатора? (Linux / Textmode)

    Linux и Unix - лучшая ОС в мире.