[SOLVED] Re: IPv6 forwarding to TAP-interface fails

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 21 Dec 2009 11:46:48 +0500
Mike Kazantsev <mk.fraggod@xxxxxxxxx> wrote:

> Then I start the simple ping6 from lan network to vde (VM):
...
> 
>   IP6 2001:470:1f0b:11de::22 > ff02::1:ff00:21: ICMP6, neighbor
> solicitation, who has 2001:470:1f0b:11de::21, length 32 
>   IN=vde OUT= MAC=33:33:ff:00:00:21:00:16:3e:16:38:41:86:dd
>    SRC=2001:0470:1f0b:11de:0000:0000:0000:0022
>    DST=ff02:0000:0000:0000:0000:0001:ff00:0021
>    LEN=72 TC=0 HOPLIMIT=255 FLOWLBL=0 PROTO=ICMPv6 TYPE=135 CODE=0
>   
>   IP6 2001:470:1f0b:11de::21 > 2001:470:1f0b:11de::22: ICMP6,
> neighbor advertisement, tgt is 2001:470:1f0b:11de::21, length 32 
>   IN= OUT=vde
>    SRC=2001:0470:1f0b:11de:0000:0000:0000:0021
>    DST=2001:0470:1f0b:11de:0000:0000:0000:0022
>    LEN=72 TC=0 HOPLIMIT=255 FLOWLBL=0 PROTO=ICMPv6 TYPE=136 CODE=0
>   

Just looking at these lines as I pasted them actually helped: ICMP6
neighbor solicitation request was sent from 22 to 21, while the packets
were originated from 21.
Made me wondering about what kind of backwards magic is at work here...


> ip addr:
...
>   7: vde: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 500
>       link/ether b2:f5:e7:68:fd:9e brd ff:ff:ff:ff:ff:ff
>       inet 192.168.0.20/28 scope global vde
>       inet6 2001:470:1f0b:11de::20/125 scope global
>          valid_lft forever preferred_lft forever

And here's the problem: no link-local address on the interface.
"ip addr flush dev vde" in init.d script setting up interface did that,
that was the mistake.

With this address added (or rather preserved), router is able to send
neighbor solicitation requests from it and everything works fine.

Anyway, strange thing is that, apparently, VM on the other side is able
to send these requests without link-local address, using global one
instead:

  2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qlen 1000
      inet6 2001:470:1f0b:11de::22/125 scope global
         valid_lft forever preferred_lft forever

Guess older kernel (2.6.30.4) there is the cause of it, and that's also
why it worked before with pretty much the same setup.

Thanks again to Pascal for pointing me in the right direction.


-- 
Mike Kazantsev // fraggod.net

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Netfilter Development]     [Linux Kernel Networking Development]     [Netem]     [Berkeley Packet Filter]     [Linux Kernel Development]     [Advanced Routing & Traffice Control]     [Bugtraq]

  Powered by Linux