On 9 April 2015 at 12:10, Kengo NAKAHARA <k-nakah...@iij.ad.jp> wrote:
> Hi,
>
> On 2015/04/03 16:14, Takahiro HAYASHI wrote:
>> It seems that IFF_POINTTOPOINT interfaces like tun and gif cannot
>> receive ipv6 packets.
>> This occurs on NetBSD/amd64 -current since Feb 27 2015.
>>
>> For example, establishing gif tunnnel between 2 hosts.
>>
>> [host1] <---> [host2]
>> 192.168.0.1   192.168.0.2  ipv4 address of real interface
>> fd00::1       fd00::2      gif address
>>
>> When I ping6, a host can send ICMPv6 ECHO(128), but the other host
>> returns ICMPv6 DST_UNREACH(1) code UNREACH_ADDR(3) to pinging host.
>
> I think the reason of this issue is below commit:
>     
> http://www.nerv.org/netbsd/?q=id:20150226T095446Z.75354d997222ae09acc944ba1c6cf573c3ea724b
>
> This commit changes the route entry for gif as describe below
> ========== before ==========
> Internet6:
> Destination                        Gateway                        Flags    
> Refs      Use    Mtu Interface
> fd00::2                            link#13                        UHL         
> 0        0      -  lo0
> ========== before ==========
> ========== after ==========
> Internet6:
> Destination                        Gateway                        Flags    
> Refs      Use    Mtu Interface
> fd00::2                            fd00::2                        UH          
> -        -      -  gif0
> ========== after ==========
>
> This route change caused the function flow change in ip6_input(), in
> paticular the below line
>     http://nxr.netbsd.org/xref/src/sys/netinet6/ip6_input.c#497
> After above commit, this statement become false, and then, the packets
> is discarded through line#565.
>
> I found the above reason, however I have no idea to fix this issue...
>

Could you file a PR?

Justin

Reply via email to