#!/bin/bash
-{
- set -e
+function __show_my_ip {
set -u
+ set -e
- ipv4=$(curl -s https://api.ipify.org)
- ipv6=$(curl -s https://api6.ipify.org)
+ ipv4=$(curl -s https://api.ipify.org || true)
+ ipv6=$(curl -s https://api6.ipify.org || true)
- if [ -n "$ipv4" ]; then
+ if [[ -n "${ipv4}" ]]; then
echo "IPv4 (A) : $ipv4"
fi
- if [ -n "$ipv6" ] && [ "ipv6" != "ipv4" ]; then
+ if [[ -n "$ipv6" ]] && [[ "ipv6" != "ipv4" ]]; then
echo "IPv6 (AAAA): $ipv6"
fi
+
+ if [[ -z "$ipv4" ]] && [[ -z "ipv6" ]]; then
+ >&2 echo "error: no public IP address"
+ fi
}
+
+__show_my_ip