Annotation of embedaddon/pimd/README-debug.md, revision 1.1
1.1 ! misho 1: > $Id: README.debug,v 1.4 2002/11/17 20:01:31 pavlin Exp $
! 2:
! 3: This file contains some hints how to debug your multicast routing.
! 4:
! 5: **NOTE:** currently, it is very incomplete. If something is missing
! 6: and/or unclear, email to the current maintainer of pimd or
! 7: file an issue in the GitHub issue tracker.
! 8:
! 9: 1. Make sure that the TTL of the sender is large enough to reach the
! 10: receiver. E.g., if the sender and the receiver are separated by a
! 11: two routers in the middle, the TTL of the data packets transmitted
! 12: by the sender must be at least 3.
! 13:
! 14: 2. Make sure the receiver sends IGMP join (membership report) for the
! 15: group(s) it wants to receive. Use tcpdump on the router closest to
! 16: the receiver to make sure. Sometimes buggy IGMP snooping switches,
! 17: or cloud provider networks, filter out multicast in general, or all
! 18: control traffic (IGMP/PIM) in particular.
! 19:
! 20: 3. Before you start the multicast routing daemon, verify the kernel
! 21: config, the following settings should be activated:
! 22:
! 23: - On Linux:
! 24:
! 25: CONFIG_IP_MROUTE=y
! 26: CONFIG_IP_PIMSM_V1=y
! 27: CONFIG_IP_PIMSM_V2=y
! 28: CONFIG_IP_MROUTE_MULTIPLE_TABLES=y # Optional
! 29:
! 30: Check the list of multicast capable interfaces:
! 31:
! 32: cat /proc/net/dev_mcast
! 33:
! 34: - On *BSD:
! 35:
! 36: options MROUTING # Multicast routing
! 37: options PIM # Enable for pimd
! 38:
! 39: - Start the multicast routing daemon in debug mode. E.g., `pimd -dall`
! 40: or if you just want to see some subystems: `pimd -drpf,mrt -s7`
! 41:
! 42: 4. After you start the multicast routing daemon
! 43:
! 44: - Are the multicast vifs correctly installed in the kernel:
! 45:
! 46: - On Linux:
! 47:
! 48: cat /proc/net/ip_mr_vif
! 49:
! 50: - On *BSD:
! 51:
! 52: netstat -gn
! 53:
! 54: - Is multicast forwarding enabled on those vifs:
! 55:
! 56: - On Linux:
! 57:
! 58: sysctl net.ipv4.conf.eth0.mc_forwarding
! 59:
! 60: For each of the enabled interfaces. If it returns zero, the
! 61: multicast forwarding on that interface is not working.
! 62:
! 63: - On *BSD:
! 64:
! 65: sysctl net.inet.ip.forwarding
! 66: sysctl net.inet.ip.mforwarding # Only OpenBSD
! 67:
! 68: - Is the PIM multicast routing daemon exchanging `PIM_HELLO` messages
! 69: with its neighbors? Look into the debug messages output; if
! 70: necessary, use `tcpdump` as well.
! 71:
! 72: - Are the Bootpstrap messages received by all PIM-SM daemons?
! 73:
! 74: - If a Bootstrap message is received, is it accepted, or is it
! 75: rejected because of a wrong iif?
! 76:
! 77: - After a while, does the Cand-RP set contain the set of RPs?
! 78:
! 79: - After the first multicast packets are received, is there `CACHE_MISS`
! 80: signal from the kernel to the user-level daemon?
! 81:
! 82: - After the `CACHE_MISS` signal, are the MFC (Multicast Forwarding Cache)
! 83: entries installed in the kernel?
! 84:
! 85: - On Linux:
! 86:
! 87: cat /proc/net/ip_mr_cache
! 88:
! 89: - On *BSD:
! 90:
! 91: netstat -gn
! 92:
! 93: <!--
! 94: -- Local Variables:
! 95: -- mode: markdown
! 96: -- End:
! 97: -->
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>