[Xorp-hackers] xorp: enable IGMP/PIM-SM over a VLAN interface on Linux

frank hu frank.1975.hu at gmail.com
Wed Dec 7 14:48:16 PST 2011


Thanks Ray. I will be trying your suggestions.

Before that, I found a weird PIM interface problem... I tried to enable PIM
over interface VLAN300 and VLAN800. However, one is shown by XORP as UP and
the other is "DISABLED". I found that if I don't configure DR-priority for
VLAN300, it would be shown as "DOWN" (but not DISABLED).

"
# show
    protocols {
        ospf4 {
            router-id: 1.1.1.1
            area 0.0.0.0 {
                interface eth0 {
                    vif eth0
                }
                interface vlan300 {
                    vif vlan300 {
                        address 172.15.3.212 {
                        }
                    }
                }
            }
        }
        pimsm4 {
            interface vlan300 {
                vif vlan300 {
                    dr-priority: 32
                }
            }
            interface vlan800 {
                vif vlan800 {
                    dr-priority: 3
                }
            }
            bootstrap {
            }
        }
    }
    interfaces {
        interface eth0 {
            vif eth0 {
            }
            default-system-config {
            }
        }
        interface vlan300 {
            vif vlan300 {
                address 172.15.3.212 {
                    prefix-length: 24
                }
            }
            default-system-config {
            }
        }
        interface vlan800 {
            vif vlan800 {
                address 172.15.80.212 {
                    prefix-length: 24
                    multicast-capable: true
                }
            }
            default-system-config {
            }
        }
    }
    rtrmgr {
        config-directory: "/etc/xorp/"
    }
[edit]
 --More-- (END)
xorp at desktop# run show pim interface
Interface    State    Mode   V PIMstate Priority DRaddr          Neighbors
eth0         DISABLED Sparse 2 DR              1 0.0.0.0                 0
vlan300      UP       Sparse 2 DR             32 172.15.3.212            2
vlan800      DISABLED Sparse 2 DR              3 172.15.80.212           0
xorp at desktop# run show interfaces
eth0/eth0: Flags:<ENABLED,BROADCAST,MULTICAST> mtu 1500 speed 1 Gbps
        physical index 2
        ether 0:1c:c4:ae:a6:6a
vlan300/vlan300: Flags:<ENABLED,BROADCAST,MULTICAST> mtu 1500 speed 1 Gbps
        type: VLAN parent interface: eth0 vid: 300
        inet 172.15.3.212 subnet 172.15.3.0/24 broadcast 172.15.3.255
        physical index 10
        ether 0:1c:c4:ae:a6:6a
vlan800/vlan800: Flags:<ENABLED,BROADCAST,MULTICAST> mtu 1500 speed 1 Gbps
        type: VLAN parent interface: eth0 vid: 800
        inet 172.15.80.212 subnet 172.15.80.0/24 broadcast 172.15.80.255
        physical index 9
        ether 0:1c:c4:ae:a6:6a

"
It seems quite weird to me.

Also based on the XORP user manual, I don't need to set the address for
VLAN300 or VLAN800 if I set "default-system-configuration". But I found
that if I don't set the IP address, the VLAN interface will be shown as
"DOWN" or "disabled" even PIM still configure them with DR-priorities.

Similar comments on enable OSPF over an interface... I got that to work,
but I figured that I HAD to configure the address to use for the interface
over which OSPF is configured. This is really not flexible -- what if the
user changes the IP address on an interface? The user has to update the
OSPF configuration to match the new IP address?

Being familiar with the Cisco routing CLI, these caveats seem quite
counter-intuitive... Could anybody help me understand if XORP was deployed
outside the research/academia community?

Thanks a lot for the feedback!!

Frank


On Wed, Dec 7, 2011 at 7:19 AM, Ray Soucy <rps at maine.edu> wrote:

> Define any VLAN interface as you would a physical interface in your
> interfaces block.
>
> e.g.
>
> ----8<----
> interfaces {
>  interface eth0 {
>    disable: false
>    discard: false
>    unreachable: false
>    management: false
>    vif eth0 {
>      disable: false
>    }
>  }
>  interface "vlan300" {
>    disable: false
>    discard: false
>    unreachable: false
>    management: false
>    vif "vlan300" {
>      disable: false
>      address 192.0.3.1 {
>          prefix-length: 24
>          disable: false
>      }
>    }
>  }
>  interface "vlan800" {
>    disable: false
>    discard: false
>    unreachable: false
>    management: false
>    vif "vlan800" {
>      disable: false
>      address 192.0.8.1 {
>          prefix-length: 24
>          disable: false
>      }
>    }
>  }
> }
>
> ----8<----
>
> And don't forget plumbing block:
>
> ----8<----
>
> plumbing {
>    mfea4 {
>        disable: false
>        interface "vlan300" {
>            vif "vlan300" {
>                disable: false
>            }
>        }
>        interface "vlan800" {
>            vif "vlan800" {
>                disable: false
>            }
>        }
>        interface "register_vif" {
>            vif "register_vif" {
>                disable: false
>            }
>        }
>    }
> }
>
> ----8<----
>
>
> On Tue, Dec 6, 2011 at 4:15 PM, frank hu <frank.1975.hu at gmail.com> wrote:
> > Hi,
> >
> > sorry for asking some silly questions again. I am still battling to get
> xorp
> > to work for multicast routing. I hope that this is just because I am not
> > familar with xorp usage.
> >
> > On the Ubuntu system, I created 2 VLAN interfaces using "vconfig", say
> > vlan800 and vlan300 on top of the real physical interface eth0. They have
> > IPv4 addresses assigned to them.
> >
> > To enable IGMP and PIM-SM4 over it
> >
> > set protocols igmp interface vlan800 vif vlan800 disable false
> > set protocols igmp interface vlan800 vif vlan800 version 2
> >
> > set protocols pimsm4 interface vlan800 vif vlan800 disable false
> > set protocols pimsm4 interface vlan300 vif vlan300 disable false
> >
> > when I commit, I got the following error: "Missing mandatory
> configuration
> > node "$(@.targetname)" required by node "protocols igmp".
> >
> > Then I tweaked the configuration above o "...interface eth0 vif vlan800"
> or
> > "...interface eth0 vif vlan300". I found that that configuration is
> > accepted. However, after I commit it, I don't see the PIM-v2 hello
> messages
> > were sent out.
> >
> > Then I researched xorp documentation a bit and found that it provided
> CLIs
> > to create VLAN interfaces.
> >
> > User manual shows the sample configuration:
> > protocols {
> >    igmp {
> >      interface dc0 {
> >         vif dc0 {
> >           /* version: 2 */
> >           /* enable-ip-router-alert-option-check: false */
> >           /* query-interval: 125 */
> >           /* query-last-member-interval: 1 */
> >           /* query-response-interval: 10 */
> >           /* robust-count: 2 */
> >      }
> >    }
> > }
> >
> > So I should be able to just reference the VLAN interfaces vlan800 and
> > vlan300 (which are recognized by ifconfig on my Linux)...
> >
> > Am I talking sense here?
> >
> > Thanks for any help!!
> >
> > Frank
> >
> > _______________________________________________
> > Xorp-hackers mailing list
> > Xorp-hackers at icir.org
> > http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-hackers<http://mailman.icsi.berkeley.edu/mailman/listinfo/xorp-hackers>
> >
>
>
>
> --
> Ray Soucy
>
> Epic Communications Specialist
>
> Phone: +1 (207) 561-3526
>
> Networkmaine, a Unit of the University of Maine System
> http://www.networkmaine.net/
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ICSI.Berkeley.EDU/pipermail/xorp-hackers/attachments/20111207/04eda6f1/attachment.html 


More information about the Xorp-hackers mailing list