Метод, которым я пользовался много лет назад до получения статического IP-адреса, был следующим.
Прежде всего, найдите службу, которую вы можете позвонить, чтобы получить свой IP-адрес. Например, в эти дни, если вы Google "Whats My IP", например:
https://www.google.co.uk/search?q=whats+my+IP
Вы получите страницу поиска, которая выглядит примерно так:
К сожалению, код Google немного плотный, но если вы используете сценарий оболочки и Wget, возможно, с некоторыми вызовами grep, или даже пользовательский сценарий, написанный на PHP, который захватывает страницу Google и анализирует результат, вы увидите, что с небольшим работать, можно получить IP-адрес со страницы.
Конечно, вам не нужно использовать Google, чтобы получить IP, есть много других страниц, посвященных получению вашего IP, таких как «www.whatsmyip.org»
Наконец, если у вас есть доступ к внешнему веб-серверу, вы даже можете поместить туда скрипт, который просто выводит переменную сервера адреса удаленного хоста в виде обычного текста.
В результате вы получаете IP-адрес, на самом деле не имеет значения, какой услугой вы пользуетесь, все, что имеет значение, это то, что вы автоматизируете вызов хосту, который смотрит на ваш IP из внешнего мира, и затем анализируете этот IP-адрес. из вывода возвращается к вам.
Получив этот IP-адрес, вы затем автоматизируете свою машину, чтобы отправить этот IP-адрес по электронной почте в общедоступную учетную запись электронной почты, такую как GMail, к которой вы и ваш телефон можете получить доступ.
Поместите сценарий в какое-то временное задание, которое проверяет, скажем, каждые 30 минут или около того и ведет учет последнего выданного IP-адреса, и тот, который отправляет вам электронное письмо только в случае его изменения.
Затем, когда вам нужен IP-адрес, просто войдите в назначенную общедоступную электронную почту и посмотрите, что это за IP.
ОБНОВИТЬ
После проведения исследования. А именно, глядя на исходный код на странице сайта myip. Я был вынужден взглянуть на:
http://www.realip.info/api/p/realip.php
Если вы вставите это в браузер и нажмете кнопку возврата, вот что вы получите:
{"IP":"80.176.150.196"}
Ваш IP-адрес как объект JSON. Объект JSON, который слишком просто анализировать :-)
ОБНОВЛЕНИЕ 2
Итак, в свете того, что мы теперь знаем, что это телефон, который тоже подключен, мы действительно можем сделать эту работу.
Однако, прежде чем продолжить, ваш телефон ДОЛЖЕН быть позади и подключен к вашей собственной сети. Это НЕ будет работать в сетях GSM/3g/4g или любых других сетях операторов мобильной связи.
Шаги, чтобы сделать эту работу
Создайте стандартную веб-страницу html, добавьте к указанной веб-странице JQuery и настройте ее так, чтобы HTML-код использовал мета-обновление для частой перезагрузки страницы.
Добавьте некоторый java-скрипт на указанную веб-страницу, которая называет «realip.info», как я упоминал выше. Если вы сделаете этот код, используя jQuery и вызов get Ajax, то в функции, которая срабатывает при возврате вызова, вы получите данные с объектом под названием «IP».
В том же JavaScript-коде он отправляет этот IP-адрес куда-нибудь, чтобы вы могли его прочитать. Я не совсем уверен в том, что решения электронной почты, к которым можно получить доступ с помощью java-скрипта, повторяются, как уже упоминалось ранее, если у вас есть собственный внешний сервер, на котором работает веб-сайт, к которому у вас есть доступ, вы может очень легко использовать JQuery, чтобы разместить его там.
Сохраните эту html-страницу на SD-карту или вставьте ее на свой телефон каким-либо другим способом, затем подключите телефон, как обычно, перед удаленным управлением им.
Загрузите HTML-код в браузер вашего телефона и дайте ему просто сидеть, обновляя себя, вызывая службу IP, а затем отправляя IP-адрес туда, где вы его тоже просили.
Для этого вам не понадобится Mac для разработки какого-либо программного обеспечения для вашего IPhone, все, что вам нужно, это небольшая часть HTML и JavaScript, решение также очень мобильное и будет работать с любым телефоном.
Я мог бы, вероятно, очень легко взломать сценарий вместе, чтобы сделать это, но не в данный момент, так как я не на своем собственном ПК, я мог бы попробовать это позже, хотя :-)
Обновление 3
Оказывается, отправлять электронную почту довольно просто, используя старый JavaScript, используя GData API, подробности здесь:
https://developers.google.com/gmail/api/v1/reference/users/messages/send