[Bug 822888] New: IPv4-mapped IPv6 addresses do not work
https://bugzilla.novell.com/show_bug.cgi?id=822888 https://bugzilla.novell.com/show_bug.cgi?id=822888#c0 Summary: IPv4-mapped IPv6 addresses do not work Classification: openSUSE Product: openSUSE 12.3 Version: Final Platform: x86-64 OS/Version: openSUSE 12.3 Status: NEW Severity: Normal Priority: P5 - None Component: Network AssignedTo: bnc-team-screening@forge.provo.novell.com ReportedBy: james.knott@rogers.com QAContact: qa-bugs@suse.de Found By: --- Blocker: --- User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:20.0) Gecko/20100101 Firefox/20.0 SeaMonkey/2.17 Lightning/2.2b1 IPv4-mapped IPv6 addresses is a method of expressing an IPv4 address as an IPv6 address. For example, 172.16.1.10 would become ::ffff:172.16.1.10. As I recall, this worked in openSUSE when I tried it about 3 years ago, but it does not now. As an experiment, I also tried it in Window 7, where it does work. When I try it in openSUSE, Wireshark shows the computer sending the packet to the router, which returns an unreachable error. With Windows, the address is converted to IPv4 as expected. Here is the Wikipedia link on this: https://en.wikipedia.org/wiki/IPv6#IPv4-mapped_IPv6_addresses And the RFC: https://tools.ietf.org/html/rfc4291 2.5.5.2. IPv4-Mapped IPv6 Address Reproducible: Always Steps to Reproduce: 1.ping6 an address such as ::ffff:172.16.1.10 2.That address should be converted to 172.16.1.10 3.ping6 gets an echo Actual Results: Instead of converting to an IPv4 address, the IPv4 mapped IPv6 address is sent to the router, which returns an unreachable error. Expected Results: Mapped address should have been converted to IPv4 and pinged the destination. See also IPv6 Essentials 2nd edition by Silvia Hagen (O'Reilly), page 45. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=822888 https://bugzilla.novell.com/show_bug.cgi?id=822888#c Ye Yuan <yyuan@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |yyuan@suse.com AssignedTo|bnc-team-screening@forge.pr |ms@suse.com |ovo.novell.com | -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=822888 https://bugzilla.novell.com/show_bug.cgi?id=822888#c1 Jiri Bohac <jbohac@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |NEEDINFO CC| |jbohac@suse.com InfoProvider| |james.knott@rogers.com --- Comment #1 from Jiri Bohac <jbohac@suse.com> 2013-09-27 20:59:20 CEST --- This works e.g. for TCP or UDP. ping6 is an ipv6-only program, it sends raw IPv6 packets. ICMPv6 is not the same protocol as ICMP, it has other differences than the IP protocol header. ping6 simply can not send ICMP requests and would not understand ICMP replies.
When I try it in openSUSE, Wireshark shows the computer sending the packet to the router, which returns an unreachable error.
This is strange, ping6 does not even send the packet to the network for me. sendto() returns with an error. What is the exact command you were running? Can you please attach the tcpdump/wireshark dump? Thanks! -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=822888 https://bugzilla.novell.com/show_bug.cgi?id=822888#c2 --- Comment #2 from James Knott <james.knott@rogers.com> 2013-09-27 20:14:04 UTC --- Created an attachment (id=560642) --> (http://bugzilla.novell.com/attachment.cgi?id=560642) Wireshark capture Wireshark capture -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=822888 https://bugzilla.novell.com/show_bug.cgi?id=822888#c3 James Knott <james.knott@rogers.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEEDINFO |NEW InfoProvider|james.knott@rogers.com | --- Comment #3 from James Knott <james.knott@rogers.com> 2013-09-27 20:15:10 UTC --- Here's the command and result: $ ping6 ::ffff:172.16.1.10 PING ::ffff:172.16.1.10(::ffff:172.16.1.10) 56 data bytes
From 2001:5c0:1100:abcd::1 icmp_seq=1 Destination unreachable: Address unreachable From 2001:5c0:1100:abcd::1 icmp_seq=2 Destination unreachable: Address unreachable From 2001:5c0:1100:abcd::1 icmp_seq=3 Destination unreachable: Address unreachable
I have changed the router IPv6 address to protect the guilty. ;-) As I mentioned, I see the router sending back unreachable addresses in Wireshark. In Windows 7 ping ::ffff:172.16.1.10 works, but ping -6 ::ffff:172.16.1.10 does not. This indicates that Windows is converting to an IPv4 address before trying. If I try just ping ::ffff:172.16 on Linux, I get unknown host ::ffff:172.16.1.10, so Linux isn't even trying to convert the address. As you mentioned TCP works, as I am able to ssh using that address format. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=822888 https://bugzilla.novell.com/show_bug.cgi?id=822888#c4 Jiri Bohac <jbohac@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |INVALID --- Comment #4 from Jiri Bohac <jbohac@suse.com> 2013-10-01 12:00:49 CEST --- I am now getting the same results as you, I did not have the setup right previously. However, I believe this is not a bug. I agree it may be inconvenient that there are two separate programs, ping and ping6. What the windows version of ping probably does is it detects whether the address is IPv4 or IPv6 and then sends out ICMP or ICMPv6 echo requests. And it detects ::ffff... to be an IPv4 address. With the two programs being separate, even if ping6 detected the mapped address, it is not capable of sending or receiving ICMP packets, it only speaks ICMPv6. ping (the IPv4 one) could detect this and convert to the IPv4 address. I don't think anyone will care enough to implement this feature. There is not much that can be done here, unless someone writes a ping/ping6 replacement that speaks both protocols. Closing as INVALID (but thanks for the report anyway). -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@novell.com