Интерфейсный IP в публичном диапазоне, неверный IP отправлен на noip

293
krg

RPi3 подключен к интернету через 3G ключ. wwan0IP-адрес интерфейса находится в открытом доступе, доступен снаружи и не изменился с тех пор, как я получил SIM-карту. Пока все хорошо, правда?

Что меня беспокоит, так это то, что на noip отправляется, вероятно, IP-адрес NAT, а не интерфейсный, что делает сайт, обслуживаемый RPi, недоступным, если IP не известен. Есть ли способ отправить «правильный» wwan0IP-интерфейс на noip?

Второе беспокойство заключается в том, что когда RPi будет перемещен за пределы площадки (для измерения температуры в помещении), ключ будет использовать другую мобильную мачту и, вероятно wwan0, изменится IP-адрес iface. Я боюсь, что мне придется сделать собственный сценарий, чтобы уведомить noip об IP-адресе интерфейса при изменении IP-адреса или каком-либо другом уведомлении.

Любые отзывы приветствуются!

0

1 ответ на вопрос

0
mtak

Исходя из вашей истории, я предполагаю, что у вашего оператора есть прокси-сервер для оптимизации скорости мобильных данных (например, что уменьшает размеры изображений). Это означает, что ваш HTTP-трафик будет проходить через прокси на стороне оператора, который вполне может быть преобразован в NAT.

Одним из способов избежать этого является отправка явного IP-адреса noip (из их документации ):

curl http://username:password@dynupdate.no-ip.com/nic/update?hostname=mytest.example.com&myip=1.2.3.4 

Это может быть легко интегрировано в скрипт оболочки:

#!/bin/bash  IP=$(/sbin/ip -4 a l wwan0 | grep 'inet ' | grep -oP '(?<=inet\s)\d+(\.\d+)')  curl "http://username:password@dynupdate.no-ip.com/nic/update?hostname=mytest.example.com&myip=$" 

Сделайте этот скрипт исполняемым и запускайте его cronкаждые 10 минут или около того:

chmod 755 /home/user/update_noip.sh crontab -e # Add: */10 * * * * /home/user/update_noip.sh >/dev/null 2>&1 
Спасибо, @mtak, за быстрый и лаконичный ответ! Меня немного смущает, что я даже не думал проверять документацию noip, но эй, мы всего лишь люди. Спасибо за сценарий, что-то новое, чтобы расширить мой кругозор! krg 6 лет назад 0