User Tools

Site Tools


documentation:examples:multicast_with_pim-sm

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
documentation:examples:multicast_with_pim-sm [2017/06/26 00:24]
127.0.0.1 external edit
documentation:examples:multicast_with_pim-sm [2019/11/08 19:22] (current)
olivier [Checking NIC drivers and Bhyve compatibility with multicast]
Line 1: Line 1:
 ====== Multicast with PIM-SM ====== ====== Multicast with PIM-SM ======
  
-This lab show a multicast routing example using BSDRP 1.59 (FreeBSD 10.2 and [[https://​github.com/​troglobit/​pimd|pimd]] 2.3.2).+This lab show a multicast routing example using PIM in Sparse Mode.
  
 ===== Presentation ===== ===== Presentation =====
Line 23: Line 23:
 Start the lab with 4 routers simulating an e1000 NIC (vtnet interface and they didn't support mcast routing on FreeBSD): Start the lab with 4 routers simulating an e1000 NIC (vtnet interface and they didn't support mcast routing on FreeBSD):
 <​code>​ <​code>​
-BSDRP-lab-bhyve.sh -n 4 -e -i BSDRP-1.702-full-amd64-serial.img.xz+tools/BSDRP-lab-bhyve.sh -n 4 -e -i BSDRP-1.96-full-amd64-serial.img.xz
 BSD Router Project (http://​bsdrp.net) - bhyve full-meshed lab script BSD Router Project (http://​bsdrp.net) - bhyve full-meshed lab script
 Setting-up a virtual lab with 4 VM(s): Setting-up a virtual lab with 4 VM(s):
-- Working directory: /tmp/BSDRP +- Working directory: /root/BSDRP-VMs 
-- Each VM have 1 core(s) and 256M RAM+- Each VM has 1 core and 512M RAM
 - Emulated NIC: e1000 - Emulated NIC: e1000
 - Switch mode: bridge + tap - Switch mode: bridge + tap
 - 0 LAN(s) between all VM - 0 LAN(s) between all VM
 - Full mesh Ethernet links between each VM - Full mesh Ethernet links between each VM
-VM 1 have the following NIC: +VM 1 has the following NIC: 
-vtnet0 ​connected to VM 2 +em0 connected to VM 2 
-vtnet1 ​connected to VM 3 +em1 connected to VM 3 
-vtnet2 ​connected to VM 4 +em2 connected to VM 4 
-VM 2 have the following NIC: +VM 2 has the following NIC: 
-vtnet0 ​connected to VM 1 +em0 connected to VM 1 
-vtnet1 ​connected to VM 3 +em1 connected to VM 3 
-vtnet2 ​connected to VM 4 +em2 connected to VM 4 
-VM 3 have the following NIC: +VM 3 has the following NIC: 
-vtnet0 ​connected to VM 1 +em0 connected to VM 1 
-vtnet1 ​connected to VM 2 +em1 connected to VM 2 
-vtnet2 ​connected to VM 4 +em2 connected to VM 4 
-VM 4 have the following NIC: +VM 4 has the following NIC: 
-vtnet0 ​connected to VM 1 +em0 connected to VM 1 
-vtnet1 ​connected to VM 2 +em1 connected to VM 2 
-vtnet2 ​connected to VM 3 +em2 connected to VM 3 
-For connecting to VM'​serial console, you can use: +To connect ​VM'​serial console, you can use: 
-- VM 1 : cu -l /dev/nmdm1B +- VM 1 : cu -l /dev/nmdm-BSDRP.1B 
-- VM 2 : cu -l /dev/nmdm2B +- VM 2 : cu -l /dev/nmdm-BSDRP.2B 
-- VM 3 : cu -l /dev/nmdm3B +- VM 3 : cu -l /dev/nmdm-BSDRP.3B 
-- VM 4 : cu -l /dev/nmdm4B+- VM 4 : cu -l /dev/nmdm-BSDRP.4B
 </​code>​ </​code>​
  
Line 61: Line 61:
 Configuration:​ Configuration:​
 <​code>​ <​code>​
-sysrc hostname=R1 +sysrc hostname=VM1 \ 
-sysrc gateway_enable=NO + ​gateway_enable=no \ 
-sysrc ipv6_gateway_enable=NO + ​ipv6_gateway_enable=no \ 
-sysrc ifconfig_em0="​inet 10.0.12.1/​24"​ + ​ifconfig_em0="​inet 10.0.12.1/​24" ​\ 
-sysrc defaultrouter="10.0.12.2" + ​defaultrouter=10.0.12.254 
-hostname ​R1+service ​hostname ​restart
 service netif restart service netif restart
 service routing restart service routing restart
Line 73: Line 73:
 ==== Router 2 ==== ==== Router 2 ====
  
-R2 is a PIM router that <del>announce itself (10.0.23.2) as Canditate RP with and adv period of 10 seconds and high priority</​del>​ is the rendez-vous point.+VM2 is a PIM router that announce itself (10.0.23.2) as Canditate RP with and adv period of 10 seconds and high priority ​(will be the rendez-vous point).
  
 <​code>​ <​code>​
-sysrc hostname=R2 +sysrc hostname=VM2 \ 
-sysrc ifconfig_em0="​inet 10.0.12.2/24" + ​ifconfig_em0="​inet 10.0.12.254/​24" ​\ 
-sysrc ifconfig_em1="​inet 10.0.23.2/​24"​ + ​ifconfig_em1="​inet 10.0.23.2/​24" ​\ 
-sysrc defaultrouter="10.0.23.3" + ​defaultrouter=10.0.23.3 ​\ 
-sysrc pimd_enable=YES+ ​pimd_enable=yes
  
 cat > /​usr/​local/​etc/​pimd.conf <<EOF cat > /​usr/​local/​etc/​pimd.conf <<EOF
-#rp-candidate 10.0.23.2 time 10 priority 1 +rp-candidate 10.0.23.2 time 10 priority 1 
-rp-address 10.0.23.2+#rp-address 10.0.23.2
  
 EOF EOF
  
-hostname ​R2+service ​hostname ​restart
 service netif restart service netif restart
 service routing restart service routing restart
Line 96: Line 96:
 ==== Router 3 ==== ==== Router 3 ====
  
-We would R3 <del>annonces hitself (10.0.23.3) as a Canditate BootStrap Router with high priority</​del>​ is configured with R2 as rendez-vous point.+We would VM3 annonces hitself (10.0.23.3) as a Canditate BootStrap Router with high priority.
  
 <​code>​ <​code>​
-sysrc hostname=R3 +sysrc hostname=VM3 \ 
-sysrc ifconfig_em1="​inet 10.0.23.3/​24"​ + ​ifconfig_em1="​inet 10.0.23.3/​24" ​\ 
-sysrc ifconfig_em2="​inet 10.0.34.3/24" + ​ifconfig_em2="​inet 10.0.34.254/​24" ​\ 
-sysrc defaultrouter="10.0.23.2" + ​defaultrouter=10.0.23.2 ​\ 
-sysrc pimd_enable=YES+ ​pimd_enable=yes
  
 cat > /​usr/​local/​etc/​pimd.conf <<EOF cat > /​usr/​local/​etc/​pimd.conf <<EOF
-#bsr-candidate 10.0.23.3 priority 1 +bsr-candidate 10.0.23.3 priority 1 
-rp-address 10.0.23.2+#rp-address 10.0.23.2
 EOF EOF
  
-hostname ​R3+service ​hostname ​restart
 service netif restart service netif restart
 service routing restart service routing restart
Line 119: Line 119:
  
 <​code>​ <​code>​
-sysrc hostname=R4 +sysrc hostname=VM4 \ 
-sysrc gateway_enable=NO + ​gateway_enable=no \ 
-sysrc ipv6_gateway_enable=NO + ​ipv6_gateway_enable=no \ 
-sysrc ifconfig_em2="​inet 10.0.34.4/​24"​ + ​ifconfig_em2="​inet 10.0.34.4/​24" ​\ 
-sysrc defaultrouter="10.0.34.3" + ​defaultrouter=10.0.34.254 
-hostname ​R4+service ​hostname ​restart
 service netif restart service netif restart
 service routing restart service routing restart
Line 130: Line 130:
 </​code>​ </​code>​
  
 +===== Checking NIC drivers and Bhyve compatibility with multicast =====
 +
 +Before to star with advanced routing setup, just start to test simple multicast between 2 relatives host: Some NIC (vtnet) or some hypervisors network setup aren't compliant with very simple multicast.
 +
 +On VM1, start a mcast generator (client emitting mcast):
 +<​code>​
 +[root@VM1]~#​ iperf -c 239.1.1.1 -u -T 32 -t 3000 -i 1
 +------------------------------------------------------------
 +Client connecting to 239.1.1.1, UDP port 5001
 +Sending 1470 byte datagrams, IPG target: 11215.21 us (kalman adjust)
 +Setting multicast TTL to 32
 +UDP buffer size: 9.00 KByte (default)
 +------------------------------------------------------------
 +[  3] local 10.0.12.1 port 46636 connected with 239.1.1.1 port 5001
 +[ ID] Interval ​      ​Transfer ​    ​Bandwidth
 +[  3]  0.0- 1.0 sec   131 KBytes ​ 1.07 Mbits/sec
 +[  3]  1.0- 2.0 sec   128 KBytes ​ 1.05 Mbits/sec
 +[  3]  2.0- 3.0 sec   128 KBytes ​ 1.05 Mbits/sec
 +[  3]  0.0- 3.5 sec   446 KBytes ​ 1.05 Mbits/sec
 +[  3] Sent 311 datagrams
 +(...)
 +</​code>​
 +
 +On the direct connected VM2, start to check if in non-promiscious mode it sees mcast packets comming:
 +<​code>​
 +[root@VM2]~#​ tcpdump -pni em0 -c 2
 +tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
 +listening on em0, link-type EN10MB (Ethernet), capture size 262144 bytes
 +15:​22:​32.517270 IP 10.0.12.1.33482 > 239.1.1.1.5001:​ UDP, length 1470
 +15:​22:​32.528668 IP 10.0.12.1.33482 > 239.1.1.1.5001:​ UDP, length 1470
 +2 packets captured
 +2 packets received by filter
 +0 packets dropped by kernel
 +</​code>​
 +
 +=> VM2 is receiving mcast packets from 10.0.12.1 to mcast group 239.1.1.1.
 +Now on VM2 start a mcast listener (server receiving), it should receive multicast flow
 +
 +<​code>​
 +[root@VM2]~#​ iperf -s -u -B 239.1.1.1%em0 -i 1
 +------------------------------------------------------------
 +Server listening on UDP port 5001
 +Binding to local address 239.1.1.1
 +Joining multicast group  239.1.1.1
 +Receiving 1470 byte datagrams
 +UDP buffer size: 41.1 KByte (default)
 +------------------------------------------------------------
 +[  3] local 239.1.1.1 port 5001 connected with 192.168.100.149 port 35181
 +[ ID] Interval ​      ​Transfer ​    ​Bandwidth ​       Jitter ​  ​Lost/​Total Datagrams
 +[  3]  0.0- 1.0 sec   129 KBytes ​ 1.06 Mbits/​sec ​  0.038 ms  107/  197 (54%)
 +[  3]  1.0- 2.0 sec   128 KBytes ​ 1.05 Mbits/​sec ​  0.054 ms    0/   89 (0%)
 +[  3]  2.0- 3.0 sec   128 KBytes ​ 1.05 Mbits/​sec ​  0.021 ms    0/   89 (0%)
 +[  3]  3.0- 4.0 sec   128 KBytes ​ 1.05 Mbits/​sec ​  0.025 ms    0/   89 (0%)
 +[  3]  4.0- 5.0 sec   128 KBytes ​ 1.05 Mbits/​sec ​  0.024 ms    0/   89 (0%)
 +[  3]  5.0- 6.0 sec   129 KBytes ​ 1.06 Mbits/​sec ​  0.024 ms    0/   90 (0%)
 +[  3]  6.0- 7.0 sec   128 KBytes ​ 1.05 Mbits/​sec ​  0.024 ms    0/   89 (0%)
 +(...)
 +</​code>​
 +=> Notice the mcast receiver is correctly receiving at 1Mb/s.
 +
 +Here is a non working example (here because source interface not given, and it uses the other one):
 +<​code>​
 +[root@VM2]~#​ iperf -s -u -B 239.1.1.1 -i 1
 +------------------------------------------------------------
 +Server listening on UDP port 5001
 +Binding to local address 239.1.1.1
 +Joining multicast group  239.1.1.1
 +Receiving 1470 byte datagrams
 +UDP buffer size: 41.1 KByte (default)
 +------------------------------------------------------------
 +(...)
 +</​code>​
 +
 +=> Here it doesn'​t receive traffic and stay in "​waiting"​ mode forever.
 ===== Checking pimd behavior ===== ===== Checking pimd behavior =====
  
Line 137: Line 211:
  
 <​code>​ <​code>​
-[root@R2]~# pimd -r +[root@VM2]~# pimd -r 
-Virtual Interface Table +Virtual Interface Table ====================================================== 
- ​Vif ​ Local address ​   ​Subnet ​               Thresh ​ Flags          Neighbors +Vif  Local Address ​   ​Subnet ​             Thresh ​ Flags      Neighbors 
-   ​0  10.0.12.2        ​10.0.12/​24 ​                 ​DR NO-NBR +---  --------------- ​ ------------------ ​ ------ ​ --------- ​ ----------------- 
-   ​1  10.0.23.2 ​       10.0.23/​24 ​                 ​PIM            10.0.23.3 +  ​0  10.0.12.254      ​10.0.12/​24 ​              ​ DR NO-NBR 
-   ​2  10.0.12.2        ​register_vif0 ​        ​1+  1  10.0.23.2 ​       10.0.23/​24 ​              ​ PIM        10.0.23.3 
 +  2  10.0.12.254      ​register_vif0 ​           1
  
-Multicast Routing Table + ​Vif ​ SSM Group        Sources 
- ​Source ​         Group           RP addr         Flags + 
---------------------------(*,​*,​RP)--------------------------+Multicast Routing Table ====================================================== 
 +--------------------------------- (*,*,G------------------------------------
 Number of Groups: 0 Number of Groups: 0
 Number of Cache MIRRORs: 0 Number of Cache MIRRORs: 0
 +------------------------------------------------------------------------------
 </​code>​ </​code>​
  
-=> R2 sees R3+=> VM2 sees VM3 as PIM neighbor
  
 <​code>​ <​code>​
-[root@R3]~# pimd -r +[root@VM3]~# pimd -r 
-Virtual Interface Table +Virtual Interface Table ====================================================== 
- ​Vif ​ Local address ​   ​Subnet ​               Thresh ​ Flags          Neighbors +Vif  Local Address ​   ​Subnet ​             Thresh ​ Flags      Neighbors 
-   ​0  10.0.23.3 ​       10.0.23/​24 ​                 ​DR PIM         ​10.0.23.2 +---  --------------- ​ ------------------ ​ ------ ​ --------- ​ ----------------- 
-   ​1  10.0.34.3        ​10.0.34/​24 ​                 ​DR NO-NBR +  ​0  10.0.23.3 ​       10.0.23/​24 ​              ​ DR PIM     ​10.0.23.2 
-   ​2  10.0.23.3 ​       register_vif0 ​        ​1+  1  10.0.34.254      ​10.0.34/​24 ​              ​ DR NO-NBR 
 +  2  10.0.23.3 ​       register_vif0 ​           1
  
-Multicast Routing Table + ​Vif ​ SSM Group        Sources 
- ​Source ​         Group           RP addr         Flags + 
---------------------------(*,​*,​RP)--------------------------+Multicast Routing Table ====================================================== 
 +--------------------------------- (*,*,G------------------------------------
 Number of Groups: 0 Number of Groups: 0
 Number of Cache MIRRORs: 0 Number of Cache MIRRORs: 0
 +------------------------------------------------------------------------------
 </​code>​ </​code>​
  
-=> R3 sees R2.+=> VM3 sees VM2 as PIM Designated Router neighbor.
 ==== Does PIM daemon locally register to PIM mcast group ? ==== ==== Does PIM daemon locally register to PIM mcast group ? ====
  
Line 174: Line 254:
  
 <​code>​ <​code>​
-[root@R2]~# ifmcstat+[root@VM2]~# ifmcstat
 em0: em0:
         inet 10.0.12.2         inet 10.0.12.2
Line 223: Line 303:
 </​code>​ </​code>​
 <​code>​ <​code>​
-[root@R3]~# ifmcstat+[root@VM3]~# ifmcstat
 em0: em0:
 em1: em1:
Line 278: Line 358:
 ===== Testing ===== ===== Testing =====
  
-==== 1. Sart a mcast generator (IPerf client) on R1 ====+==== 1. Sart a mcast generator (IPerf client) on VM1 ====
  
 Start an iperf client to 239.1.1.1. Start an iperf client to 239.1.1.1.
  
 <​code>​ <​code>​
-[root@R1]~# iperf -c 239.1.1.1 -u -T 32 -t 3000 -i 1+[root@VM1]~# iperf -c 239.1.1.1 -u -T 32 -t 3000 -i 1
 ------------------------------------------------------------ ------------------------------------------------------------
 Client connecting to 239.1.1.1, UDP port 5001 Client connecting to 239.1.1.1, UDP port 5001
Line 298: Line 378:
 </​code>​ </​code>​
  
-==== 2. Check R2 updates its mrouting table with discovered mcast source =====+==== 2. Check VM2 updates its mrouting table with discovered mcast source =====
  
 PIM daemon should be updated: PIM daemon should be updated:
 <​code>​ <​code>​
-[root@R2]~# pimd -r+[root@VM2]~# pimd -r
 Virtual Interface Table ====================================================== Virtual Interface Table ======================================================
 Vif  Local Address ​   Subnet ​             Thresh ​ Flags      Neighbors Vif  Local Address ​   Subnet ​             Thresh ​ Flags      Neighbors
 ---  --------------- ​ ------------------ ​ ------ ​ --------- ​ ----------------- ---  --------------- ​ ------------------ ​ ------ ​ --------- ​ -----------------
-  0  10.0.12.2        ​10.0.12/​24 ​              ​1 ​ DR NO-NBR+  0  10.0.12.254      ​10.0.12/​24 ​              ​1 ​ DR NO-NBR
   1  10.0.23.2 ​       10.0.23/​24 ​              ​1 ​ PIM        10.0.23.3   1  10.0.23.2 ​       10.0.23/​24 ​              ​1 ​ PIM        10.0.23.3
-  2  10.0.12.2        ​register_vif0 ​           1+  2  10.0.12.254      ​register_vif0 ​           1
  
  ​Vif ​ SSM Group        Sources  ​Vif ​ SSM Group        Sources
Line 316: Line 396:
 Source ​          ​Group ​           RP Address ​      Flags Source ​          ​Group ​           RP Address ​      Flags
 --------------- ​ --------------- ​ --------------- ​ --------------------------- --------------- ​ --------------- ​ --------------- ​ ---------------------------
-10.0.12.1 ​       239.1.1.1 ​       10.0.23.2 ​       ​CACHE SG +10.0.12.1 ​       239.1.1.1 ​       10.0.23.2 ​       SG 
-Joined ​  oifs: ..j+Joined ​  oifs: ...
 Pruned ​  oifs: ... Pruned ​  oifs: ...
 Leaves ​  oifs: ... Leaves ​  oifs: ...
 Asserted oifs: ... Asserted oifs: ...
-Outgoing oifs: ..o+Outgoing oifs: ...
 Incoming ​    : I.. Incoming ​    : I..
  
 TIMERS: ​ Entry    JP    RS  Assert VIFS:  0  1  2 TIMERS: ​ Entry    JP    RS  Assert VIFS:  0  1  2
-           ​180 ​   35     0       ​0 ​       0  0  0+             ​0 ​    ​0 ​    0       ​0 ​       0  0  0
 --------------------------------- (*,*,G) ------------------------------------ --------------------------------- (*,*,G) ------------------------------------
 Number of Groups: 1 Number of Groups: 1
-Number of Cache MIRRORs: ​1+Number of Cache MIRRORs: ​0
 ------------------------------------------------------------------------------ ------------------------------------------------------------------------------
 </​code>​ </​code>​
Line 335: Line 415:
  
 <​code>​ <​code>​
-[root@R2]~# netstat -g+[root@VM2]~# netstat -g
  
 IPv4 Virtual Interface Table IPv4 Virtual Interface Table
  ​Vif ​  ​Thresh ​  ​Local-Address ​  ​Remote-Address ​   Pkts-In ​  ​Pkts-Out  ​Vif ​  ​Thresh ​  ​Local-Address ​  ​Remote-Address ​   Pkts-In ​  ​Pkts-Out
-  0         ​1 ​  ​10.0.12.2                            8013          0+  0         ​1 ​  ​10.0.12.254                             ​0 ​         0
   1         ​1 ​  ​10.0.23.2 ​                              ​0 ​         0   1         ​1 ​  ​10.0.23.2 ​                              ​0 ​         0
-  2         ​1 ​  ​10.0.12.2                                     8013+  2         ​1 ​  ​10.0.12.254                             ​0 ​         ​0
  
 IPv4 Multicast Forwarding Table IPv4 Multicast Forwarding Table
  ​Origin ​         Group             ​Packets In-Vif ​ Out-Vifs:​Ttls  ​Origin ​         Group             ​Packets In-Vif ​ Out-Vifs:​Ttls
- ​10.0.12.1 ​      ​239.1.1.1 ​           ​8013 ​   ​   2:1+ ​10.0.12.1 ​      ​239.1.1.1 ​              ​ 65535
  
  
Line 351: Line 431:
  
 IPv6 Multicast Forwarding Table is empty IPv6 Multicast Forwarding Table is empty
 +
 </​code>​ </​code>​
  
-R2 had update its mroute table for adding a source for group 239.1.1.1 comming from vif0 (toward R1).+VM2 had update its mroute table for adding a source for group 239.1.1.1 comming from '​65535'??​.
  
-==== 3. Start a mcast receiver (IPerf server) on R4 ====+==== 3. Start a mcast receiver (IPerf server) on VM4 ====
  
 IPerf server will subscribe to 239.1.1.1 multicast group and receiving mcast traffic: IPerf server will subscribe to 239.1.1.1 multicast group and receiving mcast traffic:
  
 <​code>​ <​code>​
-[root@R4]~# iperf -s -u -B 239.1.1.1 -i 1+[root@VM4]~# iperf -s -u -B 239.1.1.1 -i 1
 ------------------------------------------------------------ ------------------------------------------------------------
 Server listening on UDP port 5001 Server listening on UDP port 5001
Line 384: Line 465:
 </​code>​ </​code>​
  
-==== 4. Check R3 correctly notice this mcast subscriber ====+==== 4. Check VM3 correctly notice this mcast subscriber ====
  
-Now the mrouting table of R3 is updated and know it has a customer:+Now the mrouting table of VM3 is updated and know it has a customer:
  
 <​code>​ <​code>​
-[root@R3]~# pimd -r+[root@VM3]~# pimd -r                                                                                                                 [9/367]
 Virtual Interface Table ====================================================== Virtual Interface Table ======================================================
 Vif  Local Address ​   Subnet ​             Thresh ​ Flags      Neighbors Vif  Local Address ​   Subnet ​             Thresh ​ Flags      Neighbors
 ---  --------------- ​ ------------------ ​ ------ ​ --------- ​ ----------------- ---  --------------- ​ ------------------ ​ ------ ​ --------- ​ -----------------
   0  10.0.23.3 ​       10.0.23/​24 ​              ​1 ​ DR PIM     ​10.0.23.2   0  10.0.23.3 ​       10.0.23/​24 ​              ​1 ​ DR PIM     ​10.0.23.2
-  1  10.0.34.3        ​10.0.34/​24 ​              ​1 ​ DR NO-NBR+  1  10.0.34.254      ​10.0.34/​24 ​              ​1 ​ DR NO-NBR
   2  10.0.23.3 ​       register_vif0 ​           1   2  10.0.23.3 ​       register_vif0 ​           1
  
Line 412: Line 493:
  
 TIMERS: ​ Entry    JP    RS  Assert VIFS:  0  1  2 TIMERS: ​ Entry    JP    RS  Assert VIFS:  0  1  2
-             ​0 ​   ​60     0       ​0 ​       0  0  0+             ​0 ​   ​50     0       ​0 ​       0  0  0
 ----------------------------------- (S,G) ------------------------------------ ----------------------------------- (S,G) ------------------------------------
 Source ​          ​Group ​           RP Address ​      Flags Source ​          ​Group ​           RP Address ​      Flags
Line 425: Line 506:
  
 TIMERS: ​ Entry    JP    RS  Assert VIFS:  0  1  2 TIMERS: ​ Entry    JP    RS  Assert VIFS:  0  1  2
-           195    50     0       ​0 ​       0  0  0+           200    55     0       ​0 ​       0  0  0
 --------------------------------- (*,*,G) ------------------------------------ --------------------------------- (*,*,G) ------------------------------------
 Number of Groups: 1 Number of Groups: 1
Line 435: Line 516:
  
 <​code>​ <​code>​
-[root@R3]~# netstat -g+[root@VM3]~# netstat -g
  
 IPv4 Virtual Interface Table IPv4 Virtual Interface Table
  ​Vif ​  ​Thresh ​  ​Local-Address ​  ​Remote-Address ​   Pkts-In ​  ​Pkts-Out  ​Vif ​  ​Thresh ​  ​Local-Address ​  ​Remote-Address ​   Pkts-In ​  ​Pkts-Out
-  0         ​1 ​  ​10.0.23.3 ​                           ​7882 ​         0 +  0         ​1 ​  ​10.0.23.3 ​                            157          0 
-  1         ​1 ​  ​10.0.34.3                                     7882+  1         ​1 ​  ​10.0.34.254                                    157
   2         ​1 ​  ​10.0.23.3 ​                              ​0 ​         0   2         ​1 ​  ​10.0.23.3 ​                              ​0 ​         0
  
 IPv4 Multicast Forwarding Table IPv4 Multicast Forwarding Table
  ​Origin ​         Group             ​Packets In-Vif ​ Out-Vifs:​Ttls  ​Origin ​         Group             ​Packets In-Vif ​ Out-Vifs:​Ttls
- ​10.0.12.1 ​      ​239.1.1.1 ​           ​7882 ​   ​0 ​   1:1+ ​10.0.12.1 ​      ​239.1.1.1 ​            157    ​0 ​   1:1
  
  
Line 451: Line 532:
  
 IPv6 Multicast Forwarding Table is empty IPv6 Multicast Forwarding Table is empty
- 
 </​code>​ </​code>​
  
-R3 correctly learn that there is a subscriber to group 239.1.1.1 on interface vif1 (toward ​R4).+VM3 correctly learn that there is a subscriber to group 239.1.1.1 on interface vif1 (toward ​VM4) and the source is on vif0 (toward VM2).
documentation/examples/multicast_with_pim-sm.1498429446.txt.gz · Last modified: 2017/06/26 00:24 by 127.0.0.1