FortiGate
FortiGate Next Generation Firewall utilizes purpose-built security processors and threat intelligence security services from FortiGuard labs to deliver top-rated protection and high performance, including encrypted traffic.
Hassan97wsh
Staff
Staff
Article Id 397801
Descriptionraf This article describes how to use Iperf as a source and as a receiver to test multicast connectivity.
Scope FortiGate configured with multicast forwarding or multicast routing.
Solution

To run Iperf as a receiver, the command below can be used. This command starts an iperf server in UDP mode that listens for traffic sent to the multicast address 239.1.1.99 on port 2200:

 

Untitled Diagram.drawio.png

 

From the receiver:


administrator@srvr-01:~$ iperf -s -u -B 239.1.1.99 -p 2200
------------------------------------------------------------
Server listening on UDP port 2200
Joining multicast group 239.1.1.99
Server set to single client traffic mode (per multicast receive)
UDP buffer size: 208 KByte (default)

From the FortiGate at the receiver side:


FGT-RDH-DC-01 # get router info multicast igmp groups 239.1.1.99
IGMP Connected Group Membership
Group Address Interface Uptime Expires Last Reporter
239.1.1.99 srvr.services 00:02:46 00:03:42 172.21.0.30

To run Iperf as a source, the command below can be used. This command runs an Iperf client in UDP mode that sends 1 Mbps traffic with 1350-byte packets for 20 seconds to the multicast address 239.1.1.99 on port 2200 with a TTL set to 10.

 

From the source:


administrator@srvr-rdh-01:~$ iperf -c 239.1.1.99 -u -p 2200 -t 20 -l 1350 -T 10 -b 1M
------------------------------------------------------------
Client connecting to 239.1.1.99, UDP port 2200
Sending 1350 byte datagrams, IPG target: 0.00 us (kalman adjust)
UDP buffer size: 208 KByte (default)
------------------------------------------------------------
[ 1] local 10.0.5.1 port 39841 connected with 239.1.1.99 port 2200
[ ID] Interval Transfer Bandwidth
[ 1] 0.0000-10.0114 sec 1.25 MBytes 1.05 Mbits/sec
[ 1] Sent 975 datagrams

 

From the FortiGate at the source side:

 

FGT-RDH-01 # get router info multicast pim sparse-mode table 239.1.1.99
IP Multicast Routing Table

(*,*,RP) Entries: 0
(*,G) Entries: 0
(S,G) Entries: 1
(S,G,rpt) Entries: 1
FCR Entries: 0

VRF 0 (10.0.5.1, 239.1.1.99) - 4
RPF nbr: 0.0.0.0
RPF idx: None
RPF RP(VRF=0): 172.31.0.1, 2, 2, 1, 846930906
RPF Source(VRF=0): 1, 2, 846930906
SPT bit: 1
Upstream State: JOINED
Downstream Expired: 0
Local:
Total: 0
Joined:
OL_1
Total: 1
Lost assert:
Total: 0
Outgoing:
OL_1
Total: 1
VRF 0 (10.0.5.1, 239.1.1.99, rpt)
RP: 0.0.0.0
RPF nbr: 172.32.0.1
RPF idx: OL_1
RPF RP(VRF=0): 172.31.0.1, 2, 2, 1, 846930906
RPF Source(VRF=0): 1, 2, 846930906
Upstream State: RPT NOT JOINED
Downstream Expired: 0
Local:
Total: 0
Pruned:
Total: 0
Lost assert:
Total: 0
Outgoing:
Total: 0


FGT-RDH-01 # get router info multicast table 239.1.1.99

IP Multicast Routing Table
Flags: I - Immediate Stat, T - Timed Stat, F - Forwarder installed
Timers: Uptime/Stat Expiry
Interface State: Interface (TTL threshold)

VRF 0 (10.0.5.1, 239.1.1.99), uptime 00:05:54, stat expires 00:02:20
Owner PIM-SM, Flags: TF
Incoming interface: IoT-CAM
Outgoing interface list:
OL_1 (TTL threshold 1)

 

FGT-RDH-01 # diagnose sniffer packet any "host 239.1.1.99" 4 10 l
Using Original Sniffing Mode
interfaces=[any]
filters=[host 239.1.1.99]
2025-06-24 08:32:07.424249 IoT-CAM in 10.0.5.1.37300 -> 239.1.1.99.2200: udp 1350
2025-06-24 08:32:07.424278 OL_1 out 10.0.5.1.37300 -> 239.1.1.99.2200: udp 1350
2025-06-24 08:32:07.434721 IoT-CAM in 10.0.5.1.37300 -> 239.1.1.99.2200: udp 1350
2025-06-24 08:32:07.434731 OL_1 out 10.0.5.1.37300 -> 239.1.1.99.2200: udp 1350