You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by Darren Dobkin <da...@noaa.gov> on 2013/10/14 03:17:57 UTC

using Camel-Netty to multicast UDP beyond localhost

I'm running the NettyUDPAsyncTest in a Fedora 19 virtual machine inside
VirtualBox.  As the test is written, sending and receiving via localhost
works fine.  Now I would like to multicast on my VLAN, so I changed the test
to:

        
sendFile("netty:udp://224.1.1.1:1201?sync=false&networkInterface=p7p1&broadcast=true");

         .........

        
from("netty:udp://224.1.1.1:1201?sync=false&networkInterface=p7p1&broadcast=true")

... where p7p1 is the VLAN interface, but the test message is not received. 
I've tried to eliminate any firewall issues by disabling the firewall.  Am I
missing something obvious?  

-- Darren



--
View this message in context: http://camel.465427.n5.nabble.com/using-Camel-Netty-to-multicast-UDP-beyond-localhost-tp5741490.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Re: using Camel-Netty to multicast UDP beyond localhost

Posted by Darren Dobkin <da...@noaa.gov>.
Yes, I am using Camel 2.12, and I am using the networkInterface option.  My
problem is that when I specify "networkInterface=vboxnet0", I see packets
instead sent to wlan0.

I've debugged down into
SingleUDPNettyServerBootstrapFactory.startServerBootstrap(), where it does
look like the correct interface (vboxnet0) is passed to
datagramChannel.joinGroup(hostAddress, multicastNetworkInterface).  I
haven't been able to follow it any further than that.

On the theory that the problem is specific to VirtualBox, I'm going to next
try the test on a VM Ware VM.

-- Darren



--
View this message in context: http://camel.465427.n5.nabble.com/using-Camel-Netty-to-multicast-UDP-beyond-localhost-tp5741490p5741610.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Re: using Camel-Netty to multicast UDP beyond localhost

Posted by Charles Moulliard <ch...@gmail.com>.
Darren,

Since Camel 2.12, you can use this option to specify the interface to be
used : networkInterface

Regards,



On Tue, Oct 15, 2013 at 3:35 PM, Darren Dobkin <da...@noaa.gov>wrote:

> Yes, and I have a lot more information now.  The bottom line is that I
> suspect the wrong interface is being selected in camel-netty.  Here are the
> details:
>
> I'm now testing a total of six interfaces on two machines.  My VirtualBox
> host is my Ubuntu laptop with three interfaces: localhost, vboxnet0 (the
> VLAN), and wlan0 (my wi-fi card).  The second machine is a virtual F19 with
> localhost, p7p1 (the VLAN), and p2p1 (a NAT interface).  I've disabled
> firewalls on both machines and I'm running Wireshark on the Ubuntu host.
>
> On the Ubuntu host, I ran NettyUDPAsyncTest using three URIs:
>
>                 "netty:udp://localhost:{{port}}?sync=false"
>
> "netty://udp://
> 224.1.1.1:1201?sync=false&broadcast=true&networkInterface=wlan0"
>
> "netty://udp://
> 224.1.1.1:1201?sync=false&broadcast=true&networkInterface=vboxnet0"
>
> Using localhost, the test passes and Wireshark shows UDP packets on
> 127.0.0.1.  Using wlan0, the test passes and Wireshark shows UDP packets on
> 192.168.1.7=wlan0.  However, using vboxnet0, the test fails but Wireshark
> shows UDP packets on 192.168.1.7=wlan0, not 192.168.56.1=vboxnet0 !  It
> looks like camel-netty is using wlan0 even when I specify vboxnet0.
>
> On the F19 virt, I tried:
>
>                 "netty:udp://localhost:{{port}}?sync=false"
>
> "netty:udp://
> 224.1.1.1:1201?sync=false&networkInterface=p2p1&broadcast=true"
>
> "netty:udp://
> 224.1.1.1:1201?sync=false&networkInterface=p7p1&broadcast=true"
>
> On localhost and p2p1, the test passes.  Wireshark sees nothing, which I
> suppose is expected since the Ubuntu host is not connected to these
> interfaces.  On p7p1 (which is the goal of this exercise) the test fails
> and, again, nothing shows on Wireshark.  Given what is happening on the
> Ubuntu host, I suspect that when I specify p7p1 on the F19 virt,
> camel-netty
> is mistakenly sending on p2p1 and then trying to receive on p7p1.
>
> I'm going to try debugging down through camel-netty, but if you have any
> suggestions in the meantime, please advise.
>
> -- Darren
>
>
>
>
> --
> View this message in context:
> http://camel.465427.n5.nabble.com/using-Camel-Netty-to-multicast-UDP-beyond-localhost-tp5741490p5741601.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>



-- 
Charles Moulliard
Apache Committer / Architect @RedHat
Twitter : @cmoulliard | Blog :  http://cmoulliard.github.io

Re: using Camel-Netty to multicast UDP beyond localhost

Posted by Darren Dobkin <da...@noaa.gov>.
Yes, and I have a lot more information now.  The bottom line is that I
suspect the wrong interface is being selected in camel-netty.  Here are the
details:

I'm now testing a total of six interfaces on two machines.  My VirtualBox
host is my Ubuntu laptop with three interfaces: localhost, vboxnet0 (the
VLAN), and wlan0 (my wi-fi card).  The second machine is a virtual F19 with
localhost, p7p1 (the VLAN), and p2p1 (a NAT interface).  I've disabled
firewalls on both machines and I'm running Wireshark on the Ubuntu host.

On the Ubuntu host, I ran NettyUDPAsyncTest using three URIs:

		"netty:udp://localhost:{{port}}?sync=false"
	
"netty://udp://224.1.1.1:1201?sync=false&broadcast=true&networkInterface=wlan0"
	
"netty://udp://224.1.1.1:1201?sync=false&broadcast=true&networkInterface=vboxnet0"

Using localhost, the test passes and Wireshark shows UDP packets on
127.0.0.1.  Using wlan0, the test passes and Wireshark shows UDP packets on
192.168.1.7=wlan0.  However, using vboxnet0, the test fails but Wireshark
shows UDP packets on 192.168.1.7=wlan0, not 192.168.56.1=vboxnet0 !  It
looks like camel-netty is using wlan0 even when I specify vboxnet0.

On the F19 virt, I tried:

		"netty:udp://localhost:{{port}}?sync=false"
	
"netty:udp://224.1.1.1:1201?sync=false&networkInterface=p2p1&broadcast=true"
	
"netty:udp://224.1.1.1:1201?sync=false&networkInterface=p7p1&broadcast=true"

On localhost and p2p1, the test passes.  Wireshark sees nothing, which I
suppose is expected since the Ubuntu host is not connected to these
interfaces.  On p7p1 (which is the goal of this exercise) the test fails
and, again, nothing shows on Wireshark.  Given what is happening on the
Ubuntu host, I suspect that when I specify p7p1 on the F19 virt, camel-netty
is mistakenly sending on p2p1 and then trying to receive on p7p1.

I'm going to try debugging down through camel-netty, but if you have any
suggestions in the meantime, please advise.

-- Darren




--
View this message in context: http://camel.465427.n5.nabble.com/using-Camel-Netty-to-multicast-UDP-beyond-localhost-tp5741490p5741601.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Re: using Camel-Netty to multicast UDP beyond localhost

Posted by Charles Moulliard <ch...@gmail.com>.
Can you sniff the UDP packets to check what is send by the camel netty
producer component and and if the netty consumer receives the packets ?


On Mon, Oct 14, 2013 at 3:17 AM, Darren Dobkin <da...@noaa.gov>wrote:

> I'm running the NettyUDPAsyncTest in a Fedora 19 virtual machine inside
> VirtualBox.  As the test is written, sending and receiving via localhost
> works fine.  Now I would like to multicast on my VLAN, so I changed the
> test
> to:
>
>
> sendFile("netty:udp://
> 224.1.1.1:1201?sync=false&networkInterface=p7p1&broadcast=true");
>
>          .........
>
>
> from("netty:udp://
> 224.1.1.1:1201?sync=false&networkInterface=p7p1&broadcast=true")
>
> ... where p7p1 is the VLAN interface, but the test message is not received.
> I've tried to eliminate any firewall issues by disabling the firewall.  Am
> I
> missing something obvious?
>
> -- Darren
>
>
>
> --
> View this message in context:
> http://camel.465427.n5.nabble.com/using-Camel-Netty-to-multicast-UDP-beyond-localhost-tp5741490.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>



-- 
Charles Moulliard
Apache Committer / Architect @RedHat
Twitter : @cmoulliard | Blog :  http://cmoulliard.github.io