У меня есть машина внутри университета. Компьютеры подключены к Интернету, но имеют недействительные IP-адреса (NAT).

Когда я не в университете, я подключаюсь к университетской сети через VPN, и затем я могу подключиться к компьютеру по ssh, используя его IP-адрес локальной сети.

Я должен запомнить IP-адрес машины перед тем, как покинуть офис, чтобы я мог подключиться к ней по ssh. Однако в случае, если компьютер перезагружается из-за отключения питания, DHCP назначает новый IP-адрес компьютера, и я не знаю новый IP-адрес.

Как я могу настроить машину linux (ubuntu), чтобы она отправляла мне IP?

Очевидно, ни один пользователь не вошел в систему после перезагрузки машины, поэтому мой вопрос состоит из двух частей:

  1. Где мне поставить скрипт, чтобы он работал без логина?
  2. Что должен сделать скрипт? Я предпочитаю, чтобы он отправлял мне электронное письмо с новым IP, но это не работает: Когда я пытаюсь ifconfig | mail -s "new IP" myEmail@gmail.com , я не получаю электронную почту.

1 ответ1

2

Я предполагаю, что электронная почта не работает, так как нет SMTP-ретранслятора, к которому ПК может получить доступ. Если он может выйти в Интернет, вы можете использовать облачный сервис для достижения того же. Например, я использую rclone для загрузки в Dropbox текстового файла, содержащего мой последний адрес DHCP.

Место для размещения сценария должно быть в файле crontab (либо принадлежащем пользователю, либо в /etc/cron.d) со специальным расписанием @reboot которое выполняет сценарий при запуске системы. Как это:

@reboot /root/scripts/getcurrentip

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .