Subject: kern/34686: IPv6 neighbour discovery going wrong
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: None <reinoud@netbsd.org>
List: netbsd-bugs
Date: 10/01/2006 14:45:00
>Number:         34686
>Category:       kern
>Synopsis:       IPv6 neighbour discovery going wrong
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Oct 01 14:45:00 +0000 2006
>Originator:     Reinoud Zandijk
>Release:        NetBSD 4.0_BETA
>Organization:
	
>Environment:
	
	
System: NetBSD rangerover 4.0_BETA NetBSD 4.0_BETA (GENERIC) #2: Sun Oct 1 14:22:50 CEST 2006 reinoud@heethoofdje.kasbah:/usr/tmp/heethoofdje.obj/sys/arch/sparc/compile/GENERIC sparc
Architecture: sparc
Machine: sparc

My rc.d is configured as follows :
# networking
ip6mode=router
ip6uniquelocal=YES
rtsol=NO
route6d=YES
route6d_flags=""
pf=YES

 210c211
 < #options 	GATEWAY		# packet forwarding ("router switch")
 ---
 > options 	GATEWAY		# packet forwarding ("router switch")
 214c215
 < options 	NS		# Xerox NS networking
 ---
 > #options 	NS		# Xerox NS networking
 216c217
 < options 	ISO,TPIP	# OSI networking
 ---
 > #options 	ISO,TPIP	# OSI networking
 225,227c226,228
 < options 	PPP_BSDCOMP	# Add BSD compression to ppp device
 < options 	PPP_DEFLATE	# Add deflate (libz) compression to ppp device
 < options 	PPP_FILTER	# Add active filters for ppp (via bpf)
 ---
 > #options 	PPP_BSDCOMP	# Add BSD compression to ppp device
 > #options 	PPP_DEFLATE	# Add deflate (libz) compression to ppp device
 > #options 	PPP_FILTER	# Add active filters for ppp (via bpf)
 608c609
 < pseudo-device	bridge
 ---
 > #pseudo-device	bridge

>Description:

The machine designated as a router is not pinging other machines until its 
pinged by them thus indicating a ndp problem AFAIK. As an example:

reinoud@rangerover 9> ping6 eek
PING6(56=40+8+8 bytes) 2001:7b8:341::1 --> 2001:7b8:341::f
16 bytes from 2001:7b8:341::f, icmp_seq=29 hlim=64 time=697.405 ms
16 bytes from 2001:7b8:341::f, icmp_seq=30 hlim=64 time=2.208 ms
16 bytes from 2001:7b8:341::f, icmp_seq=31 hlim=64 time=2.169 ms
16 bytes from 2001:7b8:341::f, icmp_seq=32 hlim=64 time=2.33 ms

eek: ping6 rangerover.13thmonkey.org
PING6(56=40+8+8 bytes) 2001:7b8:341::f --> 2001:7b8:341::1
16 bytes from 2001:7b8:341::1, icmp_seq=1 hlim=64 time=1.792 ms
^C

As soon as i ping back the router, it suddenly can ping the machine.


	
>How-To-Repeat:

tryout to ping a machine that is not yet in the ndp from a machine that is 
configured as an IPv6 router. It won't work until the destination machine 
pings the router once.

	
>Fix:
Unknown, propably and most likely inside IPv6 stack.
	

>Unformatted:
 Sources downloaded from 200609140000Z. Kernel from today.