summaryrefslogtreecommitdiff
path: root/docs/configuration/protocols/igmp-proxy.md
blob: 961f921b199f5712351a17f0620122ff89866f18 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
---
lastproofread: '2023-11-13'
---

(igmp-proxy)=

# IGMP Proxy

{abbr}`IGMP (Internet Group Management Protocol)` proxy sends IGMP host messages
on behalf of a connected client. The configuration must define one, and only one
upstream interface, and one or more downstream interfaces.

## Configuration

```{cfgcmd} set protocols igmp-proxy interface \<interface\> role \<upstream | downstream\>

* **upstream:** The upstream network interface is the outgoing interface
which is responsible for communicating to available multicast data sources.
There can only be one upstream interface.

* **downstream:** Downstream network interfaces are the distribution
interfaces to the destination networks, where multicast clients can join
groups and receive multicast data. One or more downstream interfaces must
be configured.
```

```{cfgcmd} set protocols igmp-proxy interface \<interface\> alt-subnet \<network\>

Defines alternate sources for multicasting and IGMP data. The network address
must be on the following format 'a.b.c.d/n'. By default, the router will
accept data from sources on the same network as configured on an interface.
If the multicast source lies on a remote network, one must define from where
traffic should be accepted.

This is especially useful for the upstream interface, since the source for
multicast traffic is often from a remote location.

This option can be supplied multiple times.
```

```{cfgcmd} set protocols igmp-proxy disable-quickleave

Disables quickleave mode. In this mode the daemon will not send a Leave IGMP
message upstream as soon as it receives a Leave message for any downstream
interface. The daemon will not ask for Membership reports on the downstream
interfaces, and if a report is received the group is not joined again the
upstream.

If it's vital that the daemon should act exactly like a real multicast client
on the upstream interface, this function should be enabled.

Enabling this function increases the risk of bandwidth saturation.
```

```{cfgcmd} set protocols igmp-proxy disable

Disable this service.
```

(igmp-proxy-example)=

### Example

Interface eth1 LAN is behind NAT. In order to subscribe 10.0.0.0/23 subnet
multicast which is in eth0 WAN we need to configure igmp-proxy.

```none
set protocols igmp-proxy interface eth0 role upstream
set protocols igmp-proxy interface eth0 alt-subnet 10.0.0.0/23
set protocols igmp-proxy interface eth1 role downstream
```


## Operation

```{opcmd} restart igmp-proxy

Restart the IGMP proxy process.
```