From a03b89039266b8e2a9cf95eef026365a863a8431 Mon Sep 17 00:00:00 2001 From: Viacheslav Hletenko Date: Tue, 17 May 2022 11:19:07 +0000 Subject: op-mode: T4429: Ability to detect external IP address In some cases, it is useful to detect own external IP address for example if the host behind NAT Send curl request to random online service from the list to detect IP address ; show ip external ; 192.0.2.95 --- src/op_mode/show_ip_external.sh | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100755 src/op_mode/show_ip_external.sh (limited to 'src/op_mode') diff --git a/src/op_mode/show_ip_external.sh b/src/op_mode/show_ip_external.sh new file mode 100755 index 000000000..275d05278 --- /dev/null +++ b/src/op_mode/show_ip_external.sh @@ -0,0 +1,19 @@ +#!/usr/bin/env bash + +# Detect an external IP address +# Use random services for checking + + +array=( + ipinfo.io/ip + ifconfig.me + ipecho.net/plain + icanhazip.com + v4.ident.me + checkip.amazonaws.com +) + +size=${#array[@]} +index=$(($RANDOM % $size)) + +curl --silent ${array[$index]} | tr -d "[:space:]" && echo -- cgit v1.2.3