> I have been testing rping with ipv6 address on OFED 1.5. I am seeing a > problem with ipv6 address resolution. rping is not always sending > neighbor solicitation out the correct interface. Running tcpdumps I > discovered that the neighbor solicitation is being sent out the first > interface that was configured, in my case eth0 and not the ib0 > interface. > > This is the test I am running: > > Host A: > $ ip address show ib0 | grep inet6 > inet6 fe80::202:c903:1:1925/64 scope link > > $ rping -s -v -a ::0 > > Host B: > $ rping -c -v -a fe80::202:c903:1:1925 > > cma event RDMA_CM_EVENT_ADDR_ERROR, error -110 > waiting for addr/route resolution state 1 > > > Using tcpdump I verified the neighbor solicitation packets went out the > eth0 interface not ib0. If I "ifdown eth0" I see the neighbor > solicitation go out ib0 and the rping works. BTW: Ping6 works ok; > however, it requires that I specify the interface to use on the command > line: $ ping6 fe80::202:c903:1:1925%ib0
I'm not sure how many places in the stack have to be fixed for this, but for this to work certainly at least rping needs a way to specify which interface to use. There is no routing for IPv6 link-local addresses that says which device to use... a given address with prefix fe80: could conceivably exist on multiple links (and correspond to different destinations on each link), and the networking stack has no way to know which link to use unless you tell it somehow. (This is why ping6 requires the %ib0 specifier) _______________________________________________ ewg mailing list ewg@lists.openfabrics.org http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg