[Xorp-users] multicast over GRE tunnel

Christian Lyra lyra at pop-pr.rnp.br
Sat Feb 10 03:16:22 PST 2007


Hi there,

	Just a message to let you know that the setup below just works. But 
there was a few details missing. First when configuring the linux side 
of tunnel I had to explicit set the TTL with the command ifconfig tun0 
ttl 64. I took a while to found this... my firewall showed packets 
coming in one interface but didnt leaving on the other! Second, I had 
to disable rp_filter on xorp router! dont exactly know why. Btw there´s 
a missing detail on my setup description. Xorp router has only one 
ethernet card. It´s on the same net as desktops.


	Thanks for listening (er... reading :-) ).


On Friday 09 February 2007 16:59, Pavlin Radoslavov wrote:
>  Christian Lyra <lyra at pop-pr.rnp.br> wrote:
>  > Hi there,
>  >
>  > 	I´d like to setup a xorp router to do multicast over a GRE
>  > tunnel. My setup is like this:
>  >
>  > [multicast_enabled_net]----[Cisco-Router]---[no-multicast_net]--[x
>  >orp_router]---[desktops]
>  >
>  > 	Between Cisco-router and xorp_router there´s a GRE tunnel so I
>  > can trasverse the non_multicast_net. The protocol used is PIM-SM
>  > and there ´s a "static" RP on multicast_enabled_net.
>  >
>  > 	I´m sure that all the other parts are ok, because I had a cisco
>  > 2500 in the place of xorp_router and it work just fine with a
>  > simple config like this one:
>  >
>  > ip multicast-routing
>  > interface Tunnel1
>  >  ip address 200.x.x.154 255.255.255.252
>  >  ip pim sparse-mode
>  >  tunnel source 200.y.y.191
>  >  tunnel destination 200.y.y.9
>  >
>  > ip pim rp-address 200.z.z.z
>  > ip mroute 0.0.0.0 0.0.0.0 tunnel0
>  >
>  > 	I tried to emulate this same configuration with xorp:
>  >
>  > xorp at teste# show
>  >     protocols {
>  >         igmp {
>  >             interface eth0 {
>  >                 vif eth0 {
>  >                     query-interval: 30
>  >                 }
>  >             }
>  >             interface tun0 {
>  >                 vif tun0 {
>  >                 }
>  >             }
>  >         }
>  >         pimsm4 {
>  >             interface "register_vif" {
>  >                 vif "register_vif" {
>  >                 }
>  >             }
>  >             interface tun0 {
>  >                 vif tun0 {
>  >                 }
>  >             }
>  >             interface eth0 {
>  >                 vif eth0 {
>  >                 }
>  >             }
>  >             static-rps {
>  >                 rp 200.z.z.z {
>  >                     group-prefix 224.0.0.0/4 {
>  >                     }
>  >                 }
>  >             }
>  >         }
>  >         static {
>  >             route 0.0.0.0/0 {
>  >                 next-hop: 200.x.x.x
>  >             }
>  >             mrib-route 0.0.0.0/0 {
>  >                 next-hop: 200.x.x.153 /* tunnel */
>  > }
>  >         }
>  >     }
>  >     fea {
>  >         unicast-forwarding4 {
>  >         }
>  >     }
>  >     interfaces {
>  >         interface eth0 {
>  >             vif eth0 {
>  >                 address 200.x.x.191 {
>  >                     prefix-length: 24
>  >                 }
>  >             }
>  >         }
>  >         interface lo {
>  >             vif lo {
>  >             }
>  >         }
>  >         interface tun0 {
>  >             vif tun0 {
>  >                 address 200.x.x.154 {
>  >                     prefix-length: 30
>  >                     multicast-capable: true
>  >                 }
>  >             }
>  >         }
>  >     }
>  >     plumbing {
>  >         mfea4 {
>  >             interface eth0 {
>  >                 vif eth0 {
>  >                 }
>  >             }
>  >             interface "register_vif" {
>  >                 vif "register_vif" {
>  >                 }
>  >             }
>  > 	interface tun0 {
>  >                 vif tun0 {
>  >                 }
>  >             }
>  >         }
>  >     }
>  >
>  >
>  > 	One thing that I noticed is this:
>  > xorp at teste> show pim neighbors
>  > Interface    DRpriority NeighborAddr    V Mode   Holdtime Timeout
>  > tun0                  1 200.x.x.153   2 Sparse      105      82
>  >
>  >
>  > 	But Cisco doesnt see the xorp as a neighbor! (when using the
>  > cisco 2500 instead of xorp, this Cisco router sees two neighbors,
>  > one is the upstream one and the other the 2500).
>  >
>  > bb3#show ip pim neighbor
>  > PIM Neighbor Table
>  > Neighbor          Interface                Uptime/Expires    Ver  
>  > DR Address
>  > Prio/Mode
>  > <wanip>     FastEthernet1/1/0        04:14:05/00:01:39 v2    N /
>  >
>  >
>  > 	Maybe I´m missing something.... or this can be compatibility
>  > problem between xorp and cisco? Any clues? I can see the PIM join
>  > messagens going out from tunnel interface.
>  >
>  > 	Btw... the xorp is running in a debian sarge. Kernel from distro,
>  > and a little script to create the tun interface before the
>  > xorp_rtmgr is started:
>  >
>  > ip tunnel add tun0 mode gre remote 200.ci.s.co local 200.lo.ca.l
>  > dev eth0
>  >
>  > ifconfig tun0 allmulti
>  > ifconfig tun0 multicast
>
>  Your XORP configuration seems right. Well, you don't really need the
>  "lo" interface configuration, but it shouldn't hurt as long as you
>  don't touch it (e.g., reconfigure it).
>
>  You mentioned that you see PIM Join messages going out from the
>  tunnel interface. Do you see PIM Hello messages as well?
>
>  If yes, could you check whether they have the IP Router Alert option
>  set. This option shouldn't be set (it was specified in earlier
> drafts of the PIM-SM spec, but not anymore), and some (Cisco?)
> equipment might not like PIM control packets if the option is set.
>  XORP-1.3 and earlier had the IP Router Alert option included, but
>  this has been fixed in the latest XORP code in CVS.
>  If you are running XORP-1.3 (or earlier), please get the latest code
>  from anon CVS and see whether you still have the problem.
>
>  Regards,
>  Pavlin
>
>  > --
>  > Christian Lyra
>  > POP-PR - RNP
>  >
>  > http://lyra.soueu.com.br
>  >
>  >   ``The rules of programming are transitory; only Tao is eternal.
>  > Therefore you must contemplate Tao before you receive
>  > enlightenment.'' ``But how will I know when I have received
>  > enlightenment?'' asked the novice.
>  >   ``Your program will then run correctly,'' replied the master.
>  > 						The Tao Of Programing
>  >
>  > _______________________________________________
>  > Xorp-users mailing list
>  > Xorp-users at xorp.org
>  > http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-users

-- 
Christian Lyra
POP-PR - RNP

http://lyra.soueu.com.br

  Thus spake the master programmer: 
  ``After three days without programming, life becomes meaningless.'' 
						The Tao Of Programing



More information about the Xorp-users mailing list