File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / pimd / README-config.md
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Mon Jun 12 07:59:37 2017 UTC (7 years ago) by misho
Branches: pimd, MAIN
CVS tags: v2_3_2, HEAD
pimd 2.3.2

    1: > $Id: README-config.md,v 1.1.1.1 2017/06/12 07:59:37 misho Exp $
    2: 
    3: This is file contains help for configuring and using pimd, the
    4: PIM-SM/SSM multicast daemon.  For the latest pimd version, see
    5: <https://github.com/troglobit/pimd>
    6: 
    7: There is an older Japanese version of this file, it could need
    8: some updating help, in the meantime, see [README.config.jp][jp]
    9: 
   10: **NOTE:** currently, this file is very incomplete.  If something is
   11:           missing and/or unclear, email the current maintainer of pimd
   12:           or file an issue in the GitHub issue tracker.
   13: 
   14: ## Using GRE Tunnels for Multicast Routing
   15: 
   16: Based on information contributed by Hiroyuki Komatsu
   17: <mailto:komatsu@taiyaki.org>
   18: 
   19: If you are configuring the particular gre interfaces for the first time,
   20: ignore the errors after `ip link set gre1 down` and `ip tunnel del gre1`
   21: 
   22: On Linux (Debian) try the following:
   23: 
   24: ### GRE Tunnel Between Two Machines
   25: 
   26: This sets up a GRE tunnel between hosts 11.11.11.11 and 33.33.33.33.
   27: 
   28: 	Physical interfaces:    [11.11.11.11]         [33.33.33.33]
   29: 	GRE tunnel:              22.22.22.11 <-------> 22.22.22.33
   30: 	
   31: 	==== host 11.11.11.11 (GRE interface 22.22.22.11)
   32: 	echo 1 > /proc/sys/net/ipv4/ip_forward
   33: 	echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
   34: 	ip link set gre1 down
   35: 	ip tunnel del gre1
   36: 	ip tunnel add gre1 mode gre remote 33.33.33.33 local 11.11.11.11 ttl 127
   37: 	ip addr add 22.22.22.11/24 peer 22.22.22.33/24 dev gre1
   38: 	ip link set gre1 up multicast on
   39: 	
   40: 	==== host 33.33.33.33 (GRE interface 22.22.22.33)
   41: 	echo 1 > /proc/sys/net/ipv4/ip_forward
   42: 	echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
   43: 	ip link set gre1 down
   44: 	ip tunnel del gre1
   45: 	ip tunnel add gre1 mode gre remote 11.11.11.11 local 33.33.33.33 ttl 127
   46: 	ip addr add 22.22.22.33/24 peer 22.22.22.11/24 dev gre1
   47: 	ip link set gre1 up multicast on
   48: 
   49: 
   50: ### GRE Tunnels with Three Machines
   51: 
   52: > STOP!!!STOP!!!STOP!!!STOP!!!STOP!!!STOP!!!STOP!!!STOP!!!STOP!!!STOP!!!
   53: > 
   54: > IF YOU ADD MORE THAN TWO GRE TUNNELS IN A CHAIN, IT IS VERY EASY TO CREATE
   55: > UNICAST ROUTING LOOPS, AND THIS MAY LEAD TO MULTICAST ROUTING LOOPS.
   56: > MULTICAST ROUTING LOOP IS A DISASTER THAT MAY BRING YOUR WHOLE NETWORK DOWN.
   57: > BEFORE ATTEMPTING THIS CONFIGURATION, MAKE SURE YOU UNDERSTAND VERY WELL
   58: > WHAT YOU ARE DOING, AND WHAT MAY HAPPEN.
   59: > IF YOU ARE READING THIS, THE CHANCES ARE THAT YOU DON'T KNOW, SO THINK AGAIN!!
   60: > 
   61: > THINK!!!THINK!!!THINK!!!THINK!!!THINK!!!THINK!!!THINK!!!THINK!!!THINK!!!
   62: 
   63: 	Physical interfaces: [11.11.11.11]    [33.33.33.33]    [55.55.55.55]
   64: 	GRE tunnels:          22.22.22.11 <--> 22.22.22.33
   65:                                            44.44.44.33 <--> 44.44.44.55
   66: 	
   67: 	==== host 33.33.33.33 (GRE interfaces 22.22.22.33 and 44.44.44.33)
   68: 	echo 1 > /proc/sys/net/ipv4/ip_forward
   69: 	echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
   70: 	ip tunnel add gre1 mode gre remote 11.11.11.11 local 33.33.33.33 ttl 127
   71: 	ip addr add 22.22.22.33/24 peer 22.22.22.11/24 dev gre1
   72: 	ip link set gre1 up multicast on
   73: 	ip tunnel add gre2 mode gre remote 55.55.55.55 local 33.33.33.33 ttl 127
   74: 	ip addr add 44.44.44.33/24 peer 44.44.44.55/24 dev gre2
   75: 	ip link set gre2 up multicast on
   76: 	
   77: 	==== host 55.55.55.55 (GRE interface 44.44.44.55)
   78: 	echo 1 > /proc/sys/net/ipv4/ip_forward
   79: 	echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
   80: 	ip tunnel add gre1 mode gre remote 33.33.33.33 local 55.55.55.55 ttl 127
   81: 	ip addr add 44.44.44.55/24 peer 44.44.44.33/24 dev gre1
   82: 	ip link set gre1 up multicast on
   83: 	route add -net 22.22.22.0 netmask 255.255.255.0 gw 44.44.44.33 gre1
   84: 	
   85: 	==== host 11.11.11.11 (GRE interface 22.22.22.11)
   86: 	echo 1 > /proc/sys/net/ipv4/ip_forward
   87: 	echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
   88: 	ip tunnel add gre1 mode gre remote 33.33.33.33 local 11.11.11.11 ttl 127
   89: 	ip addr add 22.22.22.11/24 peer 22.22.22.33/24 dev gre1
   90: 	ip link set gre1 up multicast on
   91: 	route add -net 44.44.44.0 netmask 255.255.255.0 gw 22.22.22.33 gre1
   92: 
   93: 
   94: ## The pimd.conf FAQ
   95: 
   96: For a complete list of all available options, see `pimd.conf` and the man page.
   97: 
   98: 1. How to disable pimd being Cand-RP?
   99: 
  100:    Comment-out the `rp-candidate` and `group-prefix` lines in `pimd.conf`
  101: 
  102: 2. How to disable pimd being Cand-BSR?
  103: 
  104:    Comment-out the `bsr-candidate` line in `pimd.conf`
  105: 
  106: 3. How to prevent a prefix of multicast addresses being routed through
  107:    my multicast router?
  108: 
  109:    If you want to scope, say, prefixes 238.0.0.0/8 and 239.0.0.0/8, add
  110:    the following lines to `pimd.conf`:
  111: 
  112:         phyint eth1 scoped 238.0.0.0 masklen 8
  113:         phyint eth1 scoped 239.0.0.0 masklen 8
  114: 
  115: 4. How to create a scope zone and stop multicast packets for some multicast
  116:    prefix being propagated beyond the boundary of my network?
  117: 
  118:    Add scoping filters on your border routers for each prefix you want
  119:    to scope. E.g.:
  120: 
  121:         phyint eth1 scoped 239.0.0.0 masklen 8
  122: 
  123: [jp]: https://github.com/troglobit/pimd/blob/master/README.config.jp
  124: 
  125: <!--
  126:   -- Local Variables:
  127:   -- mode: markdown
  128:   -- End:
  129:   -->

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>