Автоматически уведомьте когда изменения IP?

Существует ли способ, которым я могу отправить уведомление мне когда локальные изменения IP DHCP? Я могу использовать libnotify?

Я использую Xubuntu. Ниже снимок экрана, который показывает то, на что похоже уведомление, я могу разработать его для сходства с этим?

Screenshot of the notification design

1
задан 21 November 2016 в 11:21

1 ответ

Это потребовало бы маленького фонового сценария:

enter image description here

#!/usr/bin/env python3
import subprocess
import time

ip1 = [s for s in subprocess.check_output([
    "ifconfig", "-a"]).decode("utf-8").split() \
      if "addr:192" in s][0]

while True:
    time.sleep(2)
    ip2 = [s for s in subprocess.check_output([
        "ifconfig", "-a"]).decode("utf-8").split() \
          if "addr:192" in s][0]
    if ip2 != ip1:
        subprocess.Popen([
            "notify-send", "Ip address changed",
            "New address: "+ip2.replace("addr:", "")
            ])
    ip1 = ip2

, Как использовать

  1. Копия сценарий в пустой файл, сохраните его как watch_ipchange.py
  2. Тестовый прогон он от терминала:

    python3 /path/to/watch_ipchange.py
    
  3. , Если все хорошо работает, добавьте его для Запущения Приложений

Объяснение

  • Каждые две секунды, сценарий проверяет текущий локальный IP-адрес от ifconfig -a
  • в случае изменения, это отправляет уведомление.

Примечание

я протестировал его на Единице Ubuntu, но это не должно иметь значения; оба использования уведомляет-osd. Если, по некоторым причинам это не работало бы однако, прокомментируйте.

2
ответ дан 7 December 2019 в 13:39

Другие вопросы по тегам:

Похожие вопросы: