On Mon, 29 Oct 2001, "Juan Luis Baptiste M." wrote:
> I'm working in a local network with no internet connection, what I'm trying to
> do is to connect an ipv6 network with an ipv4 network using an address
> translator from the MIT. The translator asks for an ipv4-mapped ipv6 address
> when comunicating an ipv6 node with a ipv4 node in the other network, where the
> ipv4 address of the ipv4-mapped ipv6 address is the address of the ipv4 node.
> For example, if I want to ping 172.25.79.152 from 3ffe:1ce1:2:0:200::1 I have to
> do ping6 ::ffff:172.25.79.152, and the address translator would do the
> translation and send the translated packet to 172.25.79.152.
>
> I configured sit0 like this:
> DEVICE="sit0"
> BOOTPROTO="none"
> ONBOOT="yes"
> IPV6INIT="yes"
> IPV6TUNNELIPV4="172.25.79.152" #the machine behind the translator
> IPV6TUNNELIPV4LOCAL="172.25.79.156" #the ipv4 address of the translator
>
> If I ping6 to the ipv4mapped ipv6 address I get this:
>
> [root@gt64 network-scripts]# ping6 ::ffff:172.25.79.152
> ping: bind icmp socket: Cannot assign requested address
A problem is that Linux ping6 does bind() (to get a source
address/device right):
--8<--
if (bind(icmp_sock, (struct sockaddr*)&source, sizeof(source)) == -1) {
perror("ping: bind icmp socket");
exit(2);
}
--8<--
binding to a mapped address, which corresponds internally an IPv4 address,
is fatal for an IPv6-application like ping6.
There are some ways how ping6 could be modified to work around this I
guess.
You could also try to use different programs first if they'd be more
lenient..
--
Pekka Savola "Tell me of difficulties surmounted,
Netcore Oy not those you stumble over and fall"
Systems. Networks. Security. -- Robert Jordan: A Crown of Swords
---------------------------------------------------------------------
The IPv6 Users Mailing List
Unsubscribe by sending "unsubscribe users" to [EMAIL PROTECTED]