Introduction: I'm working on a 6lowPAN projects of Wireless Sensor Networks. Basically, I have a set of nodes (Contiki OS) which are running on a linux host. Each nodes have its own tap interface which are bridged on br0. Inside the bridge, all things are working well : node can send request and receive properly neighbor exchanges. All exchanges are using 6lowPAN (IPV6 adaptation).
Problem: Now, I'm interested by sending request from the host to nodes. So, I add route rules for the destination bbbb::/64 to br0. I can ping any node from the host linux, unfortunately UDP requests fail. I'm using Firefox to send (through the Copper plugin) a UDP packet which is correctly received and processed by the node, but the response is rejected by the bridge which replies host unreachable (Port unreachable).
Questions: Are there constraints or particular behaviours on routing rules between bridge and its host? How can I get more log information about Linux's IP stack to determine why it doesn't forward packets to the Firefox socket?
- I checked with
netstatif Firefox is effectively listening on the proper response port [OK]
- I checked with
ncif the host allows UDP IPv6 exchange [OK]
- No firewall rules [OK]
- I manually added an IPV6 address to br0 bbbb::1/64 with and without routing rules but this didn't work (ping no works at all) [OK]
- A lot of other exotic explorations
brctl addbr br0 ip tuntap add dev br0 mode tap brctl addif br0 tapXXX echo 1 > /proc/sys/net/ipv6/conf/all/forwarding ip -6 route add bbbb::/64 dev br0 ping6 ff02::1 -I br0 [OK] ping6 bbbb::ff02:1:2:3 [OK] firefox on coap://[bbbb::ff02:1:2:3]/hello <= FAILED (response is blocked by br0 bridge)
br0 Link encap:Ethernet HWaddr e2:81:42:77:bf:10 inet6 addr: fe80::28bf:62ff:fed7:54ac/64 Scope:Link
AIC Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name udp6 0 0 fe80::28bf:62ff:f:46939 bbbb::ff:fe00:1%1:5683 ESTABLISHED 2544/firefox
fe80::28bf:62ff:fed7:54ac bbbb::ff:fe00:1 COAP 73 Confirmable, GET, /hello1 fe80::ff:fe00:1 fe80::28bf:62ff:fed7:54ac COAP 83 Acknowledgment, 2.05 fe80::28bf:62ff:fed7:54ac fe80::ff:fe00:1 ICMPv6 131 Destination Unreachable (Port unreachable)