mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-11-01 12:47:16 +00:00
When receiving a JOIN/PRUNE message if we have trace turned on we output this: 2016/11/28 17:11:46.368827 PIM: pim_socket_recvfromto: HAVE_IP_PKTINFO to=224.0.0.13,103 2016/11/28 17:11:46.368956 PIM: Recv PIM JOINPRUNE packet from 169.254.0.6 to 224.0.0.13 on swp31s1: ttl=255 pim_version=2 pim_msg_size=34 checksum=e623 2016/11/28 17:11:46.369003 PIM: pim_joinprune_recv: from 169.254.0.6 on swp31s1 2016/11/28 17:11:46.369053 PIM: recv_prune: prune (S,G)=(20.0.11.253,229.1.2.3) rpt=0 wc=0 upstream=169.254.0.5 holdtime=210 from 169.254.0.6 on swp31s1 2016/11/28 17:11:46.369099 PIM: nonlocal_upstream: recv prune (S,G)=(20.0.11.253,229.1.2.3) to local upstream=169.254.0.5 on swp31s1 Clean up the messaging to this: 2016/11/28 17:11:46.368956 PIM: Recv PIM JOINPRUNE packet from 169.254.0.6 to 224.0.0.13 on swp31s1: ttl=255 pim_version=2 pim_msg_size=34 checksum=e623 2016/11/28 17:11:46.369053 PIM: recv_prune: prune (S,G)=(20.0.11.253,229.1.2.3) rpt=0 wc=0 upstream=169.254.0.5 holdtime=210 from 169.254.0.6 on swp31s1 Ticket: CM-13752 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> Reviewed-by: Don Slice <dslice@cumulusnetworks.com> |
||
|---|---|---|
| .. | ||
| .gitignore | ||
| AUTHORS | ||
| CAVEATS | ||
| COMMANDS | ||
| COPYING | ||
| DEBUG | ||
| LINUX_KERNEL_MROUTE_MFC | ||
| Makefile.am | ||
| pim_assert.c | ||
| pim_assert.h | ||
| pim_br.c | ||
| pim_br.h | ||
| pim_cmd.c | ||
| pim_cmd.h | ||
| pim_hello.c | ||
| pim_hello.h | ||
| pim_iface.c | ||
| pim_iface.h | ||
| pim_ifchannel.c | ||
| pim_ifchannel.h | ||
| pim_igmp_join.h | ||
| pim_igmp.c | ||
| pim_igmp.h | ||
| pim_igmpv2.c | ||
| pim_igmpv2.h | ||
| pim_igmpv3.c | ||
| pim_igmpv3.h | ||
| pim_int.c | ||
| pim_int.h | ||
| pim_join.c | ||
| pim_join.h | ||
| pim_macro.c | ||
| pim_macro.h | ||
| pim_main.c | ||
| pim_memory.c | ||
| pim_memory.h | ||
| pim_mroute.c | ||
| pim_mroute.h | ||
| pim_msdp_packet.c | ||
| pim_msdp_packet.h | ||
| pim_msdp_socket.c | ||
| pim_msdp_socket.h | ||
| pim_msdp.c | ||
| pim_msdp.h | ||
| pim_msg.c | ||
| pim_msg.h | ||
| pim_neighbor.c | ||
| pim_neighbor.h | ||
| pim_oil.c | ||
| pim_oil.h | ||
| pim_pim.c | ||
| pim_pim.h | ||
| pim_register.c | ||
| pim_register.h | ||
| pim_routemap.c | ||
| pim_rp.c | ||
| pim_rp.h | ||
| pim_rpf.c | ||
| pim_rpf.h | ||
| pim_signals.c | ||
| pim_signals.h | ||
| pim_sock.c | ||
| pim_sock.h | ||
| pim_ssmpingd.c | ||
| pim_ssmpingd.h | ||
| pim_static.c | ||
| pim_static.h | ||
| pim_str.c | ||
| pim_str.h | ||
| pim_time.c | ||
| pim_time.h | ||
| pim_tlv.c | ||
| pim_tlv.h | ||
| pim_upstream.c | ||
| pim_upstream.h | ||
| pim_util.c | ||
| pim_util.h | ||
| pim_version.c | ||
| pim_version.h | ||
| pim_vty.c | ||
| pim_vty.h | ||
| pim_zebra.c | ||
| pim_zebra.h | ||
| pim_zlookup.c | ||
| pim_zlookup.h | ||
| pimd.c | ||
| pimd.conf.sample | ||
| pimd.h | ||
| README | ||
| test_igmpv3_join.c | ||
| TODO | ||
| TROUBLESHOOTING | ||
| WHY_SSM | ||
#
#
INTRODUCTION
qpimd aims to implement a PIM (Protocol Independent Multicast)
daemon for the Quagga Routing Suite.
Initially qpimd targets only PIM SSM (Source-Specific
Multicast) mode as defined in section 4.8.2 (PIM-SSM-Only
Routers) of RFC 4601.
In order to deliver end-to-end multicast routing control
plane, qpimd includes the router-side of IGMPv3 (RFC 3376).
LICENSE
qpimd - pimd for quagga
Copyright (C) 2008 Everton da Silva Marques
qpimd is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2,
or (at your option) any later version.
qpimd is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public
License along with qpimd; see the file COPYING. If not, write
to the Free Software Foundation, Inc., 59 Temple Place - Suite
330, Boston, MA 02111-1307, USA.
HOME SITE
qpimd lives at:
https://github.com/udhos/qpimd
PLATFORMS
qpimd has been tested with Debian Lenny under Linux 2.6.
REQUIREMENTS
qpimd requires Quagga (0.99.11 or higher from http://www.quagga.net)
The GNU Build System (Autotools) is required to build from
source code repository.
gawk is also needed to build with Autotools. Any other awk
usually won't work.
BUILDING FROM QUAGGA GIT REPOSITORY
1) Get the latest quagga source tree
# git clone git://code.quagga.net/quagga.git quagga
2) Apply qpimd patch into quagga source tree
# patch -p1 -d quagga < pimd-0.153-quagga-git20090623.patch
3) Compile and install quagga
# cd quagga
# ./bootstrap.sh
# ./configure --prefix=/usr/local/quagga --enable-pimd
# make
# make install
BUILDING FROM QUAGGA TARBALL
1) Get the latest quagga tarball
# wget http://www.quagga.net/download/quagga-0.99.13.tar.gz
2) Unpack the quagga tarball
# tar xzf quagga-0.99.13.tar.gz
3) Apply qpimd patch into quagga source tree
# patch -p1 -d quagga-0.99.13 < pimd-0.153-quagga-0.99.13.patch
4) Compile and install quagga
# cd quagga-0.99.13
# ./configure --prefix=/usr/local/quagga --enable-pimd
# make
# make install
USAGE
1) Configure and start the zebra daemon
# cp /usr/local/quagga/etc/zebra.conf.sample /usr/local/quagga/etc/zebra.conf
# vi /usr/local/quagga/etc/zebra.conf
# /usr/local/quagga/sbin/zebra
2) Configure and start the pimd daemon
# cp /usr/local/quagga/etc/pimd.conf.sample /usr/local/quagga/etc/pimd.conf
# vi /usr/local/quagga/etc/pimd.conf
# /usr/local/quagga/sbin/pimd
3) Access pimd vty interface at port TCP 2611
# telnet localhost 2611
CONFIGURATION COMMANDS
See available commands in the file pimd/COMMANDS.
KNOWN CAVEATS
See list of known caveats in the file pimd/CAVEATS.
SUPPORT
Please post comments, questions, patches, bug reports at the
support site:
https://github.com/udhos/qpimd
RELATED WORK
igmprt: An IGMPv3-router implementation
- http://www.loria.fr/~lahmadi/igmpv3-router.html
USC pimd: PIMv2-SM daemon
- http://netweb.usc.edu/pim/pimd (URL broken in 2008-12-23)
- http://packages.debian.org/source/sid/pimd (from Debian)
troglobit pimd: This is the original USC pimd from
http://netweb.usc.edu/pim/. In January 16, 2010 it was revived
with the intention to collect patches floating around in
Debian, Gentoo, Lintrack and other distribution repositories
and to provide a central point of collaboration.
- http://github.com/troglobit/pimd
zpimd: zpimd is not dependent of zebra or any other routing daemon
- ftp://robur.slu.se/pub/Routing/Zebra
- http://sunsite2.icm.edu.pl/pub/unix/routing/zpimd
mrd6: an IPv6 Multicast Router for Linux systems
- http://fivebits.net/proj/mrd6/
MBGP: Implementation of RFC 2858 for Quagga
- git://git.coplanar.net/~balajig/quagga
- http://www.gossamer-threads.com/lists/quagga/dev/18000
REFERENCES
IANA Protocol Independent Multicast (PIM) Parameters
http://www.iana.org/assignments/pim-parameters/pim-parameters.txt
Address Family Numbers
http://www.iana.org/assignments/address-family-numbers
-- END --