Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
IGMP(4)		       FreeBSD Kernel Interfaces Manual		       IGMP(4)

NAME
     igmp -- Internet Group Management Protocol

SYNOPSIS
     #include <sys/types.h>
     #include <sys/socket.h>
     #include <netinet/in.h>
     #include <netinet/in_systm.h>
     #include <netinet/ip.h>
     #include <netinet/igmp.h>

     int
     socket(AF_INET, SOCK_RAW, IPPROTO_IGMP);

DESCRIPTION
     IGMP is a control plane protocol used by IPv4 hosts and routers to	propa-
     gate multicast group membership information.  Normally this protocol is
     not used directly,	except by the kernel itself, in	response to multicast
     membership	requests by user applications.	Routing	protocols may open a
     raw socket	to directly interact with igmp.

     As	of FreeBSD 8.0,	IGMP version 3 is implemented.	This adds support for
     Source-Specific Multicast (SSM), whereby applications may communicate to
     upstream multicast	routers	that they are only interested in receiving
     multicast streams from particular sources.

SYSCTL VARIABLES
     net.inet.igmp.stats
	     This opaque read-only variable exposes the	stack-wide IGMPv3 pro-
	     tocol statistics to netstat(1).

     net.inet.igmp.ifinfo
	     This opaque read-only variable exposes the	per-link IGMPv3	status
	     to	ifmcstat(8).

     net.inet.igmp.gsrdelay
	     This variable specifies the time threshold, in seconds, for pro-
	     cessing Group-and-Source Specific Queries (GSR).  As GSR query
	     processing	requires maintaining state on the host,	it may cause
	     memory to be allocated, and is therefore a	potential attack point
	     for Denial-of-Service (DoS).  If more than	one GSR	query is
	     received within this threshold, it	will be	dropped, to mitigate
	     the potential for DoS.

     net.inet.igmp.default_version
	     This variable controls the	default	version	of IGMP	to be used on
	     all links.	 This sysctl is	normally set to	3 by default.

     net.inet.igmp.legacysupp
	     If	this variable is non-zero, then	IGMP v1	and v2 membership
	     reports received on a link	will be	allowed	to suppress the	IGMP
	     v3	state-change reports which would otherwise be issued by	this
	     host.  This sysctl	is normally enabled by default.

     net.inet.igmp.v2enable
	     If	this variable is non-zero, then	IGMP v2	membership queries
	     will be processed by this host, and backwards compatibility will
	     be	enabled	until the v2 'Old Querier Present' timer expires.
	     This sysctl is normally enabled by	default.

     net.inet.igmp.v1enable
	     If	this variable is non-zero, then	IGMP v1	membership queries
	     will be processed by this host, and backwards compatibility will
	     be	enabled	until the v1 'Old Querier Present' timer expires.
	     This sysctl is normally enabled by	default.

     net.inet.igmp.sendlocal
	     If	this variable is non-zero, then	IGMP state-changes for groups
	     in	the 224.0.0.0/24 link-scope prefix will	be issued.  This be-
	     haviour is	recommended if deploying FreeBSD in a network environ-
	     ment with layer 2 devices which snoop IGMP	traffic	to mitigate
	     multicast propagation throughout the network.  This sysctl	is
	     normally enabled by default.

     net.inet.igmp.sendra
	     If	this variable is non-zero, then	IGMP v2	and v3 reports will
	     contain the IP Router Alert option.  This sysctl is normally
	     enabled by	default.

     net.inet.igmp.recvifkludge
	     If	this variable is non-zero, then	received IGMP reports which
	     contain 0.0.0.0 as	their source will be rewritten to contain the
	     subnet address.  This is useful when there	are hosts on-link
	     which have	not yet	been configured	with a primary IPv4 address.
	     This sysctl is normally enabled by	default.

SEE ALSO
     ifmcstat(8), inet(4), multicast(4), netstat(1), sourcefilter(3)

HISTORY
     The igmp manual page re-appeared in FreeBSD 8.0.

FreeBSD	9.2			 March 9, 2009			   FreeBSD 9.2

NAME | SYNOPSIS | DESCRIPTION | SYSCTL VARIABLES | SEE ALSO | HISTORY

Want to link to this manual page? Use this URL:
<http://www.freebsd.org/cgi/man.cgi?query=igmp&sektion=4&manpath=FreeBSD+9.2-RELEASE>

home | help