Why can't I ping local ipv6 windows machines from Ubuntu?

2

If I ping6 external ipv6 hostnames or addresses (e.g. ipv6.google.com) it works, but if I try to ping6 an ipv6 hostname or address it doesn't work. If I ping the same address from a windows machine on the LAN, it works. Why would this happen?

Target Machines are running Windows 7 or Server 2008 R2 and Teredo My machine is running Ubuntu 10.04 and Miredo

David

Posted 2011-02-21T02:14:07.707

Reputation: 525

Please provide examples of how you are pinging the machine. – Jeremy Visser – 2011-02-21T11:57:04.017

Answers

1

You might want to try pinging the link-local address to narrow it down between a firewall or other networking problem between the two hosts, and a Teredo problem. I have heard of problems where, when using Teredo-based IPv6 addresses, you cannot ping other machines on your own subnet. For example, I can ping a Windows 7 machine on the same network as my Ubuntu machine by doing this (on my Ubuntu machine):

$ ping6 -c 5 -I eth0 fe80::e1ce:694a:18c0:6530

Note, the -I argument is important when pinging a link-local address because otherwise the host OS has no way to know which link-local interface you're talking about. (for all it knows, you want to use the Teredo interface, or the loopback interface, for example.)

mpontillo

Posted 2011-02-21T02:14:07.707

Reputation: 931

It works if I add the -I eth0 argument! Thanks! I wonder why ping6 wouldn't pick eth0 first though just like ping does – David – 2011-02-22T06:33:25.260

@David, it can't pick eth0 because the address alone is not enough information - all interfaces have a link-local address in the fe80::/64 subnet. if you have a global unicast address assigned to the interface, the per-interface distinction would not be needed. If the address starts with fe80::, it is a link-local address and requires an interface to "scope" the request. Sometimes you'll see the scope written after the address, such as fe80::1%eth0. (all that said; I think you're right in that if there was only one non-loopback interface, the system should pick that one.) – mpontillo – 2011-02-22T06:42:23.937

0

I'm not sure exactly what you're trying to ping, but if you're trying to ping a Windows machine then Windows Firewall may be blocking the ping request - disable it and it should work.

rm5248

Posted 2011-02-21T02:14:07.707

Reputation:

1Windows firewall can't be the problem because I can ping from other windows machines, just not from my Ubuntu machine – David – 2011-02-22T06:32:14.887