У меня есть устройство, к которому можно получить доступ по локальной сети для настройки устройства. Одна из настроек — изменить IP-адрес локального интерфейса. Проблема в том, что при изменении статического IP я больше не могу перенаправить пользователя на новый IP.
Есть ли способ обойти это?
Можно ли временно сохранить старый IP-адрес, а затем перенаправить пользователя на новый и освободить старый?
Я хочу избавить пользователя от необходимости вручную вводить новый адрес на случай, если он забудет его или случайно введет неправильный адрес.
Не уверен, как это лучше всего сделать.
Например, сейчас я делаю это.
ioctl(args) //change ip of interface
redirect to new address //this doesn't work obviously
решение1
Другим вариантом может быть использование LLMNR (Link-Local Multicast Name Resolution) — см. также Multicast DNS — чтобы пользователь мог обратиться к устройству на основе идентификатора, например, его серийного номера или чего-то подобного.
решение2
Да, если речь идет о веб-интерфейсе.
Подобно устройству, которое перезагружает страницу после перезапуска, вы можете поместить http-equiv refresh в заголовок страницы.
Например. Следующий код заставит браузер перейти по указанному URL через 20 секунд. Вставьте это в <head>
ваш HTML.
<meta http-equiv="refresh" content="20;URL='your new url'">
Возможно, я неправильно поставил разделитель URL
, но это должно вам помочь.