OpenWrt получение внешнего ip-адреса cli

Получить IP-адрес внешнего интерфейса можно командой:

ubus call network.interface.wan status | jsonfilter -e '@["ipv4-address"][0].address'

также можно получить адрес с других интерфейсов откорректировав параметр "network.interface.wan"

например для LAN:

ubus call network.interface.lan status | jsonfilter -e '@["ipv4-address"][0].address'

посмотреть список интерфейсов можно командой:

ubus list network.interface.*

Далее при необходимости полученные данные использовать для передачи во внешние скрипты, например для отправления по mqtt:

mosquitto_pub -h HOSTNAME -p 1883 -u "USERNAME" -P "PASSWD" -t 'openwrt/wan_ip' -m "$(ubus call network.interface.wan status | jsonfilter -e '@["ipv4-address"][0].address')"

Linux