[Xorp-users] OpenBSD IGMP/PIM Issue

Stegen Smith stegen at owns.com
Wed Oct 8 11:46:53 PDT 2008


Hi Bruce,

Thank you very much for your reply.

Here's some additional information on my setup, which I didn't include  
earlier, but probably should have.  I'm using a source build of xorp 1.5
root0p2at-ig0.sv~ uname -a
OpenBSD at-ig0.sv.atomz.com 4.3 ATOMZ_ROUTER#0 i386

root0p2at-ig0.sv~ gcc -v
Reading specs from /usr/lib/gcc-lib/i386-unknown-openbsd4.3/3.3.5/specs
Configured with:
Thread model: single
gcc version 3.3.5 (propolice)

Also note that I found some other posts regarding bugs with xorp and  
gcc with propolice, so I've built it with -fno-stack-protector.

I also neglected to mention that when I start the software, I see the  
following error:

[ 2008/10/08 11:17:46  ERROR xorp_fea:29494 FEA +74  
fibconfig_table_parse_routing_socket.cc parse_buffer_routing_socket ]  
RTM version mismatch: expected 4 got 3
Perhaps that may also be an issue.  (Will touch base with Pavlin on  
where to send cores ;) )

So here's some more information (I'll also cover Pavlin's reply here  
as well)

I've brought up another em interface, without a vlan (i'll try fxp  
next, as that's the only other type of nic i've got lying around), and  
the interface does have ALLMULTI set:
root0p2at-ig0.sv~ ifconfig em2
em2: flags=8a43<UP,BROADCAST,RUNNING,ALLMULTI,SIMPLEX,MULTICAST> mtu  
1500
         lladdr 00:1b:21:26:c2:db
         groups: egress
         media: Ethernet autoselect (1000baseT full-duplex,rxpause)
         status: active
         inet 10.3.48.1 netmask 0xfffff000 broadcast 10.3.63.255
         inet6 fe80::21b:21ff:fe26:c2db%em2 prefixlen 64 scopeid 0x3

I also have mutlicast enabled as per the user manual:

root0p2at-ig0.sv~ grep multicast /etc/rc.conf*
/etc/rc.conf:                   # be sure to enable multicast_router  
below.
/etc/rc.conf:multicast_host=YES # Route all multicast packets to a  
single interface
/etc/rc.conf:multicast_router=NO        # A multicast routing daemon  
will be run, e.g. mrouted
/etc/rc.conf.local:multicast_host=YES
/etc/rc.conf.local:multicast_router=NO

there also exists both a default route and a 224/4 route:
root0p2at-ig0.sv~ netstat -nr | egrep "(def|^224)"
default            10.3.48.3          UGS         0      453      -    
em2
224/4              link#3             UCS         0        0      -    
em2
root0p2at-ig0.sv~

The switches that I'm using are cisco catalyst 6509 with the following  
software:
Cisco IOS Software, s72033_rp Software (s72033_rp-ADVIPSERVICESK9_WAN- 
M), Version 12.2(33)SXH2a, RELEASE SOFTWARE (fc2)

I've got igmp snooping enabled and the switch sees the groups:
at-is0.sv#show ip igmp groups
IGMP Connected Group Membership
Group Address    Interface                Uptime    Expires   Last  
Reporter   Group Accounted
239.1.1.1        Vlan40                   00:17:10  00:02:18  10.3.49.49
224.0.1.40       Vlan40                   00:17:10  00:02:28  10.3.48.4
at-is0.sv

whereas the other system I've got shows:
xorp at at-ig0.sv> show igmp group
Interface    Group           Source          LastReported Timeout V  
State
xorp at at-ig0.sv>

And I should have checked that before, but no I don't see any igmp  
report/leaves on a tcpdump.  I wasn't paying attention to that, only  
if I could see query's coming from the system.  I'm seeing none of the  
three, however here's
some tcpdump output from a server running some multicast software  
which is doing some reports/leaves

11:22:25.124631 00:30:48:d1:9d:b2 > 01:00:5e:00:00:02, ethertype IPv4  
(0x0800), length 46: 10.3.49.142 > 224.0.0.2: igmp leave 239.1.1.1
11:23:21.496777 00:30:48:d1:9d:b2 > 01:00:5e:01:01:01, ethertype IPv4  
(0x0800), length 46: 10.3.49.142 > 239.1.1.1: igmp v2 report 239.1.1.1
11:24:16.540047 00:d0:00:a1:0c:00 > 01:00:5e:00:00:01, ethertype IPv4  
(0x0800), length 60: 10.3.48.4 > 224.0.0.1: igmp query v2
11:24:18.513454 00:30:48:d1:9d:b2 > 01:00:5e:01:01:01, ethertype IPv4  
(0x0800), length 46: 10.3.49.142 > 239.1.1.1: igmp v2 report 239.1.1.1

10.3.48.4 is the catalyst switch which I enabled pim on as well just  
so I could see some traffic that I would expect.

it doesn't appear that mtest is in openbsd anymore... curtains.  I'll  
dig around and see if I can find something.

Thanks again for the help!
stegen
On Oct 8, 2008, at 8:53 AM, Bruce M Simpson wrote:

> Hi,
>
> I'm not sure where the "No route to host" message is coming from, I  
> don't normally use OpenBSD.
>
> Normally this suggests that it wasn't possible for a multicast  
> datagram to be sent, for a variety of reasons -- this could be  
> because the socket the process is trying to send on hasn't joined  
> the group. AFAIK the BSDs don't implement strict checks like this.
>
> We really need to be sure that IGMP is working in host-mode on  
> vlan40; multicast routers will send IGMP JOIN messages themselves  
> for local-scope groups, whilpst IGMPv3 deprecates this, it's  
> important to allow them to be sent in case layer 2 snooping switches  
> are filtering multicast.
>
> It is entirely possible the VLANs you have configured outside of  
> XORP are somehow not passing the ALLMULTI bit down to the lower  
> layer em(4) instance.
>
> It looks like everything else is fine in your config.
>
> * Can you confirm that the PIM router is receiving IGMP JOIN  
> messages with tcpdump?
> * And that the parent em(4) interface has ALLMULTI set with ifconfig?
> * Also, which version of IGMP is in use on the local LAN?
> (My guess is IGMPv2, as AFAIK, OpenBSD does not support IGMPv3).
>
> The fib2mrib crash seems like a red herring for now, we would need a  
> backtrace from the coredump in order to know where to start looking  
> anyway.
>
> You could try configuring XORP up on a non-em, non-vlan interface,  
> in order to rule those out as the point of failure.
>
> thanks
> BMS
>



More information about the Xorp-users mailing list