hi,
i am playing with ipv6 and have some problems with firefox. ping6 and ssh are ok but with firefox i could not find a solution to connect via ipv6-network. what is the problem?
-------- $ firefox [::1] == is ok $ firefox [::1%lo] == no wget, lynx, elinks == no
$ firefox [fe80::216:cbff:fea3:7629] == no $ firefox [fe80::216:cbff:fea3:7629]%eth0 == no wget, lynx, elinks == no ----/----
www.ipv6.org http://www.youtube.com/watch?v=_y36fG2Oba0 "the day the routers died"
ping6 %eth0 and ssh %eth0 are ok:
# ifconfig eth0 Link encap:Ethernet Hardware Adresse 00:16:CB:A3:76:29 inet Adresse:192.168.101.101 Bcast:192.168.101.255 Maske:255.255.255.0 inet6 Adresse: fe80::216:cbff:fea3:7629/64 Gültigkeitsbereich:Verbindung
# ping6 ::1 == ok # ping6 fe80::216:cbff:fea3:7629 == no # ping6 fe80::216:cbff:fea3:7629%eth0 == ok # ping6 fe80::216:cbff:fea3:7629 -I eth0 == ok
# ssh fe80::216:cbff:fea3:7629%eth0 == ok # ssh fe80::216:cbff:fea3:7629 == invalid argument
# lsof -i :22 COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME sshd 3199 root 3u IPv6 6766 TCP *:ssh (LISTEN) sshd 6504 root 3r IPv6 71299 TCP [fe80::216:cbff:fea3:7629]:ssh->[fe80::213:d3ff:fee2:daa7]:57303 (ESTABLISHED) sshd 6506 admin 3u IPv6 71299 TCP [fe80::216:cbff:fea3:7629]:ssh->[fe80::213:d3ff:fee2:daa7]:57303 (ESTABLISHED)
# lsof -i :80 COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME httpd 3902 root 4u IPv6 8222 TCP *:http (LISTEN) httpd 4039 apache 4u IPv6 8222 TCP *:http (LISTEN) httpd 4040 apache 4u IPv6 8222 TCP *:http (LISTEN) httpd 4041 apache 4u IPv6 8222 TCP *:http (LISTEN) httpd 4042 apache 4u IPv6 8222 TCP *:http (LISTEN) httpd 4043 apache 4u IPv6 8222 TCP *:http (LISTEN) httpd 4044 apache 4u IPv6 8222 TCP *:http (LISTEN) httpd 4047 apache 4u IPv6 8222 TCP *:http (LISTEN) httpd 4048 apache 4u IPv6 8222 TCP *:http (LISTEN)
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
shrek-m@gmx.de wrote:
$ firefox [::1] == is ok $ firefox [::1%lo] == no wget, lynx, elinks == no
$ firefox [fe80::216:cbff:fea3:7629] == no $ firefox [fe80::216:cbff:fea3:7629]%eth0 == no wget, lynx, elinks == no
I think I've opened bugs about mozilla mishandling IPv6 URLs five years or so ago. Maybe it's worthwhile doing this again, they are likely forgotten. Just make sure you cite the relevant RFCs. I'm not sure how much good it does to file it in our BZ, the upstream one is probably better.
# ping6 ::1 == ok # ping6 fe80::216:cbff:fea3:7629 == no
That's a link-local address. From strace I see that the interface number is not filled in to the liking of the kernel and the connect() syscall fails. Should be worth filing a bug. It might be a kernel issue but file it against ping6 for now.
# ssh fe80::216:cbff:fea3:7629%eth0 == ok # ssh fe80::216:cbff:fea3:7629 == invalid argument
Likely the same issue as for ping6.
- -- ➧ Ulrich Drepper ➧ Red Hat, Inc. ➧ 444 Castro St ➧ Mountain View, CA ❖
On Wed, Oct 31, 2007 at 09:04:13AM -0700, Ulrich Drepper wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
shrek-m@gmx.de wrote:
$ firefox [::1] == is ok $ firefox [::1%lo] == no wget, lynx, elinks == no
$ firefox [fe80::216:cbff:fea3:7629] == no $ firefox [fe80::216:cbff:fea3:7629]%eth0 == no wget, lynx, elinks == no # ping6 ::1 == ok # ping6 fe80::216:cbff:fea3:7629 == no
That's a link-local address. From strace I see that the interface number is not filled in to the liking of the kernel and the connect() syscall fails. Should be worth filing a bug. It might be a kernel issue but file it against ping6 for now.
Err. With link local addresses you MUST include the interface explicitly (either %ethX or -I eth1). Otherwise it makes no sense, the kernel has no way of knowing what interface you wanted to use, you should use global ipv6 addresses (and corresponding routing entries).
elinks http://%5Bfe80::204:23ff:fe5b:ce53%eth1%5D/ works for me btw.. Then again, rfc3986 doesn't seem to even allow that syntax, so it working is probably even a "bug" and firefox etc. are right.