How do I check the IPv6 address via command line? For IPv4 I simply use:
curl ipinfo.io/ip
This doesn't work for IPv6.
to show the localy listed ipv6 address one can use
ip -6 addr This will show all locally configured ipv6 address including the link-local address. to show just global reachable addresses you can use
ip -6 addr show scope global when you use a service like curl ipinfo.io/ip you are most often trying to work out the nat addresses you are using to reach the internet. Nat is much less common with IPv6 however there are many "whatsmyip" type service for ipv6 e.g.
With DNS:
dig -t aaaa whoami.akamai.net dig -6 TXT +short o-o.myaddr.l.google.com @ns1.google.com dig -t aaaa +short myip.opendns.com @resolver1.opendns.com With HTTPS
curl -6 https://ifconfig.co curl -6 https://ipv6.icanhazip.com with telnet
telnet -6 ipv6.telnetmyip.com Even With ssh
ssh -6 sshmyip.com I have seen this service over many other protocols as well so google and have fun ;)
ipinfo.io/ip doesn't support IPv6. You may want to try:
curl -6 https://ifconfig.co/ip instead.
ip.sb support both IPv4 and IPv6. To get IPv6 adress,use:
curl -6 ip.sb And, curl -4 ip.sb for IPv4 adress.
The IP tools will show IPV6 addresses:
ip addr | grep inet6 scope global or scope link? If you want to find the public IPv6 address you can do this with the dig command and then pipe the result into the sed command to remove the closing quotes.
dig -6 TXT +short o-o.myaddr.l.google.com @ns1.google.com | sed 's|"||g' Another alternative is using the curl command and pulling the IP address from a URL such as OpenDNS'.
root@ubuntu:~# curl -s -6 "https://myipv6.p1.opendns.com/get_my_ip" { "ip": "2a00:2345:dead:beef:1234:4567:89ab:cdef" } To print only the value (the IP address) you can specify the -r parameter.
root@ubuntu:~# curl -s -6 "https://myipv6.p1.opendns.com/get_my_ip" | jq -r '.ip' 2a00:2345:dead:beef:1234:4567:89ab:cdef This works for "lo" AND "eth0-X", IPv4 and IPv6, respectively:
ip -4 addr
ip -6 addr
If we are talking about IPv6 address, it should be white in general. It means the inet6 address with global scope should be equal to your IPv6 address.
ip addr | grep -Po "(?<=inet6\s).+(?=scope\sglobal)"
wget -O - v6.ident.me 2>/dev/null && echowork?Could not resolve host: v6.ipinfo.ip