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.
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 -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.
The IP tools will show IPV6 addresses:
ip addr | grep inet6
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
Using curl vs ip is allowing me to check that this ip address is reachable from the web, when ip is only showing me the adress. Dig is not an available command on my machines.